Hi all,

I am using FEMSystem to solve a simple steady linear elasticity problem. 
I've been looking at the FEMSystem examples and overridden 
element_time_derivative and side_time_derivative in FEMSystem to 
assemble the interior and boundary parts of the operator. For my system, 
I also do

time_solver = AutoPtr<TimeSolver>(new SteadySolver(*this));

PetscDiffSolver *solver = new PetscDiffSolver(*this);
time_solver->diff_solver() = AutoPtr<DiffSolver>(solver);

I did not modify any other solver settings, and it does not matter (for 
my issue here) which petsc solver flags I use.

When I system.solve() and print solver info (verbose=true, quiet=false) 
I get:

Assembling the residual
PetscDiffSolver step 0, |residual|_2 = 0.403898
Assembling the Jacobian
Assembling the residual
Assembling the residual
Assembling the residual
Assembling the residual
...
(many more "Assembling the residual")


I do get a solution in the end, but that solution is wrong. My assembly 
loops in element_time_derivative and side_time_derivative should be 
correct as I get meaningful output in another implementation (without 
using FEMSystem).

I suspect I have not set some important solver flags. Any ideas?


Best,
Jens

------------------------------------------------------------------------------
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

Reply via email to