NEML2 2.0.0
|
Base class for converters responsible for converting between different parameterizations of the linear elasticity tensor in different symmetry groups. More...
Base class for converters responsible for converting between different parameterizations of the linear elasticity tensor in different symmetry groups.
N | Number of independent elastic constants |
#include <ElasticityConverter.h>
Public Types | |
using | InputType = std::array<Scalar, N> |
using | InputPtrType = std::array<const Scalar *, N> |
using | DerivativeFlagType = std::array<bool, N> |
using | DerivativeType = std::array<Scalar, N> |
using | ConversionType = std::pair<Scalar, DerivativeType> |
using | ResultType = std::array<ConversionType, N> |
using | ConverterKey = std::array<ElasticConstant, N> |
using | ConverterType = ConversionType (*)(const InputType &, const DerivativeFlagType &) |
using | ConversionTableType = std::map<ConverterKey, std::array<ConverterType, N>> |
Public Member Functions | |
ElasticityConverter (const ConversionTableType &table, const ConverterKey &output_parameterization, const ConverterKey &input_parameterization, const DerivativeFlagType &deriv_requested) | |
ResultType | convert (const InputType &input) const |
Convert input to independent elastic constants with derivatives. | |
ResultType | convert (const InputPtrType &input) const |
Convert input to independent elastic constants with derivatives. | |
ConversionType | convert (const InputType &input, const ElasticConstant p) const |
Convert input to a single elastic constant with derivatives. | |
ConversionType | convert (const InputPtrType &input, const ElasticConstant p) const |
Convert input to a single elastic constant with derivatives. | |
using ConversionTableType = std::map<ConverterKey, std::array<ConverterType, N>> |
using ConversionType = std::pair<Scalar, DerivativeType> |
using ConverterKey = std::array<ElasticConstant, N> |
using ConverterType = ConversionType (*)(const InputType &, const DerivativeFlagType &) |
using DerivativeFlagType = std::array<bool, N> |
using DerivativeType = std::array<Scalar, N> |
using InputPtrType = std::array<const Scalar *, N> |
using ResultType = std::array<ConversionType, N> |
|
inline |
|
inline |
Convert input to independent elastic constants with derivatives.
|
inline |
Convert input to a single elastic constant with derivatives.
|
inline |
Convert input to independent elastic constants with derivatives.
|
inline |
Convert input to a single elastic constant with derivatives.