This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description
# pyfmm
Python module implementing the Fast Marching Method, written in pure Python. Only dependency is numpy 1.8+.

The implementation uses mostly boolean arrays for accessing and updating values. Instead of accepting only the smallest value at each iteration (step 3,, one may accept an arbitrary number of values at each step. This can speed up the computations considerably, but may in some cases be inaccurate (especially if the speed varies alot).

## Installation

## Interface

There are two ways to compute the distances:

a) Using a boolean array that specifies the exact points that defines the boundary,

b) Using an array of known distances to the boundary, in addition to a boolean array marking which values are certain.

Method a)
import pyfmm, numpy

my_boundary = numpy.array(..., dtype=numpy.bool) # All boundary points marked as "True"
solution = pyfmm.march(my_boundary)

Method b)
import pyfmm, numpy

known_distances = np.array(...) # Unknown values could for instance be set to np.inf
solution = pyfmm.march(numpy.argwhere(known_distances != numpy.inf), known_distances))

The number of values that are accepted at each iteration can be set using `batch_size`, and an array of speeds can be given using `speed`.

## Examples

The examples illustrate the following:

* ``: Distance from a ring boundary in the upper left part of the image. `batch_size` is varied to see how it affects computation time and result. In this case, the difference between the results from `batch_size=1` and `batch_size=100` seems negligible.
* ``: Straight boundary on left and right hand side, and two different `speed` fields. The examples illustrates what might happen if care is not taken when choosing a `batch_size`.
* ``: Simply a less regular boundary shape than the two above.

The example boundary defined by examples/irregular_boundary.png:

Release History

Release History


This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
pyfmm-0.3.tar.gz (4.2 kB) Copy SHA256 Checksum SHA256 Source Oct 11, 2016 (5.5 kB) Copy SHA256 Checksum SHA256 Source Oct 11, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting