On Wed, Feb 3, 2016 at 5:48 PM, Roy Stogner <royst...@ices.utexas.edu>
wrote:

>
> On Wed, 3 Feb 2016, John Peterson wrote:
>
> On Wed, Feb 3, 2016 at 4:31 PM, Junchao Zhang <junchao.zh...@gmail.com>
>> wrote:
>>
>> I find libmesh does not accept some PETsc KSP options, such as -ksp_rtol
>>> 0.  It is likely that libmesh calls KSPSetFromOptions() too early, before
>>> other customization routines.
>>>
>>
>> I'd be very surprised if that's the case.  We've been setting PETSc
>> command
>> line options from the command line in libmesh for a very long time...
>>
>
> Hmm.. but different options have different APIs, and the order in
> which they're called matters.  It looks like we KSPSetFromOptions at
> init time, but then we call KSPSetTolerances at solve time, so the
> latter would override the former.
>

Ah, I guess it has been a while since I've used the PetscLinearSolver, so
color me surprised.

Looks like PetscNonlinearSolver does the right thing here (calls
KSPSetFromOptions immediately after KSPSetTolerances) so I'll patch the
PetscLinearSolver in the same way.

I'll probably open an issue about this on Github as well, but how would
people feel about removing the PETSc 2.x #ifdefs from libmesh?  Looks like
some of the code in PetscLinearSolver goes all the way back to pre-2.2.0
(and still refers to SLES!) which was released Feb 27, 2004.
 petsc_linear_solver.C is particularly cluttered with this stuff.

-- 
John
------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
Libmesh-users mailing list
Libmesh-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to