EpetraModelEval2DSim.hpp

Go to the documentation of this file.
00001 #ifndef EPETRA_MODEL_EVAL_2D_SIM_HPP
00002 #define EPETRA_MODEL_EVAL_2D_SIM_HPP
00003 
00004 #include "EpetraExt_ModelEvaluator.h"
00005 #include "Epetra_Map.h"
00006 #include "Epetra_Vector.h"
00007 #include "Epetra_Comm.h"
00008 #include "Epetra_CrsGraph.h"
00009 
00021 class EpetraModelEval2DSim : public EpetraExt::ModelEvaluator {
00022 public:
00023 
00024   // Constructor
00025   EpetraModelEval2DSim(
00026     const double         d                   = 10.0
00027     ,const double        p0                  = 2.0
00028     ,const double        p1                  = 0.0
00029     ,const double        x00                 = 1.0
00030     ,const double        x01                 = 1.0
00031     ,const bool          showGetInvalidArg   = false
00032     );
00033 
00036 
00038   Teuchos::RefCountPtr<const Epetra_Map> get_x_map() const;
00040   Teuchos::RefCountPtr<const Epetra_Map> get_f_map() const;
00042   Teuchos::RefCountPtr<const Epetra_Vector> get_x_init() const;
00044   Teuchos::RefCountPtr<Epetra_Operator> create_W() const;
00046   InArgs createInArgs() const;
00048   OutArgs createOutArgs() const;
00050   void evalModel( const InArgs& inArgs, const OutArgs& outArgs ) const;
00051 
00053 
00054 private:
00055 
00056   // /////////////////////////////////////
00057   // Private member data
00058 
00059   double    d_;
00060   bool      showGetInvalidArg_;
00061 
00062 
00063   bool      isInitialized_;
00064 
00065   Teuchos::RefCountPtr<const Epetra_Comm>  epetra_comm_;
00066   Teuchos::RefCountPtr<const Epetra_Map>   map_x_;
00067 
00068   Teuchos::RefCountPtr<Epetra_Vector> x0_;
00069   Teuchos::RefCountPtr<Epetra_Vector> p_;
00070 
00071   Teuchos::RefCountPtr<Epetra_CrsGraph>  W_graph_;
00072 
00073 };
00074 
00075 #endif // EPETRA_MODEL_EVAL_2D_SIM_HPP

Generated on Thu Sep 18 12:31:44 2008 for EpetraExt by doxygen 1.3.9.1