FEMIfaceClass Module



Contents


Derived Types

type, public, extends(FEMDomain_) :: FEMDomainPointer_

Components

TypeVisibility AttributesNameInitial
type(FEMDomain_), public, pointer:: FEMDomainp

type, public :: FEMIface_

Components

TypeVisibility AttributesNameInitial
type(ShapeFunction_), public :: ShapeFunction1
type(ShapeFunction_), public :: ShapeFunction2
type(Mesh_), public :: Mesh1
type(Mesh_), public :: Mesh2
type(MaterialProp_), public :: MaterialProp
type(ControlParameter_), public :: ControlPara
type(FEMDomainPointer_), public, allocatable:: FEMDomains(:)
real(kind=8), public, allocatable:: NTN_NodCoord(:,:)
real(kind=8), public, allocatable:: NTS_NodCoord(:,:)
real(kind=8), public, allocatable:: STS_NodCoord(:,:)
real(kind=8), public, allocatable:: NTN_Val(:,:)
real(kind=8), public, allocatable:: NTS_Val(:,:)
real(kind=8), public, allocatable:: STS_Val(:,:)
integer, public, allocatable:: NTN_ElemNod(:,:)
integer, public, allocatable:: NTS_ElemNod(:,:)
integer, public, allocatable:: STS_ElemNod(:,:)
integer, public, allocatable:: NTN_Active(:)
integer, public, allocatable:: NTS_Active(:)
integer, public, allocatable:: STS_Active(:)
real(kind=8), public, allocatable:: NTN_Value(:,:)
real(kind=8), public, allocatable:: NTS_Value(:,:)
real(kind=8), public, allocatable:: STS_Value(:,:)
integer, public, allocatable:: NTS_SegmentID(:,:)
integer, public, allocatable:: GloNodPoint1(:,:)
integer, public, allocatable:: GloNodPoint2(:,:)
integer, public :: DomainID1
integer, public :: DomainID2
integer, public :: DomainID3
integer, public :: TimeStep
integer, public :: NumOfImportedDomain
character(len=200), public :: FilePathDomain1
character(len=200), public :: FilePathDomain2
character(len=200), public :: FilePath
character(len=200), public :: FileNameDomain1
character(len=200), public :: FileNameDomain2
character(len=200), public :: FileName
character(len=9), public :: Dtype
character(len=20), public :: SolverType

Type-Bound Procedures

procedure, public :: Init => InitializeFEMIface
procedure, public :: setFEMDomain => setFEMDomainFEMIface
procedure, public :: Delete => DeallocateFEMIface
procedure, public :: Import => ImportFEMIface
procedure, public :: GetFEMIface => GetFEMIfaceFromFEMDomains
procedure, public :: Export => ExportFEMIface
procedure, public :: GmshPlotMesh => GmshPlotMeshFEMIface
procedure, public :: GmshPlotNTS => GmshPlotNTSFEMIface
procedure, public :: GetNTNelement
procedure, public :: GetNTSelement
procedure, public :: GetGlobalNodePointer => GetGlobalNodePointerNTS
procedure, public :: updateTimestep => updateTimestepIface

Subroutines

public subroutine InitializeFEMIface(obj, NumOfDomain)

Arguments

Type IntentOptional AttributesName
class(FEMIface_), intent(inout) :: obj
integer, intent(in), optional :: NumOfDomain

public subroutine setFEMDomainFEMIface(obj, dobj, Name)

Arguments

Type IntentOptional AttributesName
class(FEMIface_), intent(inout) :: obj
class(FEMDomain_), intent(in), target:: dobj
character(len=*), intent(in), optional :: Name

public subroutine GmshPlotMeshFEMIface(obj, Name, withNeumannBC, withDirichletBC)

Arguments

Type IntentOptional AttributesName
class(FEMIface_), intent(inout) :: obj
character(len=*), intent(in), optional :: Name
logical, intent(in), optional :: withNeumannBC
logical, intent(in), optional :: withDirichletBC

public subroutine DeallocateFEMIface(obj)

Arguments

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

public subroutine ImportFEMIface(obj, OptionalFileFormat, OptionalProjectName, FileHandle)

Arguments

Type IntentOptional AttributesName
class(FEMIface_), intent(inout) :: obj
character(len=4), intent(in), optional :: OptionalFileFormat
character(len=70), intent(in), optional :: OptionalProjectName
integer, intent(in), optional :: FileHandle

public subroutine GetFEMIfaceFromFEMDomains(obj, obj1, obj2, MasterID, SlaveID)

Arguments

Type IntentOptional AttributesName
class(FEMIface_), intent(inout) :: obj
class(FEMDomain_), intent(inout), optional :: obj1
class(FEMDomain_), intent(inout), optional :: obj2
integer, intent(in), optional :: MasterID
integer, intent(in), optional :: SlaveID

public subroutine GetFEMIfaceFromPointer(obj, MasterID, SlaveID)

Arguments

Type IntentOptional AttributesName
class(FEMIface_), intent(inout) :: obj
integer, intent(in), optional :: MasterID
integer, intent(in), optional :: SlaveID

public subroutine GetNTNelement(obj)

Arguments

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

public subroutine GetNTSelement(obj)

Arguments

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

public subroutine GetSTSelement(obj)

Arguments

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

public subroutine ExportFEMIface(obj, OptionalFileFormat, OptionalProjectName, FileHandle)

Arguments

Type IntentOptional AttributesName
class(FEMIface_), intent(inout) :: obj
character(len=4), intent(in), optional :: OptionalFileFormat
character(len=70), intent(in), optional :: OptionalProjectName
integer, intent(in), optional :: FileHandle

public subroutine GmshPlotNTSFEMIface(obj, Name)

Arguments

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

public subroutine GetGlobalNodePointerNTS(obj)

for Domain2

Arguments

Type IntentOptional AttributesName
class(FEMIface_) :: obj

public subroutine updateTimestepIface(obj, timestep)

Arguments

Type IntentOptional AttributesName
class(FEMIface_), intent(inout) :: obj
integer, intent(in), optional :: timestep