Date: April 16, 2007 10:39:02 PM GMT
Subject: Re: ... FiPy capabilities ...
Post by Matt KochHi Daniel,
thank you so very much for your quick and rather encouraging
response. Let me follow up with more questions then.
1) Can FiPy handle curvature effects, such as capillary rise in a
tube, or surface tension driven species segregation?
I think these effects are model dependent. fipy just solves
whatever equations you specify assuming they are tractable.
I am currently solving equations in fipy that include these effects.
Post by Matt Koch2) So far, I have thought of the Level Set method as an
alternative to the Phase Field method.
Yes, level set is an alternative to phase field. I view them as
completely separate methods. That is not how everyone views them.
I see level set as a sharp interface method that artificially
creates a diffuse interface and phase field as a true diffuse
interface method.
Post by Matt KochIs this an incorrect view, and which of the two is the better
method to use?
This is a hard question. The answer has to be whichever method gives
acceptable results in the least amount of time. Often, one is
constrained to one method or the other.
Essentially, phase field is far more fundamental approach so has to
be better in general and easier
to implement numerically. Level set is good when you don't have a
fundamental understanding of
the physics or when the scales or parameters in the problem make
phase field impractical.
I would seriously think about phase field. Multiple level sets
could be a headache.
Post by Matt Koch3) When I refer to species diffusion, I have only one species to
account for. Will that by itself mean a substantial speed decrease
over problems that use Navier-Stokes and heat conduction only?
No. Won't have a substantial impact.
Post by Matt Koch4) How would you describe the development status of FiPy?
Fairly stable.
Post by Matt KochWhat direction is it going into?
Parallel and adaptive griding, more solvers. One or two of these
items will get addressed in the next year.
Post by Matt KochAre all features presently implemented in the code documented?
Pretty much.
Post by Matt KochAre there more features implemented than documented?
No.
Post by Matt KochAre there fewer features implemented than documented?
No.
Post by Matt KochDoes all that IS documented work properly?
Yes. We use doctests. If it is documented it has passed the
associated test. These are tested every night.
At the moment we have two or three insignificant test failures out
of hundreds.
Post by Matt KochIs there a development roadmap for FiPy?
Not as such. The tracker has most of our proposed enhancements. The
wiki also has stuff scattered about.
Post by Matt KochI apologize for so many questions, but I come to FiPy from an
odyssey through the free PDE software world, including OpenFOAM,
FreeFEM, keyFE2 and GetDP. While each have great features by
themselves, they either lack the flexibility or the usability to
implement the problem I described. I just want to make sure that I
have a fighting chance with FiPy.
I''m feeling your pain. That is why we started fipy. I've used
PHSICA (commercial) and dolfyn among others.
Dolfyn is good, I've been using it to compare with fipy. However,
It only solves a fixed set of equations.
There is also FENICS, which I haven't tried.
Post by Matt KochThere are several pieces of commercial software out there, or
course, that could handle this, but they all go for between
$10,000 and $20,000, which is completely out of the question.
Thanks,
Matt Koch
Date: Mon, 16 Apr 2007 16:13:34 -0400 (EDT)
Subject: Re: ... FiPy capabilities ...
Post by Daniel WheelerHi Matt,
Post by Matt KochHello,
I was just wondering whether FiPy, in general, can solve a set
1) Navier-Stokes equation (transient, non-linear)
2) Heat Conduction (transient, non-linear, with phase change)
3) Species Diffusion (transient, non-linear, with phase change)
Yes to all the above. I am currently using fipy to solve a phase
field
binary solid-liquid-vapor problem with full
Navier-Stokes. Examples for this problem will be publicly
available in
the next month or two.
Post by Matt Koch1) moving interface of liquid to gas, constant inflow
Should be okay, but I haven't tried it.
Post by Matt Koch2) moving interface of liquid to solid, Stefan Problem, thermal
radiation
3) moving interface of liquid to solid, equivalent Stefan
Problem for species
Yes to the last two. I think the above are generally introduced
source
terms that are applied to the "interface region" of the domain.
They would be implicitly handled with a phase field method, but
would
require explicit construction for
the level set method. Note, that these are different from boundary
conditions in fipy that are applied to the external mesh.
Post by Matt KochI am not after exact examples or implementations, just a
general statement as to whether it might be possible to attack
such a problem successfully in FiPy at all?
Yes with caveats. fipy has efficiency limitations that we have only
partially addressed and no parallel as yet. Flow problems
with multiple species take a lot of memory and converge slowly
so this
is definitely a consideration. I am solving my flow
problems in 2D with success (but not fast).
Post by Matt KochI am thinking, though, of capturing the liquid to solid
interface and the liquid to gas interface with two separate
Level Sets?
I have never used the level set method in fipy with flow, I have
used
it exclusively for electrodeposition problems. I may be
working with Andrew Reeve later this summer who is interested in
ground water flows on addressing some of the level set
and flow issues. The level set code as it stands only works on 1D
and
2D grids and may need some tweaking for new
problems. Also, it is written entirely in python.
Hope this helps.
Cheers
Post by Matt KochThanks and Regards,
Matt Koch
--
Daniel Wheeler
--
Daniel Wheeler