OGS
VectorizedTensor.h File Reference

Detailed Description

Definition in file VectorizedTensor.h.

#include <Eigen/Core>
#include <Eigen/LU>
#include <type_traits>
#include "BaseLib/Error.h"
Include dependency graph for VectorizedTensor.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  MathLib
 
namespace  MathLib::VectorizedTensor
 

Typedefs

template<int DisplacementDim>
using MathLib::VectorizedTensor::Type = Eigen::Matrix<double, size(DisplacementDim), 1, Eigen::ColMajor>
 

Functions

constexpr int MathLib::VectorizedTensor::size (int const displacement_dim)
 Vectorized tensor size for given displacement dimension.
 
template<typename VectorizedTensor >
constexpr int MathLib::VectorizedTensor::dimension ()
 Displacement dimension of a vectorized tensor.
 
template<int DisplacementDim>
constexpr auto MathLib::VectorizedTensor::identity ()
 
template<typename Derived >
double MathLib::VectorizedTensor::determinant (Eigen::MatrixBase< Derived > const &tensor)
 Computes determinant of a vectorized tensor.
 
bool MathLib::VectorizedTensor::isTensorConvertibleTo1d (Eigen::Matrix3d const &tensor)
 Only a diagonal tensor can be converted to a 1d vectorized tensor.
 
bool MathLib::VectorizedTensor::isTensorConvertibleTo2d (Eigen::Matrix3d const &tensor)
 
template<int DisplacementDim, typename Derived >
Type< DisplacementDim > MathLib::VectorizedTensor::toVector (Eigen::MatrixBase< Derived > const &tensor)
 
template<int DisplacementDim>
Eigen::Matrix3d MathLib::VectorizedTensor::toTensor (Type< DisplacementDim > const &tensor)
 Converts a vectorized tensor to a 3x3 matrix.