Hi Daniel,
Do you have more clues or informations for choosing Solver? Why LU, not PCG, or others? I cann't find more detailed information about Solvers that were included in FiPy. May I get a totally different result by using different solver? Thank you so much for your help.
Kundar----- Original Message ----- From: "Daniel Wheeler" <[email protected]>
To: "Multiple recipients of list" <[email protected]> Sent: Wednesday, July 08, 2009 11:15 AM Subject: Re: Error messages Hi Kun-Dar, Reply below. 2009/7/7 Kun-Dar Li <[email protected]>:
Hello all,I ran FiPy under RedHat 5 to solve 4th-order PDE with anisotropic diffusioncoefficient and periodic boundary in 2D model. During the first few steps, it shows: ----------------------------------------------------------------------------------------------------------------------------------------------------------- /usr/lib/python2.4/site-packages/numpy/core/ma.py:609: UserWarning: Cannot automatically convert masked array to numeric because data is masked in one or more locations. warnings.warn("Cannot automatically convert masked array to "\ /usr/lib/python2.4/site-packages/FiPy-2.0.2-py2.4.egg/fipy/solvers/pysparse/pysparseSolver.py:51:
Just a warning, don't worry about it.
DeprecationWarning: 'iterations' should be used instead of 'steps'
Again, just a warning about an argument name change, don't worry about it.
Solver.__init__(self, *args, **kwargs)
regularapatite.py:115: DeprecationWarning: 'Viewer' should be used
instead of 'make'
viewer = fipy.viewers.make(vars = var, limits = {'datamin': 0.,
'datamax': 1.})
Again, just a warning. To get rid of these just update your script based on the message so, "make" can be changed to "Viewer", but not really important.
regularapatite.py:136: MaximumIterationWarning: Iterations: 15001. Relative error: 5.96005
The solver is not converging. This is bad. First off, try using the LU solver on a small problem to make sure things are working. Once you are sure thing are working you can figure out which iterative solver to use for bigger systems.
eqch.solve(var, solver = solver, dt = dt) step 0 dt 0.5 regularapatite.py:136: StagnatedSolverWarning: The solver stagnated. Iterations: 1. Relative error: nan eqch.solve(var, solver = solver, dt = dt) step 1 dt 0.5 step 2 dt 0.5 step 3 dt 0.5 --------------------------------------------------------------------------------------------------------------------- I guessed there are four errors. But, I'm not sure how to fix it. Can someone explain me what's the meanings about these messages? Or, I can not solve the anisotropic diffusion coefficient under periodic boundary?
You should be able to. This is something we have never tried, so I cannot be sure. There are certainly a lot of complications with boundary conditions and anisotropy, but shouldn't be for periodic boundaries.
Thank you so much for any help.
-- Daniel Wheeler
