Ray -

Thanks for your very complete and very correct answers to Dario. 

If you wouldn't mind transcribing your answer to Dario's question on 
StackOverflow, I'd be happy to up-vote it.


In answer to *your* questions:

> On Apr 3, 2016, at 11:09 AM, Raymond Smith <[email protected]> wrote:
> 
> Actually, I'm not sure how FiPy treats the steady-state initial guess for 
> Laplace's equation with no flux boundary conditions like yours here. The 
> governing equation + BC's without an initial condition admits any uniform 
> profile as a solution.


> I'm still unsure about the treatment of the initial phi values in this sense 
> as mentioned above.
> However, the direct-to-steady approach merits a few words of caution. First, 
> there isn't really a good numerical way of directly computing steady state 
> solutions for general systems. Often, your best bet is actually to solve the 
> transient equation by time stepping from some initial condition until you 
> reach steady state, as that's actually probably the most robust algorithm for 
> solving for steady state profiles.

The situation is as you expect. We talk about this toward the end of 

  
http://www.ctcms.nist.gov/fipy/examples/diffusion/generated/examples.diffusion.mesh1D.html

(search for "Fully implicit solutions are not without their pitfalls"). 
Basically, a steady-state diffusive problem will "lose" its initial condition 
and should instead be solved by relaxation. The timestep can be made very 
large; there just needs to be a TransientTerm.


Note, also, that it's not necessary to constrain the gradient to zero to get 
no-flux. FiPy is a cell-centered finite volume code, so no-flux is the natural 
boundary condition if nothing else is specified.

- Jon
_______________________________________________
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