NEML2 2.0.0
Loading...
Searching...
No Matches
ElasticityInterface< Derived, N > Class Template Reference

Interface for objects defining elasticity tensors in terms of other parameters. More...

Detailed Description

template<class Derived, std::size_t N>
class neml2::ElasticityInterface< Derived, N >

Interface for objects defining elasticity tensors in terms of other parameters.

Template Parameters
NNumber of independent elastic constants

#include <ElasticityInterface.h>

Inheritance diagram for ElasticityInterface< Derived, N >:

Public Member Functions

 ElasticityInterface (const OptionSet &options)
 

Static Public Member Functions

static OptionSet expected_options ()
 

Protected Member Functions

void declare_elastic_constant (ElasticConstant)
 Declare elastic constants (by resolving cross-references)
 

Protected Attributes

std::array< ElasticConstant, N_constant_types
 Input elastic constant types (ordered according to ElasticConstant)
 
std::array< const Scalar *, N_constants
 Input elastic constants (ordered according to ElasticConstant)
 
std::array< bool, N_need_derivs
 Whether we need to calculate the derivative of the constants.
 

Constructor & Destructor Documentation

◆ ElasticityInterface()

template<class Derived , std::size_t N>
ElasticityInterface ( const OptionSet & options)

Member Function Documentation

◆ declare_elastic_constant()

template<class Derived , std::size_t N>
void declare_elastic_constant ( ElasticConstant ptype)
protected

Declare elastic constants (by resolving cross-references)

◆ expected_options()

template<class Derived , std::size_t N>
OptionSet expected_options ( )
static

Member Data Documentation

◆ _constant_types

template<class Derived , std::size_t N>
std::array<ElasticConstant, N> _constant_types
protected

Input elastic constant types (ordered according to ElasticConstant)

◆ _constants

template<class Derived , std::size_t N>
std::array<const Scalar *, N> _constants
protected

Input elastic constants (ordered according to ElasticConstant)

◆ _need_derivs

template<class Derived , std::size_t N>
std::array<bool, N> _need_derivs
protected

Whether we need to calculate the derivative of the constants.