MEF90DefMechCellSetOptions_Type Derived Type

type, public, extends(MEF90Object) :: MEF90DefMechCellSetOptions_Type


Components

Type Visibility Attributes Name Initial
logical(kind=C_BOOL), public :: CrackVolumeControlled = PETSC_FALSE
logical(kind=C_BOOL), public :: Has_damageBC = PETSC_FALSE
logical(kind=C_BOOL), public, dimension(3) :: Has_displacementBC = [PETSC_FALSE, PETSC_FALSE, PETSC_FALSE]
logical(kind=C_BOOL), public :: WorkControlled = PETSC_FALSE
real(kind=C_DOUBLE), public, dimension(3) :: bodyforce = [0.0_kr, 0.0_kr, 0.0_kr]
real(kind=C_DOUBLE), public :: boundaryDamage = 0.0_kr
real(kind=C_DOUBLE), public, dimension(3) :: boundaryDisplacement = [0.0_kr, 0.0_kr, 0.0_kr]
real(kind=C_DOUBLE), public, dimension(3) :: cohesiveDisplacement = [0.0_kr, 0.0_kr, 0.0_kr]
real(kind=C_DOUBLE), public :: cohesiveStiffness = 0.0_kr
integer(kind=C_INT32_T), public :: comm
real(kind=C_DOUBLE), public :: crackPressure = 0.0_kr
real(kind=C_DOUBLE), public, dimension(3) :: displacementLowerBound = [MEF90NINFINITY, MEF90NINFINITY, MEF90NINFINITY]
real(kind=C_DOUBLE), public, dimension(3) :: displacementUpperBound = [MEF90INFINITY, MEF90INFINITY, MEF90INFINITY]
class(mef90Mat), public, allocatable :: linearThermalExpansion

Material properties. linearThermalExpansion is a symmetric matrix, so it is dimension dependent and allocated by MEF90DefMechCellSetOptionsSetFromOptions

character(kind=c_char, len=MEF90MXSTRLEN), public :: name = "NULL"
integer(kind=C_INT32_T), public :: plasticityType = MEF90DefMech_plasticityTypeNone
character(kind=c_char, len=MEF90MXSTRLEN), public :: prefix

Type-Bound Procedures

procedure, public, pass(self) :: setFromOptions => MEF90Object_setFromOptions

  • private subroutine MEF90Object_setFromOptions(self, ierr)

    Author
    Blaise Bourdin (2026, bourdin@mcmaster.ca)

    MEF90Object_setFromOptions: generic version of the setFromOptions method for all MEF90Objects, which just prints the object if -verbose is set to a high value Can be overridden in classes if they have options to set.

    Arguments

    Type IntentOptional Attributes Name
    class(MEF90Object), intent(inout) :: self
    integer(kind=C_INT32_T), intent(inout) :: ierr

procedure, public, pass(self) :: view => MEF90Object_view

  • private subroutine MEF90Object_view(self, viewer, ierr)

    Author
    Blaise Bourdin (2026, bourdin@mcmaster.ca)

    MEF90Object_view: Views a MEF90Object and flagged it as viewed so that it is not viewed multiple times when -verbose is set to a high value

    Arguments

    Type IntentOptional Attributes Name
    class(MEF90Object), intent(in) :: self
    type(tPetscViewer), intent(in) :: viewer
    integer(kind=C_INT32_T), intent(inout) :: ierr

procedure, public, pass(self) :: view_internal => MEF90DefMechCellSetOptionsView

  • public subroutine MEF90DefMechCellSetOptionsView(self, viewer, ierr)

    Author
    Blaise Bourdin (2026, bourdin@mcmaster.ca)

    MEF90DefMechCellSetOptionsView: the default viewer for a MEF90DefMechCellSetOptions_Type

    Arguments

    Type IntentOptional Attributes Name
    class(MEF90DefMechCellSetOptions_Type), intent(in) :: self
    type(tPetscViewer), intent(in) :: viewer
    integer(kind=C_INT32_T), intent(inout) :: ierr