IndexableProperty is a helper (proxy) object to obtain a scalar component from a material property. More...
#include <IndexableProperty.h>
Public Member Functions | |
IndexableProperty (T *host, const std::string &property_param="property", const std::string &component_param="component") | |
GenericReal< is_ad > | operator[] (int qp) const |
get the selected component value for the given quadrature point More... | |
void | check () const |
integrity check More... | |
Static Public Member Functions | |
static InputParameters | validParams () |
Protected Member Functions | |
void | checkComponents (unsigned int components) const |
Protected Attributes | |
T * | _host |
pointer to the host object More... | |
const std::string & | _property_param |
name of the input parameter containing the material property name More... | |
const std::string & | _property_name |
name of the coupled material property (for error reporting) More... | |
const std::string & | _component_param |
name of the input parameter containing the component index More... | |
const std::vector< unsigned int > | _component |
Index of the selected scalar component of the material property. More... | |
const GenericOptionalMaterialProperty< Real, is_ad > & | _property_real |
only one of those pointers will be non-null and pointing to the selected property More... | |
const GenericOptionalMaterialProperty< std::vector< Real >, is_ad > & | _property_std_vector |
const GenericOptionalMaterialProperty< RealVectorValue, is_ad > & | _property_real_vector_value |
const GenericOptionalMaterialProperty< RankTwoTensor, is_ad > & | _property_rank_two_tensor |
const GenericOptionalMaterialProperty< RankThreeTensor, is_ad > & | _property_rank_three_tensor |
const GenericOptionalMaterialProperty< RankFourTensor, is_ad > & | _property_rank_four_tensor |
IndexableProperty is a helper (proxy) object to obtain a scalar component from a material property.
Use it in objects that process a scalar quantity instead of a Real
material property to allow the user to supply any material property of a type from the list below along with a component index parameter to select a scalar component from the property value.
Definition at line 23 of file IndexableProperty.h.
IndexableProperty< T, is_ad >::IndexableProperty | ( | T * | host, |
const std::string & | property_param = "property" , |
||
const std::string & | component_param = "component" |
||
) |
Definition at line 80 of file IndexableProperty.h.
void IndexableProperty< T, is_ad >::check | ( | ) | const |
integrity check
Definition at line 128 of file IndexableProperty.h.
Referenced by NodalPatchRecoveryMaterialProperty::initialSetup().
|
protected |
Definition at line 152 of file IndexableProperty.h.
GenericReal< is_ad > IndexableProperty< T, is_ad >::operator[] | ( | int | qp | ) | const |
get the selected component value for the given quadrature point
Definition at line 108 of file IndexableProperty.h.
|
static |
Definition at line 66 of file IndexableProperty.h.
Referenced by NodalPatchRecoveryMaterialProperty::validParams(), and SideIntegralMaterialPropertyTempl< is_ad >::validParams().
|
protected |
Index of the selected scalar component of the material property.
Definition at line 52 of file IndexableProperty.h.
|
protected |
name of the input parameter containing the component index
Definition at line 49 of file IndexableProperty.h.
|
protected |
pointer to the host object
Definition at line 42 of file IndexableProperty.h.
|
protected |
name of the coupled material property (for error reporting)
Definition at line 47 of file IndexableProperty.h.
|
protected |
name of the input parameter containing the material property name
Definition at line 45 of file IndexableProperty.h.
|
protected |
Definition at line 60 of file IndexableProperty.h.
|
protected |
Definition at line 59 of file IndexableProperty.h.
|
protected |
Definition at line 58 of file IndexableProperty.h.
|
protected |
only one of those pointers will be non-null and pointing to the selected property
Definition at line 55 of file IndexableProperty.h.
|
protected |
Definition at line 57 of file IndexableProperty.h.
|
protected |
Definition at line 56 of file IndexableProperty.h.