WaterAbsorptionClass Module



Contents


Derived Types

type, public :: WaterAbsorption_

Components

TypeVisibility AttributesNameInitial
type(FEMDomain_), public, pointer:: Water
type(FEMDomain_), public, pointer:: Tissue
type(MaterialProp_), public, pointer:: a_Psi
type(MaterialProp_), public, pointer:: a_P
type(MaterialProp_), public, pointer:: theta_eq
type(MaterialProp_), public, pointer:: Psi_eq
type(MaterialProp_), public, pointer:: a_E
type(MaterialProp_), public, pointer:: a_v
type(MaterialProp_), public, pointer:: E_eq
type(MaterialProp_), public, pointer:: v_eq
type(DiffusionEq_), public :: DiffusionEq
type(FiniteDeform_), public :: FiniteDeform
real(kind=real64), public, allocatable:: WaterAbsorbingPower(:)
real(kind=real64), public, allocatable:: WaterPotential(:)
real(kind=real64), public, allocatable:: TurgorPressure(:)
real(kind=real64), public, allocatable:: WaterContent(:)
real(kind=real64), public, allocatable:: WaterMass(:)
real(kind=real64), public, allocatable:: volume(:)
real(kind=real64), public, allocatable:: Conductivity(:)
real(kind=real64), public, allocatable:: YoungsModulus(:)
real(kind=real64), public, allocatable:: PoissonsRatio(:)
real(kind=real64), public, allocatable:: Permiability(:)
real(kind=real64), public, allocatable:: PorePressure(:)
real(kind=real64), public, allocatable:: a_Psi_val(:)
real(kind=real64), public, allocatable:: a_P_val(:)
real(kind=real64), public, allocatable:: theta_eq_val(:)
real(kind=real64), public, allocatable:: Psi_eq_val(:)
real(kind=real64), public, allocatable:: a_E_val(:)
real(kind=real64), public, allocatable:: a_v_val(:)
real(kind=real64), public, allocatable:: E_eq_val(:)
real(kind=real64), public, allocatable:: v_eq_val(:)
real(kind=real64), public, allocatable:: theta_ps_val(:)
character(len=200), public :: Name =" "
integer(kind=int32), public :: timestep =0
integer(kind=int32), public :: flushstep =0
integer(kind=int32), public :: ID =0
real(kind=real64), public :: dt

Type-Bound Procedures

procedure, public :: import => importWaterAbsorption
procedure, public :: assign => importWaterAbsorption
procedure, public :: init => initWaterAbsorption
procedure, public :: run => runWaterAbsorption
procedure, public :: update => updateWaterAbsorption
procedure, public :: export => exportWaterAbsorption
procedure, public :: display => displayWaterAbsorption
procedure, public :: bake => bakeWaterAbsorption
procedure, public :: gnuplot => gnuplotWaterAbsorption
procedure, public :: updatePermiability => updatePermiabilityWA
procedure, public :: updateStiffness => updateStiffnessWA
procedure, public :: UpdateVolume => UpdateVolumeWA
procedure, public :: save => saveWaterAbsorption
procedure, public :: open => openWaterAbsorption
procedure, public :: link => linkWaterAbsorption
procedure, public :: result => resultWaterAbsorption
procedure, public :: remove => removeWaterAbsorption

Subroutines

public subroutine removeWaterAbsorption(obj)

Arguments

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

public subroutine resultWaterAbsorption(obj, path, name, step)

Arguments

Type IntentOptional AttributesName
class(WaterAbsorption_), intent(inout) :: obj
character(len=*), intent(in) :: path
character(len=*), intent(in) :: name
integer(kind=int32), intent(in) :: step

public subroutine linkWaterAbsorption(obj, Water, Tissue, a_Psi, a_P, theta_eq, Psi_eq, a_E, a_v, E_eq, v_eq)

Arguments

Type IntentOptional AttributesName
class(WaterAbsorption_), intent(inout) :: obj
type(FEMDomain_), optional target:: Water
type(FEMDomain_), optional target:: Tissue
type(MaterialProp_), optional target:: a_Psi
type(MaterialProp_), optional target:: a_P
type(MaterialProp_), optional target:: theta_eq
type(MaterialProp_), optional target:: Psi_eq
type(MaterialProp_), optional target:: a_E
type(MaterialProp_), optional target:: a_v
type(MaterialProp_), optional target:: E_eq
type(MaterialProp_), optional target:: v_eq

public subroutine openWaterAbsorption(obj, path, Name)

Arguments

Type IntentOptional AttributesName
class(WaterAbsorption_), intent(inout) :: obj
character(len=*), intent(in), optional :: path
character(len=*), intent(in), optional :: Name

public subroutine flushWaterAbsorption(obj, path, Name)

