Namespace for Projective Dynamics simulation algorithms.
More...
|
template<common::CArithmetic TScalar> |
TScalar | ValanisLandelQuasiNewtonStiffness (TScalar mu, TScalar lambda, Eigen::Vector< TScalar, 3 > const &sigma, TScalar sigmalo, TScalar sigmahi, physics::EHyperElasticEnergy energy) |
| Computes the element constraint stiffness for the quasi-Newton Projective Dynamics hessian approximation [9] .
|
|
template<class TDerivedMu, class TDerivedLambda, class TDerivedSigma, class TDerivedSigmaLo, class TDerivedSigmaHi, class TDerivedK> |
void | ValanisLandelQuasiNewtonStiffness (Eigen::DenseBase< TDerivedMu > const &mu, Eigen::DenseBase< TDerivedLambda > const &lambda, Eigen::DenseBase< TDerivedSigma > const &sigma, Eigen::DenseBase< TDerivedSigmaLo > const &sigmalo, Eigen::DenseBase< TDerivedSigmaHi > const &sigmahi, physics::EHyperElasticEnergy energy, Eigen::DenseBase< TDerivedK > &k) |
| Vectorized version of ValanisLandelQuasiNewtonStiffness.
|
|
Namespace for Projective Dynamics simulation algorithms.
◆ ValanisLandelQuasiNewtonStiffness() [1/2]
template<class TDerivedMu, class TDerivedLambda, class TDerivedSigma, class TDerivedSigmaLo, class TDerivedSigmaHi, class TDerivedK>
void pbat::sim::algorithm::pd::ValanisLandelQuasiNewtonStiffness |
( |
Eigen::DenseBase< TDerivedMu > const & | mu, |
|
|
Eigen::DenseBase< TDerivedLambda > const & | lambda, |
|
|
Eigen::DenseBase< TDerivedSigma > const & | sigma, |
|
|
Eigen::DenseBase< TDerivedSigmaLo > const & | sigmalo, |
|
|
Eigen::DenseBase< TDerivedSigmaHi > const & | sigmahi, |
|
|
physics::EHyperElasticEnergy | energy, |
|
|
Eigen::DenseBase< TDerivedK > & | k ) |
Vectorized version of ValanisLandelQuasiNewtonStiffness.
- Template Parameters
-
TDerivedMu | Matrix type for mu |
TDerivedLambda | Matrix type for lambda |
TDerivedSigmaLo | Matrix type for sigmalo |
TDerivedSigmaHi | Matrix type for sigmahi |
TDerivedK | Matrix type for k |
- Parameters
-
mu | |# constraints| x 1 matrix of first Lame coefficients |
lambda | |# constraints| x 1 matrix of second Lame coefficients |
sigma | |# constraints| x 3 matrix of singular values of deformation gradients |
sigmalo | |# constraints| x 1 matrix of lowest singular values of deformation gradients |
sigmahi | |# constraints| x 1 matrix of highest singular values of deformation gradients |
energy | Hyperelastic energy model |
k | |# constraints| x 1 matrix of constraint stiffnesses |
◆ ValanisLandelQuasiNewtonStiffness() [2/2]
template<common::CArithmetic TScalar>
TScalar pbat::sim::algorithm::pd::ValanisLandelQuasiNewtonStiffness |
( |
TScalar | mu, |
|
|
TScalar | lambda, |
|
|
Eigen::Vector< TScalar, 3 > const & | sigma, |
|
|
TScalar | sigmalo, |
|
|
TScalar | sigmahi, |
|
|
physics::EHyperElasticEnergy | energy ) |
Computes the element constraint stiffness for the quasi-Newton Projective Dynamics hessian approximation [9] .
- Template Parameters
-
- Parameters
-
mu | First Lame coefficient |
lambda | Second Lame coefficient |
sigma | Singular values of deformation gradient |
sigmalo | Lowest singular value of deformation gradient |
sigmahi | Highest singular value of deformation gradient |
energy | Hyperelastic energy model |
- Returns
- Quasi-Newton stiffness for Projective Dynamics element constraints