[petsc-users] SNES residual and unknown scaling

Barry Smith bsmith at mcs.anl.gov
Tue Jul 21 17:43:12 CDT 2015

> On Jul 21, 2015, at 5:13 PM, Jed Brown <jed at jedbrown.org> wrote:
> anton <popov at uni-mainz.de> writes:
>> Hi,
>> Applying -snes_mf_operator to a Stokes problem is quite sensitive to 
>> scaling of the velocity and pressure unknown (residual) blocks.
>> Apart from high-level scaling of the entire problem (which we already 
>> have), it would be also nice to have a sort of low-level scaling 
>> directly in SNES.
>> Can someone suggest how it can be best implemented (or probably already 
>> implemented) in PETSc.
> How would you foresee this working?  How would you like to decide on
> scaling parameters?  Preconditioned or unpreconditioned norm?  Automatic
> scaling is a tricky business.


  Cvode nonlinear solvers, for example, allow the user to provide vectors of weights that are applied to the solution vector and the function vector (I think) inside the "solver". Is that what you are asking for? How is that different then the user scaling their solution and function evaluation to match what these vectors of weights do? What is the advantage of doing this in the library over the "application"? I am asking because I do not understand myself.



More information about the petsc-users mailing list