Arguments

Type IntentOptional AttributesName
class(WaterAbsorption_), intent(inout) :: obj
character(len=*), intent(in), optional :: path
character(len=*), intent(in), optional :: Name

public subroutine saveWaterAbsorption(obj, path, Name)

Arguments

Type IntentOptional AttributesName
class(WaterAbsorption_), intent(inout) :: obj
character(len=*), intent(in), optional :: path
character(len=*), intent(in), optional :: Name

public subroutine importWaterAbsorption(obj, Water, Tissue, a_Psi, a_P, theta_eq, theta_ps, Psi_eq, a_E, a_v, E_eq, v_eq)

Arguments

Type IntentOptional AttributesName
class(WaterAbsorption_), intent(inout) :: obj
type(FEMDomain_), intent(inout), optional target:: Water
type(FEMDomain_), intent(inout), optional target:: Tissue
type(MaterialProp_), intent(in), optional target:: a_Psi
type(MaterialProp_), intent(in), optional target:: a_P
type(MaterialProp_), intent(in), optional target:: theta_eq
type(MaterialProp_), intent(in), optional target:: theta_ps
type(MaterialProp_), intent(in), optional target:: Psi_eq
type(MaterialProp_), intent(in), optional target:: a_E
type(MaterialProp_), intent(in), optional target:: a_v
type(MaterialProp_), intent(in), optional target:: E_eq
type(MaterialProp_), intent(in), optional target:: v_eq

public subroutine runWaterAbsorption(obj, timestep, dt, SolverType, onlyInit, Only1st, Display, nr_tol, ReducedIntegration, infinitesimal, interval, Name, restart, ID)

Arguments

Type IntentOptional AttributesName
class(WaterAbsorption_), intent(inout) :: obj
integer(kind=int32), intent(in) :: timestep
real(kind=real64), intent(in), optional :: dt
character(len=*), intent(in) :: SolverType
logical, intent(in), optional :: onlyInit
logical, intent(in), optional :: Only1st
logical, intent(in), optional :: Display
real(kind=real64), intent(in), optional :: nr_tol
logical, intent(in), optional :: ReducedIntegration
logical, intent(in), optional :: infinitesimal
integer(kind=int32), intent(in), optional :: interval
character(len=*), intent(in), optional :: Name
logical, intent(in), optional :: restart
integer(kind=int32), intent(in), optional :: ID

public subroutine initWaterAbsorption(obj, SolverType, Display, nr_tol, infinitesimal)

Arguments

Type IntentOptional AttributesName
class(WaterAbsorption_), intent(inout) :: obj
character(len=*), intent(in) :: SolverType
logical, intent(in), optional :: Display
real(kind=real64), intent(in), optional :: nr_tol
logical, intent(in), optional :: infinitesimal

public subroutine updateWaterAbsorption(obj, SolverType, Display, step, nr_tol, restart)

Arguments

Type IntentOptional AttributesName
class(WaterAbsorption_), intent(inout) :: obj
character(len=*), intent(in) :: SolverType
logical, intent(in), optional :: Display
integer(kind=int32), intent(in), optional :: step
real(kind=real64), intent(in), optional :: nr_tol
logical, intent(in), optional :: restart

public subroutine updatePermiabilityWA(obj)

Arguments

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

public subroutine updateStiffnessWA(obj)

Arguments

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

public subroutine exportWaterAbsorption(obj, OptionalFileFormat, OptionalProjectName, FileHandle, SolverType, MeshDimension, FileName, Name, regacy, with, displacement, restart, path)

Arguments

Type IntentOptional AttributesName
class(WaterAbsorption_), intent(inout) :: obj
character(len=*), intent(in), optional :: OptionalFileFormat
character(len=*), intent(in), optional :: OptionalProjectName
integer(kind=int32), intent(in), optional :: FileHandle
character(len=*), intent(in), optional :: SolverType
integer(kind=int32), intent(in), optional :: MeshDimension
character(len=*), intent(in), optional :: FileName
character(len=*), intent(in), optional :: Name
logical, intent(in), optional :: regacy
class(FEMDomain_), intent(inout), optional :: with
logical, intent(in), optional :: displacement
logical, intent(in), optional :: restart
character(len=*), intent(in), optional :: path

public subroutine displayWaterAbsorption(obj)

Arguments

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

public subroutine bakeWaterAbsorption(obj)

Arguments

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

public subroutine gnuplotWaterAbsorption(obj, mode, ElemID)

Arguments

Type IntentOptional AttributesName
class(WaterAbsorption_), intent(in) :: obj
character(len=*), intent(in) :: mode
integer(kind=int32), intent(in), optional :: ElemID

public subroutine UpdateVolumeWA(obj)

Arguments

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