www.mooseframework.org
ThirdPhaseSuppressionMaterial.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 #ifndef THIRDPHASESUPPRESSIONMATERIAL_H
8 #define THIRDPHASESUPPRESSIONMATERIAL_H
9 
10 #include "Material.h"
11 #include "DerivativeMaterialInterface.h"
12 
13 // Forward Declarations
15 
16 template <>
18 
24 class ThirdPhaseSuppressionMaterial : public DerivativeMaterialInterface<Material>
25 {
26 public:
27  ThirdPhaseSuppressionMaterial(const InputParameters & parameters);
28 
29 protected:
30  virtual void computeQpProperties();
31 
33  std::string _function_name;
34 
36  unsigned int _num_eta;
37  std::vector<const VariableValue *> _eta;
38 
40  MaterialProperty<Real> & _prop_g;
41  std::vector<MaterialProperty<Real> *> _prop_dg;
42 
44  std::vector<std::vector<MaterialProperty<Real> *>> _prop_d2g;
45 };
46 
47 #endif // THIRDPHASESUPPRESSIONMATERIAL_H
std::vector< std::vector< MaterialProperty< Real > * > > _prop_d2g
Material properties to store the second derivatives.
InputParameters validParams< ThirdPhaseSuppressionMaterial >()
unsigned int _num_eta
order parameters
std::vector< const VariableValue * > _eta
ThirdPhaseSuppressionMaterial(const InputParameters &parameters)
OPInterfaceBarrierMaterial is a Free Energy Penalty contribution material that acts on all of the eta...
MaterialProperty< Real > & _prop_g
Barrier functions and their drivatives.
std::vector< MaterialProperty< Real > * > _prop_dg
std::string _function_name
name of the function of eta (used to generate the material property names)