musica (C++)
Loading...
Searching...
No Matches
tensor.hpp File Reference

2nd-order tensor (3, 3) representation. More...

#include <Eigen/Dense>
#include <cmath>
#include <constitutive/cachedvariable.hpp>
#include <constitutive/constants.hpp>
Include dependency graph for tensor.hpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  constitutive::Tensor2< T >
 Class for the 2nd-order tensor (3, 3) representation. More...
struct  constitutive::CachedTensor2< T >

Namespaces

namespace  constitutive
 helper functions for mathematical operations

Functions

template<typename T>
Tensor2< T > constitutive::operator+ (const T &scalar, const Tensor2< T > &tensor)
 Add a tensor to a scalar.
template Tensor2< float > constitutive::operator+ (const float &scalar, const Tensor2< float > &tensor)
template Tensor2< double > constitutive::operator+ (const double &scalar, const Tensor2< double > &tensor)
template<typename T>
Tensor2< T > constitutive::operator+ (const Eigen::Matrix< T, 3, 3 > &matrix, const Tensor2< T > &tensor)
 Add a matrix to a tensor.
template Tensor2< float > constitutive::operator+ (const Eigen::Matrix< float, 3, 3 > &matrix, const Tensor2< float > &tensor)
template Tensor2< double > constitutive::operator+ (const Eigen::Matrix< double, 3, 3 > &matrix, const Tensor2< double > &tensor)
template<typename T>
Tensor2< T > constitutive::operator- (const T &scalar, const Tensor2< T > &tensor)
 Subtract a tensor from a scalar.
template Tensor2< float > constitutive::operator- (const float &scalar, const Tensor2< float > &tensor)
template Tensor2< double > constitutive::operator- (const double &scalar, const Tensor2< double > &tensor)
template<typename T>
Tensor2< T > constitutive::operator- (const Eigen::Matrix< T, 3, 3 > &matrix, const Tensor2< T > &tensor)
 Subtract a tensor from a matrix.
template Tensor2< float > constitutive::operator- (const Eigen::Matrix< float, 3, 3 > &matrix, const Tensor2< float > &tensor)
template Tensor2< double > constitutive::operator- (const Eigen::Matrix< double, 3, 3 > &matrix, const Tensor2< double > &tensor)
template<typename T>
Tensor2< T > constitutive::operator* (const Eigen::Matrix< T, 3, 3 > &matrix, const Tensor2< T > &tensor)
 Multiply a tensor by a matrix.
template Tensor2< float > constitutive::operator* (const Eigen::Matrix< float, 3, 3 > &matrix, const Tensor2< float > &tensor)
template Tensor2< double > constitutive::operator* (const Eigen::Matrix< double, 3, 3 > &matrix, const Tensor2< double > &tensor)
template<typename T>
Eigen::Matrix< T, 1, 3 > constitutive::operator* (const Eigen::Matrix< T, 1, 3 > &vector, const Tensor2< T > &tensor)
 Multiply a tensor by a vector.
template Eigen::Matrix< float, 1, 3 > constitutive::operator* (const Eigen::Matrix< float, 1, 3 > &vector, const Tensor2< float > &tensor)
template Eigen::Matrix< double, 1, 3 > constitutive::operator* (const Eigen::Matrix< double, 1, 3 > &vector, const Tensor2< double > &tensor)
template<typename T>
Tensor2< T > constitutive::operator* (const T &scalar, const Tensor2< T > &tensor)
 Multiply a tensor by a scalar.
template Tensor2< float > constitutive::operator* (const float &scalar, const Tensor2< float > &tensor)
template Tensor2< double > constitutive::operator* (const double &scalar, const Tensor2< double > &tensor)

Detailed Description

2nd-order tensor (3, 3) representation.

Date
March 5, 2024