#include "b2right_stretch_tensor.H"
Public Member Functions | |
RightStretchTensor_3_3 () | |
RightStretchTensor_3_3 (const double F[3][3], const bool second=false) | |
void | compute (const double F[3][3], const bool second=false) |
Public Attributes | |
double | R_3_3 [3][3] |
double | U_3_3 [3][3] |
double | R [9] |
double | U [6] |
double | DU [6][9] |
double | DR [9][9] |
double | DDU [6][9][9] |
Class to perform the polar decomposition of the 3x3 gradient deformation tensor F into the rotation tensor R and the right stretch tensor U, and to compute the first derivatives (DU) and second derivatives (DDU) of the right stretch tensor U w.r.t. gradient deformation tensor F.
The 3x3 matrices are column-major. The symmetric tensors are arranged [00, 11, 22, 01, 12, 02], and the non-symmetric tensors are arranged [00, 10, 20, 01, 11, 21, 02, 12, 22].
|
inline |
Default constructor.
|
inline |
Calls compute().
void b2000::RightStretchTensor_3_3::compute | ( | const double | F[3][3], |
const bool | second = false |
||
) |
Computes U and R with F = R * U and performs analytical differentiation of U (and R), according to Chen & Wheeler, Derivatives of the stretch and rotation tensors, Journal of Elasticity 32:175-182, 1993.
F | The gradient deformation tensor arranged in column-major format. |
second | Whether second-order differentiation should be performed. Default is false. |
double b2000::RightStretchTensor_3_3::DDU[6][9][9] |
Second derivatives of the right stretch tensor U w.r.t. the components of the gradient deformation tensor F.
double b2000::RightStretchTensor_3_3::DR[9][9] |
Derivatives of the rotation tensor R w.r.t. the components of the gradient deformation tensor F.
double b2000::RightStretchTensor_3_3::DU[6][9] |
Derivatives of the right stretch tensor U w.r.t. the components of the gradient deformation tensor F.
double b2000::RightStretchTensor_3_3::R[9] |
The rotation tensor R as a vector.
double b2000::RightStretchTensor_3_3::R_3_3[3][3] |
The rotation tensor R as a 3 x 3 column-major matrix.
double b2000::RightStretchTensor_3_3::U[6] |
The right stretch tensor U as a vector.
double b2000::RightStretchTensor_3_3::U_3_3[3][3] |
The right stretch tensor U as a (symmetric) 3 x 3 column-major matrix.