SymSymR4

This class represents a rank four tensor with symmetries C_{ijkl} = C_{jikl}, C_{ijkl} = C_{ijlk}, and C_{ijkl} = C_{klij}. It is stored as a length 36 vector with the convention described here.

class SymSymR4 : public neml::Tensor

Public Functions

SymSymR4()
SymSymR4(const std::vector<double> v)
SymSymR4(const std::vector<std::vector<double>> A)
SymSymR4(double *v)
SymSymR4(const double *v)
SymSymR4 opposite() const
SymSymR4 operator-() const
SymSymR4 &operator+=(const SymSymR4 &other)
SymSymR4 &operator-=(const SymSymR4 &other)
RankFour to_full() const
double &operator()(size_t i, size_t j)
const double &operator()(size_t i, size_t j) const
SymSymR4 inverse() const
SymSymR4 transpose() const
RankFour dot(const RankFour &other) const
SymSymR4 dot(const SymSymR4 &other) const
RankFour dot(const SymSkewR4 &other) const
RankFour dot(const SkewSymR4 &other) const
RankTwo dot(const RankTwo &other) const
RankTwo dot(const Skew &other) const
Symmetric dot(const Symmetric &other) const

Public Static Functions

static inline SymSymR4 id()
static inline SymSymR4 id_dev()
static inline SymSymR4 zero()