StressClass Module



Derived Types

type, public ::  Stress_

Components

Type Visibility Attributes Name Initial
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 Attributes Name
class(Stress_), intent(inout) :: obj
character(len=*), intent(in) :: StrainTheory

public subroutine deleteStress(obj)

Arguments

Type IntentOptional Attributes Name
class(Stress_), intent(inout) :: obj

public subroutine getStressRate(obj, strain, Type)

Arguments

Type IntentOptional Attributes Name
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 Attributes Name
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 Attributes Name
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