funcy
1.6.1
|
Matrix Invariants (principal and mixed, modified (isochoric) invariants and deviatoric invariants). More...
![]() |
Classes | |
class | funcy::linalg::SecondPrincipalInvariant< Mat > |
Functions | |
template<Matrix M> | |
auto | funcy::linalg::j2 (const M &A) requires(!Function< M >) |
Second deviatoric invariant \( j_2(\sigma)=\sqrt{\bar\sigma\negthinspace:\negthinspace\bar\sigma} \) with \(\bar\sigma = \sigma - \frac{\mathrm{tr}(\sigma)}{n}I\) and \(\sigma\in\mathbb{R}^{n,n}\). | |
template<Matrix Mat> | |
auto | funcy::linalg::i4 (const Mat &A, const Mat &M) requires(!Function< Mat >) |
Generate first mixed invariant \( \iota_4=\iota_1(AM) \) of a matrix \(A\in\mathbb{R}^{n,n}\) with respect to the structural tensor \(M\in\mathbb{R}^{n,n}\). More... | |
template<Function F, class Matrix > | |
auto | funcy::linalg::i4 (const F &f, const Matrix &M) |
Generate first mixed invariant \( \iota_4\circ f \) with \(f\mapsto\mathbb{R}^{n,n}\) and structural tensor \(M\in\mathbb{R}^{n,n}\). More... | |
template<Matrix Mat> | |
auto | funcy::linalg::i5 (const Mat &A, const Mat &M) requires(!Function< Mat >) |
Generate second mixed invariant \( \iota_5=\iota_1(A^2M) \) of a matrix \(A\in\mathbb{R}^{n,n}\) with respect to the structural tensor \(M\in\mathbb{R}^{n,n}\). More... | |
template<Function F, class Matrix > | |
auto | funcy::linalg::i5 (const F &f, const Matrix &M) |
Generate second mixed invariant \( \iota_5\circ f \) with \(f\mapsto\mathbb{R}^{n,n}\) and structural tensor \(M\in\mathbb{R}^{n,n}\). More... | |
template<Matrix Mat> | |
auto | funcy::linalg::i6 (const Mat &A, const Mat &M) requires(!Function< Mat >) |
Generate third mixed invariant \( \iota_6=\iota_1(AM^2) \) of a matrix \(A\in\mathbb{R}^{n,n}\) with respect to the structural tensor \(M\in\mathbb{R}^{n,n}\). More... | |
template<Function F, class Matrix > | |
auto | funcy::linalg::i6 (const F &f, const Matrix &M) |
Generate third mixed invariant \( \iota_6\circ f \) with \(f\mapsto\mathbb{R}^{n,n}\) and structural tensor \(M\in\mathbb{R}^{n,n}\). More... | |
template<class Arg , class Matrix , int n = dim< Matrix >()> | |
auto | funcy::linalg::mi4 (const Arg &x, const Matrix &M) |
Isochoric (volume-preserving), first modified mixed invariant \( \bar\iota_4(A)=\iota_4\iota_3^{-1/3} \), where \(\iota_4\) is the first mixed and \(\iota_3\) is the third principal invariant. More... | |
template<class Arg , class Matrix , int n = dim< Matrix >()> | |
auto | funcy::linalg::mi5 (const Arg &x, const Matrix &M) |
Isochoric (volume-preserving), second modified principal invariant \( \bar\iota_5(A)=\iota_5\iota_3^{-2/3} \), where \(\iota_5\) is the second mixed and \(\iota_3\) is the third principal invariant. More... | |
template<class Arg , class Matrix , int n = dim< Matrix >()> | |
auto | funcy::linalg::mi6 (const Arg &x, const Matrix &M) |
Isochoric (volume-preserving), second modified principal invariant \( \bar\iota_6(A)=\iota_6\iota_3^{-1/3} \), where \(\iota_6\) is the third mixed and \(\iota_3\) is the third principal invariant. More... | |
template<class Arg > | |
auto | funcy::linalg::i1 (Arg &&x) |
Generate first principal invariant. More... | |
template<Matrix M> | |
auto | funcy::linalg::i2 (M &&A) |
Convenient generation of second principal invariant \( \iota_2(A)=\mathrm{tr}(\mathrm{cof}(A)) \) for \(A\in\mathbb{R}^{n,n}\). More... | |
template<Function F> | |
auto | funcy::linalg::i2 (const F &f) |
Convenient generation of second principal invariant \( \iota_2\circ f \) for \(f:\cdot\mapsto\mathbb{R}^{n,n}\). More... | |
template<class Arg > | |
auto | funcy::linalg::i3 (const Arg &x) |
Generate third principal invariant. More... | |
template<class Arg , int n = dim< Arg >()> | |
auto | funcy::linalg::mi1 (const Arg &x) |
Isochoric (volume-preserving), first modified principal invariant \( \bar\iota_1(A)=\iota_1\iota_3^{-1/3} \), where \(\iota_1\) is the first and \(\iota_3\) is the third principal invariant. More... | |
template<class Arg , int n = dim< Arg >()> | |
auto | funcy::linalg::mi2 (const Arg &x) |
Isochoric (volume-preserving), second modified principal invariant \( \bar\iota_2(A)=\iota_2\iota_3^{-2/3} \), where \(\iota_2\) is the second and \(\iota_3\) is the third principal invariant. More... | |
Matrix Invariants (principal and mixed, modified (isochoric) invariants and deviatoric invariants).
auto funcy::linalg::i1 | ( | Arg && | x | ) |
Generate first principal invariant.
Depending on the argument either generates \(\mathrm{tr}(A)\) or \(\mathrm{tr}\circ f\).
auto funcy::linalg::i2 | ( | M && | A | ) |
Convenient generation of second principal invariant \( \iota_2(A)=\mathrm{tr}(\mathrm{cof}(A)) \) for \(A\in\mathbb{R}^{n,n}\).
auto funcy::linalg::i2 | ( | const F & | f | ) |
Convenient generation of second principal invariant \( \iota_2\circ f \) for \(f:\cdot\mapsto\mathbb{R}^{n,n}\).
auto funcy::linalg::i3 | ( | const Arg & | x | ) |
Generate third principal invariant.
Depending on the argument either generates \(\det(A)\) or \(\det\circ f\).
auto funcy::linalg::i4 | ( | const Mat & | A, |
const Mat & | M | ||
) |
Generate first mixed invariant \( \iota_4=\iota_1(AM) \) of a matrix \(A\in\mathbb{R}^{n,n}\) with respect to the structural tensor \(M\in\mathbb{R}^{n,n}\).
A | square matrix |
M | structural tensor describing principal (fiber) direction |
auto funcy::linalg::i4 | ( | const F & | f, |
const Matrix & | M | ||
) |
Generate first mixed invariant \( \iota_4\circ f \) with \(f\mapsto\mathbb{R}^{n,n}\) and structural tensor \(M\in\mathbb{R}^{n,n}\).
f | function returning a square matrix |
M | structural tensor describing principal (fiber) direction |
auto funcy::linalg::i5 | ( | const Mat & | A, |
const Mat & | M | ||
) |
Generate second mixed invariant \( \iota_5=\iota_1(A^2M) \) of a matrix \(A\in\mathbb{R}^{n,n}\) with respect to the structural tensor \(M\in\mathbb{R}^{n,n}\).
A | square matrix |
M | structural tensor describing principal (fiber) direction |
auto funcy::linalg::i5 | ( | const F & | f, |
const Matrix & | M | ||
) |
Generate second mixed invariant \( \iota_5\circ f \) with \(f\mapsto\mathbb{R}^{n,n}\) and structural tensor \(M\in\mathbb{R}^{n,n}\).
f | function returning a square matrix |
M | structural tensor describing principal (fiber) direction |
auto funcy::linalg::i6 | ( | const Mat & | A, |
const Mat & | M | ||
) |
Generate third mixed invariant \( \iota_6=\iota_1(AM^2) \) of a matrix \(A\in\mathbb{R}^{n,n}\) with respect to the structural tensor \(M\in\mathbb{R}^{n,n}\).
A | square matrix |
M | structural tensor describing principal (fiber) direction |
auto funcy::linalg::i6 | ( | const F & | f, |
const Matrix & | M | ||
) |
Generate third mixed invariant \( \iota_6\circ f \) with \(f\mapsto\mathbb{R}^{n,n}\) and structural tensor \(M\in\mathbb{R}^{n,n}\).
f | function returning a square matrix |
M | structural tensor describing principal (fiber) direction |
auto funcy::linalg::mi1 | ( | const Arg & | x | ) |
Isochoric (volume-preserving), first modified principal invariant \( \bar\iota_1(A)=\iota_1\iota_3^{-1/3} \), where \(\iota_1\) is the first and \(\iota_3\) is the third principal invariant.
x | either a square matrix or a function returning a square matrix |
auto funcy::linalg::mi2 | ( | const Arg & | x | ) |
Isochoric (volume-preserving), second modified principal invariant \( \bar\iota_2(A)=\iota_2\iota_3^{-2/3} \), where \(\iota_2\) is the second and \(\iota_3\) is the third principal invariant.
x | either a square matrix or a function returning a square matrix |
auto funcy::linalg::mi4 | ( | const Arg & | x, |
const Matrix & | M | ||
) |
Isochoric (volume-preserving), first modified mixed invariant \( \bar\iota_4(A)=\iota_4\iota_3^{-1/3} \), where \(\iota_4\) is the first mixed and \(\iota_3\) is the third principal invariant.
x | either a square matrix or a function returning a square matrix |
M | structural tensor describing principal (fiber) direction |
auto funcy::linalg::mi5 | ( | const Arg & | x, |
const Matrix & | M | ||
) |
Isochoric (volume-preserving), second modified principal invariant \( \bar\iota_5(A)=\iota_5\iota_3^{-2/3} \), where \(\iota_5\) is the second mixed and \(\iota_3\) is the third principal invariant.
x | either a square matrix or a function returning a square matrix. |
M | structural tensor describing principal (fiber) direction |
auto funcy::linalg::mi6 | ( | const Arg & | x, |
const Matrix & | M | ||
) |
Isochoric (volume-preserving), second modified principal invariant \( \bar\iota_6(A)=\iota_6\iota_3^{-1/3} \), where \(\iota_6\) is the third mixed and \(\iota_3\) is the third principal invariant.
x | either a square matrix or a function returning a square matrix. |
M | structural tensor describing principal (fiber) direction |