Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

NonStiffIteration.h

Go to the documentation of this file.
00001 // Copyright (C) 2003 Johan Hoffman and Anders Logg.
00002 // Licensed under the GNU GPL Version 2.
00003 
00004 #ifndef __NON_STIFF_ITERATION_H
00005 #define __NON_STIFF_ITERATION_H
00006 
00007 #include <dolfin/Iteration.h>
00008 
00009 namespace dolfin
00010 {
00011 
00013 
00014   class NonStiffIteration : public Iteration
00015   {
00016   public:
00017 
00018     NonStiffIteration(Solution& u, RHS& f, FixedPointIteration& fixpoint,
00019                       unsigned int maxiter, real maxdiv, real maxconv, real tol,
00020                       unsigned int depth);
00021 
00022     ~NonStiffIteration();
00023 
00024     State state() const;
00025 
00026     void start(ElementGroupList& list);
00027     void start(ElementGroup& group);
00028     void start(Element& element);
00029     
00030     void update(ElementGroupList& list, Increments& d);
00031     void update(ElementGroup& group, Increments& d);
00032     void update(Element& element, Increments& d);
00033     
00034     void stabilize(ElementGroupList& list, const Increments& d, unsigned int n);
00035     void stabilize(ElementGroup& group, const Increments& d, unsigned int n);
00036     void stabilize(Element& element, const Increments& d, unsigned int n);
00037     
00038     bool converged(ElementGroupList& list, const Increments& d, unsigned int n);
00039     bool converged(ElementGroup& group, const Increments& d, unsigned int n);
00040     bool converged(Element& element, const Increments& d, unsigned int n);
00041 
00042     bool diverged(ElementGroupList& list, const Increments& d, unsigned int n, State& newstate);
00043     bool diverged(ElementGroup& group, const Increments& d, unsigned int n, State& newstate);
00044     bool diverged(Element& element, const Increments& d, unsigned int n, State& newstate);
00045 
00046     void report() const;
00047 
00048   };
00049 
00050 }
00051 
00052 #endif


Documentation automatically generated with Doxygen on 10 Sep 2004.