StressClass Module



Contents


Derived Types

type, public :: Stress_

Components

TypeVisibility AttributesNameInitial
real(kind=real64), public, allocatable:: sigma(:,:)
real(kind=real64), public, allocatable:: sigma_n(:,:)
real(kind=real64), public, allocatable:: S(:,:)
real(kind=real64), public, allocatable:: P(:,:)
real(kind=real64), public, allocatable:: dSdC(:,:,:,:)
real(kind=real64), public, allocatable:: sigma_dot(:,:)
real(kind=real64), public, allocatable:: sigma_j(:,:)
real(kind=real64), public, allocatable:: sigma_o(:,:)
real(kind=real64), public, allocatable:: sigma_t(:,:)
real(kind=real64), public, allocatable:: E(:,:,:,:)
integer(kind=int32), public :: TheoryID
character(len=40), public :: StrainTheory

Type-Bound Procedures

procedure, public :: init => initStress
procedure, public :: getRate => getStressRate
procedure, public :: getStress
procedure, public :: getDerivative => getStressDerivative
procedure, public :: delete => deleteStress

Subroutines

public subroutine initStress(obj, StrainTheory)

Arguments

Type IntentOptional AttributesName
class(Stress_), intent(inout) :: obj
character(len=*), intent(in) :: StrainTheory

public subroutine deleteStress(obj)

Arguments

Type IntentOptional AttributesName
class(Stress_), intent(inout) :: obj

public subroutine getStressRate(obj, strain, Type)

Arguments

Type IntentOptional AttributesName
class(Stress_), intent(inout) :: obj
class(Strain_), intent(inout) :: strain
character(len=*), intent(in) :: Type

public subroutine getStress(obj, strain, ConstitutiveModel, lambda, mu, K, G, c, phi, TimeIntegral, StressRate, dt)

Arguments

Type IntentOptional AttributesName
class(Stress_), intent(inout) :: obj
class(Strain_), intent(inout) :: strain
character(len=*), intent(in), optional :: ConstitutiveModel
real(kind=real64), intent(in), optional :: lambda
real(kind=real64), intent(in), optional :: mu
real(kind=real64), intent(in), optional :: K
real(kind=real64), intent(in), optional :: G
real(kind=real64), intent(in), optional :: c
real(kind=real64), intent(in), optional :: phi
character(len=*), intent(in), optional :: TimeIntegral
character(len=*), intent(in), optional :: StressRate
real(kind=real64), intent(in), optional :: dt

public subroutine getStressDerivative(obj, strain, ConstitutiveModel, lambda, mu)

Arguments

Type IntentOptional AttributesName
class(Stress_), intent(inout) :: obj
class(Strain_), intent(inout) :: strain
character(len=*), intent(in) :: ConstitutiveModel
real(kind=real64), intent(in), optional :: lambda
real(kind=real64), intent(in), optional :: mu