Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Examples  

PicardLinearization.h

Go to the documentation of this file.
00001 #ifndef PICARDLINEARIZATION_H
00002 #define PICARDLINEARIZATION_H
00003 
00004 #include "SundanceDefs.h"
00005 #include "StaticLinearProblem.h"
00006 #include "TSFNonlinearOperatorBase.h"
00007 #include "TSFNonlinearOperator.h"
00008 #include "PicardSolver.h"
00009 
00010 namespace Sundance
00011 {
00012 
00013   using namespace TSF;
00014   using std::string;
00015 
00016   using std::ostream;
00017 
00018   /** \ingroup UserLevelFE
00019    */
00020 
00021   class PicardLinearization : public TSFNonlinearOperatorBase
00022     {
00023     public:
00024       /** */
00025       PicardLinearization();
00026       /** */
00027       PicardLinearization(const StaticLinearProblem& linearizedProblem,
00028                           const Expr& guess,
00029                           const TSFLinearSolver& solver);
00030       /** */
00031       virtual ~PicardLinearization();
00032 
00033       /** apply the operator to a vector. */
00034       virtual void apply(const TSFVector& arg, TSFVector& out) const ;
00035 
00036       /** */
00037       Expr solve(const PicardSolver& solver) const ;
00038 
00039     private:
00040       mutable StaticLinearProblem linearizedProblem_;
00041 
00042       mutable Expr guess_;
00043 
00044       TSFLinearSolver solver_;
00045     };
00046 
00047 
00048 }
00049 #endif

Contact:
Kevin Long (krlong@ca.sandia.gov)


Documentation generated by