Problem with Iterative solver

Hello,
I am trying to solve a poiseuille flow example. I want to make use of the ls.scipy_iterative sovler. I am using the cg method. The problem definition file, mesh and the vtk output are attached. Also attached is a plot of the pressure and axial flow velocity along the axis of the pipe. As you can see, the solution is completely non-physical. The same case runs fine with the scipy_direct solver. What am I doing wrong?
Best regards, Nikhil

Hi,
you will probably need some good preconditioning for this kind of problem, as well as a good mesh. I have no expertise in this field.
r.
On 09/23/2016 01:50 PM, Nikhil Vaidya wrote:
Hello,
I am trying to solve a poiseuille flow example. I want to make use of the ls.scipy_iterative sovler. I am using the cg method. The problem definition file, mesh and the vtk output are attached. Also attached is a plot of the pressure and axial flow velocity along the axis of the pipe. As you can see, the solution is completely non-physical. The same case runs fine with the scipy_direct solver. What am I doing wrong?
Best regards, Nikhil

Thanks for the reply.
On Monday, October 3, 2016 at 12:04:01 PM UTC+2, Robert Cimrman wrote:
Hi,
you will probably need some good preconditioning for this kind of problem, as well as a good mesh. I have no expertise in this field.
In the sfepy manual on page:
http://sfepy.org/doc-devel/src/sfepy/solvers/ls.html#sfepy.solvers.ls.ScipyI... the interface contains the possibility to specify a preconditioner. Where can I find information regarding the right kind of preconditioner to use? I have seen that the other options for iterative solvers are PyAMG and PetSc4Py. I want to run SfePy on windows, and installing PETSc there is very problematic. In the file /tests/test_linear_solvers.py, there are no preconditioners specified for the PyAMG solver either. Is there anyone in your group who has experience with iterative solvers and preconditioners?
Best regards, Nikhil
r.
On 09/23/2016 01:50 PM, Nikhil Vaidya wrote:
Hello,
I am trying to solve a poiseuille flow example. I want to make use of
the
ls.scipy_iterative sovler. I am using the cg method. The problem
definition
file, mesh and the vtk output are attached. Also attached is a plot of
the
pressure and axial flow velocity along the axis of the pipe. As you can see, the solution is completely non-physical. The same case runs fine
with
the scipy_direct solver. What am I doing wrong?
Best regards, Nikhil

On 10/17/2016 03:03 PM, Nikhil Vaidya wrote:
Thanks for the reply.
On Monday, October 3, 2016 at 12:04:01 PM UTC+2, Robert Cimrman wrote:
Hi,
you will probably need some good preconditioning for this kind of problem, as well as a good mesh. I have no expertise in this field.
In the sfepy manual on page:
http://sfepy.org/doc-devel/src/sfepy/solvers/ls.html#sfepy.solvers.ls.ScipyI... the interface contains the possibility to specify a preconditioner. Where can I find information regarding the right kind of preconditioner to use? I have seen that the other options for iterative solvers are PyAMG and PetSc4Py. I want to run SfePy on windows, and installing PETSc there is very problematic. In the file /tests/test_linear_solvers.py, there are no preconditioners specified for the PyAMG solver either. Is there anyone in your group who has experience with iterative solvers and preconditioners?
I would ask google, I do not think there is a solver specialist on this list. (Correct me if I am wrong :))
Note that with the ScipyIterative solver, you need no pass directly a matrix-like object as the preconditioner, unlike in PETScKrylovSolver, where just a name of one of its many preconditioners is needed.
r.
Best regards, Nikhil
r.
On 09/23/2016 01:50 PM, Nikhil Vaidya wrote:
Hello,
I am trying to solve a poiseuille flow example. I want to make use of
the
ls.scipy_iterative sovler. I am using the cg method. The problem
definition
file, mesh and the vtk output are attached. Also attached is a plot of
the
pressure and axial flow velocity along the axis of the pipe. As you can see, the solution is completely non-physical. The same case runs fine
with
the scipy_direct solver. What am I doing wrong?
Best regards, Nikhil
participants (2)
-
Nikhil Vaidya
-
Robert Cimrman