OGS
KelvinVector.h File Reference

Detailed Description

Definition in file KelvinVector.h.

#include <Eigen/Core>
#include "BaseLib/Error.h"
#include "KelvinVector-impl.h"
Include dependency graph for KelvinVector.h:

Go to the source code of this file.

Classes

struct  MathLib::KelvinVector::Invariants< KelvinVectorSize >
 

Namespaces

namespace  MathLib
 
namespace  MathLib::KelvinVector
 

Typedefs

template<int DisplacementDim>
using MathLib::KelvinVector::KelvinVectorType
 
template<int DisplacementDim>
using MathLib::KelvinVector::KelvinMatrixType
 

Functions

constexpr int MathLib::KelvinVector::kelvin_vector_dimensions (int const displacement_dim)
 Kelvin vector dimensions for given displacement dimension.
 
template<int DisplacementDim>
constexpr auto MathLib::KelvinVector::KVzero ()
 Returns an expressions for a Kelvin vector filled with zero.
 
template<int DisplacementDim>
constexpr auto MathLib::KelvinVector::KMzero ()
 Returns an expressions for a Kelvin matrix filled with zero.
 
template<int DisplacementDim>
constexpr auto MathLib::KelvinVector::KVnan ()
 Returns an expressions for a Kelvin vector filled with NaN.
 
template<int DisplacementDim>
constexpr auto MathLib::KelvinVector::KMnan ()
 Returns an expressions for a Kelvin matrix filled with NaN.
 
template<int KelvinVectorSize>
Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > MathLib::KelvinVector::inverse (Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > const &v)
 
template<int KelvinVectorSize>
Eigen::Matrix< double, 3, 3 > MathLib::KelvinVector::kelvinVectorToTensor (Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > const &v)
 
template<int DisplacementDim>
KelvinVectorType< DisplacementDim > MathLib::KelvinVector::tensorToKelvin (Eigen::Matrix< double, 3, 3 > const &m)
 
template<int KelvinVectorSize>
Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > MathLib::KelvinVector::kelvinVectorToSymmetricTensor (Eigen::Matrix< double, KelvinVectorSize, 1, Eigen::ColMajor, KelvinVectorSize, 1 > const &v)
 
template<typename Derived >
Eigen::Matrix< double, Eigen::MatrixBase< Derived >::RowsAtCompileTime, 1 > MathLib::KelvinVector::symmetricTensorToKelvinVector (Eigen::MatrixBase< Derived > const &v)
 
template<int DisplacementDim>
KelvinVectorType< DisplacementDim > MathLib::KelvinVector::symmetricTensorToKelvinVector (std::vector< double > const &values)
 
template<int DisplacementDim>
Eigen::Matrix< double, DisplacementDim, kelvin_vector_dimensions(DisplacementDim)> MathLib::KelvinVector::liftVectorToKelvin (Eigen::Matrix< double, DisplacementDim, 1 > const &v)
 
template<int DisplacementDim>
Eigen::Matrix< double, DisplacementDim, 1 > MathLib::KelvinVector::reduceKelvinToVector (Eigen::Matrix< double, DisplacementDim, kelvin_vector_dimensions(DisplacementDim)> const &m)
 
template<int DisplacementDim>
KelvinMatrixType< DisplacementDim > MathLib::KelvinVector::fourthOrderRotationMatrix (Eigen::Matrix< double, DisplacementDim, DisplacementDim, Eigen::ColMajor, DisplacementDim, DisplacementDim > const &transformation)