Advanced Multi-Physics (AMP)
On-Line Documentation
SourcePhysicsModel.h
Go to the documentation of this file.
1#ifndef included_AMP_SourcePhysicsModel
2#define included_AMP_SourcePhysicsModel
3
4#include <cstring>
5#include <memory>
6
7#include "AMP/materials/Material.h"
8#include "AMP/operators/ElementPhysicsModel.h"
9#include "AMP/operators/ElementPhysicsModelParameters.h"
10#include "AMP/utils/UtilityMacros.h"
11
12
13// Libmesh headers
15#include "libmesh/point.h"
17
18
19namespace AMP::Operator {
20
21
23
24
32{
33public:
39 explicit SourcePhysicsModel( std::shared_ptr<const SourcePhysicsModelParameters> params );
40
45
46 void getConstitutiveProperty( std::vector<double> &result,
47 const std::vector<std::vector<double>> &InputVec,
48 const std::vector<std::vector<double>> &,
49 const std::vector<libMesh::Point> &Coordinates );
50
51protected:
53
54 std::string d_physicsName;
55 double d_constantProperty; // Constant value of property if the material is not used.
56
57 std::shared_ptr<AMP::Materials::Material> d_material;
58
59 std::shared_ptr<AMP::Materials::Property> d_property;
60
61private:
65
66 std::vector<double> d_defaults;
67
68 std::shared_ptr<ElementPhysicsModel> d_elementPhysicsModel;
69 std::shared_ptr<ElementPhysicsModelParameters> d_elementPhysicsParams;
70
71 // Cached variables that may or may not be used to improve perfomance
72 std::map<std::string, std::shared_ptr<std::vector<double>>> d_inputMaterialParameters;
73};
74} // namespace AMP::Operator
75
76#endif
std::map< std::string, std::shared_ptr< std::vector< double > > > d_inputMaterialParameters
std::shared_ptr< ElementPhysicsModel > d_elementPhysicsModel
std::shared_ptr< AMP::Materials::Property > d_property
SourcePhysicsModel(std::shared_ptr< const SourcePhysicsModelParameters > params)
std::shared_ptr< ElementPhysicsModelParameters > d_elementPhysicsParams
std::shared_ptr< AMP::Materials::Material > d_material
void getConstitutiveProperty(std::vector< double > &result, const std::vector< std::vector< double > > &InputVec, const std::vector< std::vector< double > > &, const std::vector< libMesh::Point > &Coordinates)
#define DISABLE_WARNINGS
Re-enable warnings.
#define ENABLE_WARNINGS
Suppress all warnings.
ElementPhysicsModelParameters SourcePhysicsModelParameters



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:41.
Comments on this page