This is a read only copy of the old FEniCS QA forum. Please visit the new QA forum to ask questions

Variants of Newton Solver

0 votes

Hello,

I am wondering if FEniCS also provide a damped version or other variants of Newton's method?
When calling info(prm, True) for (NewtonSolver) parameters prm I found the options 'method' and 'relaxation_parameter'. Unfortunately I could not find any documentation on these parameters, how effect those the behaviour of the Newton Solver?

Thanks,

Elisa

asked Sep 16, 2014 by EliFri FEniCS Novice (190 points)

1 Answer

+1 vote
 
Best answer
answered Sep 18, 2014 by mwelland FEniCS User (8,410 points)
selected Mar 11, 2015 by EliFri

Thank you very much for your answer.

Are there any extensions to Newton towards globally convergent methods such as trust-region methods? What about Quasi-Newton methods?

And I have another general question, is there any way to find out how I can set parameters? Most parameters have range [], how do I know what sensible choices are (besides looking how they were set in the tutorials and demos)?

I think for more advanced nonlinear solvers your best bet it to go into the PETSc solver interface. It has a plethora of techniques which are documented on their site. I would recommend accessing them through the following commands:
eg:

PETScOptions.set('pc_type', 'asm') 
PETScOptions.set('sub_pc_type', 'lu')
PETScOptions.set('pc_asm_overlap', '10')

Some of the other snes options / keywords can be found here.

As for your second question, getting approximate values from examples is good because it can get you going quickly. If you want to fine-tune them though, you are going to have to read up on what they actually mean.

Good luck!

...