On 03/16/2013 07:53 PM, Jens Lohne Eftang wrote: > On 03/15/2013 04:09 PM, Roy Stogner wrote: >> On Fri, 15 Mar 2013, Jens Lohne Eftang wrote: >> >>> But when the residual is computed how can I hand it just "b," ? I >>> thought it would calculate it as A*x-b based on my A and b ...? >> Nope. As John said, FEMSystem doesn't have any way to tell whether >> your problem is linear or not. If you've got a linear problem, then >> it's up to you to tell the nonlinear solver to avoid doing any >> redundant work, and if you want it to be robust with any solver (or >> with time integration) then it's up to you to define a >> solution-dependent residual consistently. >> >> Usually this isn't too hard - E.g. if I was solving >> >> (grad u, grad v) = (f, v) >> >> Then my residual is (f,v)-(grad u, grad v) instead of plain (f,v). >> >> If you know you're never going to evaluate your problem from a >> starting point other than u=0, then you can get away with plain (f,v) >> as long as you turn off any nonlinear solver option that might call a >> residual after the first step. But usually people intend to do >> nonlinear or transient terms eventually too, so it's easier to just >> start with the linear terms written in a consistent way. > Got it! Thanks guys! > > Jens
FWIW with FEMSystem I really like using the the numerical Jacobian feature when debugging. If the numerical Jacobian version works then there is probably a bug in the assembly code for the Jacobian. David ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_mar _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
