Daniel and Robert,

I looked more closely at adapting scikit-fmm for non-uniform (but
still structured) grids. For the first-order method this would be
fairly simple as the stencil and quadratic used in the point update
are basically the same. It would be a matter of programming to create
a new entry point into the c++ code and a way to store the grid
spacing in each dimension. We could keep the same interface but allow
the dx argument to be a two-dimensional array describing the spacing
in each dimension. The functions that initialize the narrow band and
update the points only need minor changes to use the local grid size.

The second-order point update is a little more complicated because the
grid spacing is different for the two upwind points in the second
order stencil. This makes the stencil and the resulting quadratic
different; they would need to be derived from eq. 8.7 in the Sethian
book.

Adapting scikit-fmm for unstructured grids is more work. Most of the
existing scikit-fmm code assumes a structured mesh so little existing
code could be reused. At this point, I think writing some new
extension functions for the scikit-fmm module using Cython is the best
bet. This would allow us to use the FiPy mesh objects directly. Some
time ago, I created a Cython wrapper for the binary min-heap that
scikit-fmm uses. (I used this to experiment with some FMM like
algorithms on discrete graphs.) The github branch is here:
https://github.com/scikit-fmm/scikit-fmm/tree/heap-wrapper

The basic first-order method on acute triangulations in 2D is
(apparently) relatively simple. Obtuse triangulations require some
additional geometric construction.

I am willing to put some work into these efforts as they would also
benefit my work.

Any thoughts on a way forward?

Jason

On Fri, Jul 25, 2014 at 10:30 AM, Daniel Wheeler
<[email protected]> wrote:
>
>
>
> On Tue, Jul 22, 2014 at 5:35 PM, Jason Furtney <[email protected]> wrote:
>>
>>
>>
>> Also, the Sethian book has the formulation for the fast marching
>> method on unstructured grids which we could implement.
>
>
>  Jason,
>
> I would be very interested in having the implemented (it would help my
> research directly) and would be something that I could possibly participate
> in.
>
> Thanks,
>
> Daniel
>
> --
> Daniel Wheeler
>
> _______________________________________________
> fipy mailing list
> [email protected]
> http://www.ctcms.nist.gov/fipy
>   [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]
>



-- 
--
  Jason K. Furtney
  Itasca Consulting Group
  111 3rd Ave. South, Suite 450
  Minneapolis, MN 55401 USA
    (612) 371-4711
_______________________________________________
fipy mailing list
[email protected]
http://www.ctcms.nist.gov/fipy
  [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]

Reply via email to