Go to the documentation of this file.00001
00002
00003
00004
00005
00006 #if !defined(LCM_AAAModel_hpp)
00007 #define LCM_AAAModel_hpp
00008
00009
00010 #include "Phalanx_ConfigDefs.hpp"
00011 #include "Phalanx_Evaluator_WithBaseImpl.hpp"
00012 #include "Phalanx_Evaluator_Derived.hpp"
00013 #include "Phalanx_MDField.hpp"
00014 #include "Albany_Layouts.hpp"
00015 #include "LCM/models/ConstitutiveModel.hpp"
00016
00017 namespace LCM {
00031 template<typename EvalT, typename Traits>
00032 class AAAModel : public LCM::ConstitutiveModel<EvalT, Traits>
00033 {
00034 public:
00035
00036 typedef typename EvalT::ScalarT ScalarT;
00037 typedef typename EvalT::MeshScalarT MeshScalarT;
00038
00039 using ConstitutiveModel<EvalT, Traits>::num_dims_;
00040 using ConstitutiveModel<EvalT, Traits>::num_pts_;
00041 using ConstitutiveModel<EvalT, Traits>::field_name_map_;
00042
00044 AAAModel(Teuchos::ParameterList* p,
00045 const Teuchos::RCP<Albany::Layouts>& dl);
00046
00048 virtual
00049 ~AAAModel()
00050 {};
00051
00053 virtual
00054 void
00055 computeState(typename Traits::EvalData workset,
00056 std::map<std::string, Teuchos::RCP<PHX::MDField<ScalarT> > > dep_fields,
00057 std::map<std::string, Teuchos::RCP<PHX::MDField<ScalarT> > > eval_fields);
00058
00059 private:
00060
00062 AAAModel(const AAAModel&);
00063
00065 AAAModel& operator=(const AAAModel&);
00066
00068 RealType alpha_;
00069 RealType beta_;
00070 RealType mult_;
00071 };
00072
00073 }
00074
00075 #endif