MEF90DefMechBilinearFormDamage:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(tSNES), | intent(in) | :: | snesDamage | |||
| type(tVec), | intent(in) | :: | damage | |||
| type(tMat), | intent(inout) | :: | A | |||
| type(tMat), | intent(inout) | :: | M | |||
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechBilinearFormDisplacement:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(tSNES), | intent(in) | :: | snesDisplacement | |||
| type(tVec), | intent(in) | :: | displacement | |||
| type(tMat), | intent(inout) | :: | A | |||
| type(tMat), | intent(inout) | :: | M | |||
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechCohesiveEnergy:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| real(kind=C_DOUBLE), | dimension(:), pointer | :: | cohesiveEnergy | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechCrackVolume:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| real(kind=C_DOUBLE), | dimension(:), pointer | :: | CrackVolume | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechElasticEnergy:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| real(kind=C_DOUBLE), | dimension(:), pointer | :: | energy | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechOperatorDamage: Build the operator. When called in type(tSNES), the solution time should always match the target time, so there is no need for interpolation of the forces, external, and boundary values
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(tSNES), | intent(in) | :: | snesDamage | |||
| type(tVec), | intent(in) | :: | damage | |||
| type(tVec), | intent(inout) | :: | residual | |||
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechOperatorDisplacement: Build the operator. When called in type(tSNES), the solution time should always match the target time, so there is no need for interpolation of the forces, external, and boundary values
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(tSNES), | intent(in) | :: | snesDisplacement | |||
| type(tVec), | intent(in) | :: | displacement | |||
| type(tVec), | intent(inout) | :: | residual | |||
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechPlasticDissipation:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| type(tVec), | intent(in) | :: | plasticStrainOld | |||
| real(kind=C_DOUBLE), | dimension(:), pointer | :: | energy | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechStress:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| type(tVec), | intent(in) | :: | stress | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechSurfaceEnergy:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| real(kind=C_DOUBLE), | dimension(:), pointer | :: | energy | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechTAOGradientDamage:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(tTao), | intent(in) | :: | taoDamage | |||
| type(tVec), | intent(in) | :: | damage | |||
| type(tVec), | intent(inout) | :: | residual | |||
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechTAOHessianDamage:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(tTao), | intent(in) | :: | taoDamage | |||
| type(tVec), | intent(in) | :: | damage | |||
| type(tMat), | intent(inout) | :: | A | |||
| type(tMat), | intent(inout) | :: | M | |||
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechTAOObjectiveDamage:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(tTao), | intent(in) | :: | taoDamage | |||
| type(tVec), | intent(in) | :: | damage | |||
| real(kind=C_DOUBLE), | intent(inout) | :: | energy | |||
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90DefMechWork:
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(MEF90DefMech_Type), | intent(in) | :: | MEF90DefMechCtx | |||
| real(kind=C_DOUBLE), | dimension(:), pointer | :: | bodyForceWork | |||
| real(kind=C_DOUBLE), | dimension(:), pointer | :: | boundaryForceWork | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |