[petsc-users] Problems about parallel version in SNES_MF

Zhang, Hong hzhang at mcs.anl.gov
Tue Dec 25 11:22:28 CST 2018


Yingjie:
Dear Petsc developers:
Hi,
I am currently using Petsc to solve a two-dimensional system of non-linear PDEs, which is a thermal problem, including pressure field, temperature field and velocity field. Since it is not easy to construct Jacobian matrix explicitly, I adopt snes_mf method and provide a preconditioning matrix. Now I want to adapt the program to parallel version.
The main steps of the current procedure are as fellows:

  *   A solution vector U is constructed. The dimension is the sum of the meshed of each physical field.
  *   FormFunction is provided to calculate residual.
  *   Preconditioning matrix Pmat is assembled using FormJacibian, but Amat (Jacobian matrix) is not assembled.
  *   Compute with -snes_mf_operator.

There are following questions about the development of parallel version:

  1.  If one processor is assigned to each physical field, such as pressure field P,velocity field V, temperature field T, belongs to three processors. Because the problem is nonlinear, the information of temperature T may be used in the calculation of pressure P(in FormFunction). How to transfer the information?

Parallelization should be done to the domain, not physic components. See example petsc/src/snes/examples/tutorials/ex19.c

  1.  Since the snes_mf method needs a good preconditioning matrix to ensure convergence. How to use preconditioning matrix in parallel? As far as I know, BJACOBI can run in parallel. How can it be used in snes_mf method?

Because there are few snes_mf examples with parallel computation, I need some advice from you.
petsc/src/snes/examples/tutorials/ex19.c incudes a test on '-snes_mf_operator':
...
test:
      suffix: 13
      nsize: 3
      args: -snes_monitor_short -ksp_monitor_short -pc_type fieldsplit -pc_fieldsplit_type multiplicative -snes_view -da_refine 1 -ksp_type fgmres -snes_mf_operator

Hong
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20181225/bf8f8fcf/attachment-0001.html>


More information about the petsc-users mailing list