On Wed, Dec 19, 2018 at 10:08 AM Yingjie Wu via petsc-users < petsc-users@mcs.anl.gov> wrote:
> Respected Petsc developers: > Hi, > Recently, I developed a two-dimensional non-linear equations solver (SNES) > using Petsc to solve temperature, velocity and pressure fields. Since the > coupling characteristics of the problem are complex, it is difficult to > construct Jacobian matrix explicitly, so Matrix-Free method with > Preconditioner is adopted. > Which preconditioner? > I have the following questions about the Petsc's Preconditioner. > > 1. Is the preconditioning matrix updated in linear or non-linear steps? > Because the elements in my preconditioning matrix are functions of > variables (such as density is a function of temperature and pressure, and > preconditioning matrix elements often contain density). > You are in control of this. > 2.For some problems the preconditioning matrix element are constant, if it > possible that the preconditioning matrix is constructed and decomposed only > once at the beginning of the program and used for subsequent calculation? > Which preconditioner? > 3. What is the difference between using Matrix-Free method and using > normal Newton method for preconditioning matrix? > In MF, the PC cannot use matrix elements to form the preconditioner, only the action of the operator. > As far as I know, when using the Matrix-Free method, the type of > preconditioning matrix needs to be defined as MATMFFD. Are there any other > differences? > No, that is not the PC, only the action of the operator. Thanks, Matt > Thanks, > Yingjie > -- What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead. -- Norbert Wiener https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>