multiDOFsystemClass Module



Derived Types

type, public ::  multiDOFsystem_

Components

Type Visibility Attributes Name Initial
type(FEMDomain_), public, pointer :: femdomain
type(LinearSolver_), public :: solver
real(kind=real64), public, allocatable :: m(:)
real(kind=real64), public, allocatable :: c(:)
real(kind=real64), public, allocatable :: k(:)
real(kind=real64), public, allocatable :: f(:)
real(kind=real64), public, allocatable :: u(:)
real(kind=real64), public, allocatable :: v(:)
real(kind=real64), public, allocatable :: a(:)
real(kind=real64), public :: Newmark_beta = 0.25d0
real(kind=real64), public :: Newmark_gamma = 0.50d0
integer(kind=int32), public :: itr = 0

Type-Bound Procedures

procedure, public :: init => initmultiDOFsystem
procedure, public :: solve => solvemultiDOFsystem

Subroutines

public subroutine initmultiDOFsystem(obj, femdomain)

Arguments

Type IntentOptional Attributes Name
class(multiDOFsystem_), intent(inout) :: obj
type(FEMDomain_), target :: femdomain

public subroutine solvemultiDOFsystem(obj, dt, FixNodeId, displacement, Solver, powerSpectre)

Arguments

Type IntentOptional Attributes Name
class(multiDOFsystem_), intent(inout) :: obj
real(kind=real64), intent(in) :: dt
integer(kind=int32), intent(in) :: FixNodeId
real(kind=real64), intent(in) :: displacement
character(len=*), intent(in) :: Solver
logical, intent(in), optional :: powerSpectre