https://mooseframework.inl.gov
Classes | Namespaces | Typedefs | Functions
MaterialProperty.h File Reference

Go to the source code of this file.

Classes

class  PropertyValue
 Abstract definition of a property value. More...
 
class  MaterialPropertyBase< T, is_ad >
 Concrete definition of a parameter value for a specified type. More...
 
class  MaterialProperty< T >
 
class  ADMaterialProperty< T >
 
class  MaterialProperty< T >
 
class  ADMaterialProperty< T >
 
class  MaterialProperties
 
class  MaterialProperties::WriteKey
 
struct  GenericMaterialPropertyStruct< T, is_ad >
 
struct  GenericMaterialPropertyStruct< T, true >
 
class  GenericOptionalMaterialPropertyBase
 Base class to facilitate storage using unique pointers. More...
 
class  OptionalMaterialPropertyProxy< M, T, is_ad >
 
class  GenericOptionalMaterialProperty< T, is_ad >
 Wrapper around a material property pointer. More...
 

Namespaces

 moose
 
 moose::internal
 

Typedefs

template<typename T , bool is_ad>
using GenericMaterialProperty = typename GenericMaterialPropertyStruct< T, is_ad >::type
 
template<typename T >
using OptionalMaterialProperty = GenericOptionalMaterialProperty< T, false >
 
template<typename T >
using OptionalADMaterialProperty = GenericOptionalMaterialProperty< T, true >
 

Functions

template<typename T1 , typename T2 >
void moose::internal::rawValueEqualityHelper (T1 &out, const T2 &in)
 
template<typename T1 , typename T2 >
void moose::internal::rawValueEqualityHelper (std::vector< T1 > &out, const std::vector< T2 > &in)
 
template<typename T1 , typename T2 , std::size_t N>
void moose::internal::rawValueEqualityHelper (std::array< T1, N > &out, const std::array< T2, N > &in)
 
void dataStore (std::ostream &stream, PropertyValue &p, void *context)
 
void dataLoad (std::istream &stream, PropertyValue &p, void *context)
 
void dataStore (std::ostream &stream, MaterialProperties &v, void *context)
 
void dataLoad (std::istream &stream, MaterialProperties &v, void *context)
 

Typedef Documentation

◆ GenericMaterialProperty

template<typename T , bool is_ad>
using GenericMaterialProperty = typename GenericMaterialPropertyStruct<T, is_ad>::type

Definition at line 441 of file MaterialProperty.h.

◆ OptionalADMaterialProperty

template<typename T >
using OptionalADMaterialProperty = GenericOptionalMaterialProperty<T, true>

Definition at line 515 of file MaterialProperty.h.

◆ OptionalMaterialProperty

template<typename T >
using OptionalMaterialProperty = GenericOptionalMaterialProperty<T, false>

Definition at line 513 of file MaterialProperty.h.

Function Documentation

◆ dataLoad() [1/2]

void dataLoad ( std::istream &  stream,
PropertyValue p,
void context 
)

Definition at line 19 of file MaterialProperty.C.

Referenced by dataLoad().

20 {
21  p.load(stream);
22 }
virtual void load(std::istream &stream)=0

◆ dataLoad() [2/2]

void dataLoad ( std::istream &  stream,
MaterialProperties v,
void context 
)

Definition at line 35 of file MaterialProperty.C.

36 {
37  std::size_t prop_size;
38  dataLoad(stream, prop_size, context);
39  mooseAssert(prop_size == v.size(), "Loading MaterialProperties data into mis-sized target");
40 
41  for (const auto i : make_range(prop_size))
42  dataLoad(stream, v[i], context);
43 }
void dataLoad(std::istream &stream, PropertyValue &p, void *)
std::size_t size() const
IntRange< T > make_range(T beg, T end)

◆ dataStore() [1/2]

void dataStore ( std::ostream &  stream,
PropertyValue p,
void context 
)

Definition at line 13 of file MaterialProperty.C.

Referenced by dataStore().

14 {
15  p.store(stream);
16 }
virtual void store(std::ostream &stream)=0

◆ dataStore() [2/2]

void dataStore ( std::ostream &  stream,
MaterialProperties v,
void context 
)

Definition at line 25 of file MaterialProperty.C.

26 {
27  std::size_t prop_size = v.size();
28  dataStore(stream, prop_size, context);
29 
30  for (const auto i : index_range(v))
31  dataStore(stream, v[i], context);
32 }
std::size_t size() const
void dataStore(std::ostream &stream, PropertyValue &p, void *)
auto index_range(const T &sizable)