www.mooseframework.org
SwitchingFunctionMultiPhaseMaterial.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "Material.h"
14 
15 // Forward Declarations
16 
24 template <bool is_ad>
26 {
27 public:
29 
31 
32 protected:
33  virtual void computeQpProperties();
34 
36  MaterialPropertyName _h_name;
37 
39  const unsigned int _num_eta_p;
40  const std::vector<const GenericVariableValue<is_ad> *> _eta_p;
41  const std::vector<VariableName> _eta_p_names;
42 
44  const unsigned int _num_eta;
45  const std::vector<const GenericVariableValue<is_ad> *> _eta;
46  const std::vector<VariableName> _eta_names;
47 
49  std::vector<bool> _is_p;
50 
53  std::vector<GenericMaterialProperty<Real, is_ad> *> _prop_dh;
54  std::vector<std::vector<GenericMaterialProperty<Real, is_ad> *>> _prop_d2h;
55 };
56 
const std::vector< const GenericVariableValue< is_ad > * > _eta_p
std::vector< bool > _is_p
List of which order parameters in the full list of all etas belong to phase p.
std::vector< std::vector< GenericMaterialProperty< Real, is_ad > * > > _prop_d2h
const unsigned int _num_eta
Order parameters for all phases (including alpha)
MaterialPropertyName _h_name
Name of the function.
SwitchingFunctionMultiPhaseMaterial is a switching function for a multi-phase, multi-order parameter ...
SwitchingFunctionMultiPhaseMaterialTempl(const InputParameters &parameters)
SwitchingFunctionMultiPhaseMaterialTempl< false > SwitchingFunctionMultiPhaseMaterial
typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
const unsigned int _num_eta_p
Order parameters for phase alpha.
const std::vector< const GenericVariableValue< is_ad > * > _eta
std::vector< GenericMaterialProperty< Real, is_ad > * > _prop_dh
const InputParameters & parameters() const
GenericMaterialProperty< Real, is_ad > & _prop_h
Switching function and derivatives.
SwitchingFunctionMultiPhaseMaterialTempl< true > ADSwitchingFunctionMultiPhaseMaterial