hookeai.simulators.fetorch.material.models.standard.drucker_prager.get_id_operators¶
- get_id_operators(n_dim, device=None)[source]¶
Set common second- and fourth-order identity operators.
- Parameters:
n_dim (int) – Number of dimensions.
device (torch.device, default=None) – Device on which torch.Tensor is allocated.
- Returns:
soid (torch.Tensor(2d)) – Second-order identity tensor:
\[I_{ij} = \delta_{ij}\]foid (torch.Tensor(4d)) – Fourth-order identity tensor:
\[I_{ijkl} = \delta_{ik}\delta_{jl}\]fotransp (torch.Tensor(4d)) – Fourth-order transposition tensor:
\[I_{ijkl} = \delta_{il}\delta_{jk}\]fosym (torch.Tensor(4d)) – Fourth-order symmetric projection tensor:
\[I_{ij} = 0.5(\delta_{ik}\delta_{jl} + \delta_{il}\delta_{jk})\]fodiagtrace (torch.Tensor(4d)) – Fourth-order ‘diagonal trace’ tensor:
\[I_{ijkl} = \delta_{ij}\delta_{kl}\]fodevproj (torch.Tensor(4d)) – Fourth-order deviatoric projection tensor:
\[I_{ijkl} = \delta_{ik}\delta_{jl} - \dfrac{1}{3} \delta_{ij}\delta_{kl}\]fodevprojsym (torch.Tensor(4d)) – Fourth-order deviatoric projection tensor (second-order symmetric tensors):
\[I_{ijkl} = 0.5(\delta_{ik}\delta_{jl} + \delta_{il}\delta_{jk}) - \dfrac{1}{3} \delta_{ij}\delta_{kl}\]