Skip to content

Files

Latest commit

6123219 · Feb 11, 2018

History

History
36 lines (23 loc) · 1.56 KB

piola.md

File metadata and controls

36 lines (23 loc) · 1.56 KB

Piola Transformation

Description: Perform a Piola transformation. It is assumed that the tensor's components are all either co- or contravariant as this toolbox has no information about co- and contravariant tensor components. All indices are transformed with the same mixed-variant argument tensor. This means it is not possible to perform a push forward of a mixed variant fourth order tensor. To perform a push forward of the contra-variant indices of the tangent matrix from material components in the reference configuration to spatial components in the current configuration write piola(F,C4). When using symmetric variants of tensor data types (Voigt-notation) a faster contraction with less calculations due to symmetric properties is performed.

  • piola(F,S) where S is a stress tensor is equal to F*S*transpose(F)
  • piola(F,C4) where C4 is a fourth order elasticity tensor means c4(i,j,k,l) = F(i,I) F(j,J) F(k,K) F(l,L) C4(I,J,K,L)
Property Value
Result Tensor-valued function
Data Types Tensor2, Tensor2s, Tensor4, Tensor4s

Example

real(kind=8) :: J

type(Tensor2)  :: F, S
! type(Tensor2s) :: S

type(Tensor4)  :: C4
! type(Tensor4s) :: C4

J = det(F)

! push forward of (contra-variant) PK2 stress tensor
tau = 1./J * piola(F,S)

! is equal to
Sigma = 1./J * F*S*transpose(F)

! push forward of (contra-variant) fourth order material elasticity tensor
c4 = 1./J * piola(F,C4)