FEDEM Solver  R8.0
Source code of the dynamics solver
Data Types | Functions/Subroutines | Variables
masterslavejointtypemodule Module Reference

Data Types

type  jmtriadtype
 
type  slavedoftype
 
type  jointdoftype
 
type  slidertype
 
type  masterslavejointtype
 
type  higherpairtype
 
interface  getptrtoid
 
interface  getptrtoowner
 
interface  writeobject
 
interface  deallocatejoints
 
interface  updateatconvergence
 
interface  restorefromlaststep
 

Functions/Subroutines

type(masterslavejointtype) function, pointer, private getptrtoidjoint (array, id, index, jointType)
 
type(masterslavejointtype) function, pointer, private getptrtojointwithspring (array, spring)
 
type(masterslavejointtype) function, pointer, private getptrtojointwithdamper (array, damper)
 
subroutine, private writejoint (joint, io, complexity)
 
subroutine nullifyjoint (joint)
 
subroutine nullifyjointdof (jointDof)
 
subroutine deallocatejoint (joint)
 
subroutine deallocatemasterslavejoints (joints)
 
subroutine deallocatehigherpairs (higherPairs)
 
subroutine setjointsvelacc (joints, velGlobal, accGlobal)
 
subroutine getjointsvelacc (joints, velGlobal, accGlobal)
 
real(dp) function getjointvar (joint, dofInd, type)
 
character(len=15+lid_p) function getjointid (joint)
 
recursive integer function getnumberofmasterdofs (joint)
 
recursive logical function haszerovelacc (joint)
 
real(dp) function, dimension(6) transvslavetojoint (joint, u)
 
subroutine, private updatepreviousjointvalues (joint)
 
subroutine, private restorepreviousjointvalues (joint)
 Restores the state variables from the last converged time step. More...
 

Variables

integer, parameter follower_axis_p = 1
 
integer, parameter orthogonal_axis_p = 2
 
integer, parameter rot_axis_p = 3
 
character(len=15), dimension(3), parameter rotparamtypes_p = (/ 'FOLLOWER_AXIS ', 'ORTHOGONAL_AXIS', 'ROT_AXIS ' /)
 
integer, parameter revolute_p = 1
 
integer, parameter ball_p = 2
 
integer, parameter rigid_p = 3
 
integer, parameter free_p = 4
 
integer, parameter prismatic_p = 5
 
integer, parameter cylindric_p = 6
 
integer, parameter cam_p = 7
 
integer, parameter axial_p = 8
 
character(len=15), dimension(8), parameter jointtypename_p = (/ 'Revolute joint ', 'Ball joint ', 'Rigid joint ', 'Free joint ', 'Prismatic joint', 'Cylindric joint', 'Cam joint ', 'Axial joint ' /)
 

Function/Subroutine Documentation

◆ deallocatehigherpairs()

subroutine masterslavejointtypemodule::deallocatehigherpairs ( type(higherpairtype), dimension(:), pointer  higherPairs)

◆ deallocatejoint()

subroutine masterslavejointtypemodule::deallocatejoint ( type(masterslavejointtype), intent(inout)  joint)

◆ deallocatemasterslavejoints()

subroutine masterslavejointtypemodule::deallocatemasterslavejoints ( type(masterslavejointtype), dimension(:), pointer  joints)

◆ getjointid()

character(len=15+lid_p) function masterslavejointtypemodule::getjointid ( type(masterslavejointtype), intent(in)  joint)

◆ getjointsvelacc()

subroutine masterslavejointtypemodule::getjointsvelacc ( type(masterslavejointtype), dimension(:), intent(in)  joints,
real(dp), dimension(:), intent(out)  velGlobal,
real(dp), dimension(:), intent(out)  accGlobal 
)

◆ getjointvar()

real(dp) function masterslavejointtypemodule::getjointvar ( type(masterslavejointtype), intent(in)  joint,
integer, intent(in)  dofInd,
integer, intent(in)  type 
)

◆ getnumberofmasterdofs()

recursive integer function masterslavejointtypemodule::getnumberofmasterdofs ( type(masterslavejointtype), intent(in)  joint)

◆ getptrtoidjoint()

type(masterslavejointtype) function, pointer, private masterslavejointtypemodule::getptrtoidjoint ( type(masterslavejointtype), dimension(:), intent(in), target  array,
integer, intent(in)  id,
integer, intent(out), optional  index,
integer, intent(in), optional  jointType 
)
private

◆ getptrtojointwithdamper()

type(masterslavejointtype) function, pointer, private masterslavejointtypemodule::getptrtojointwithdamper ( type(masterslavejointtype), dimension(:), intent(in), target  array,
type(damperbasetype), intent(in), target  damper 
)
private

◆ getptrtojointwithspring()

type(masterslavejointtype) function, pointer, private masterslavejointtypemodule::getptrtojointwithspring ( type(masterslavejointtype), dimension(:), intent(in), target  array,
type(springbasetype), intent(in), target  spring 
)
private

◆ haszerovelacc()

recursive logical function masterslavejointtypemodule::haszerovelacc ( type(masterslavejointtype), intent(in)  joint)

◆ nullifyjoint()

subroutine masterslavejointtypemodule::nullifyjoint ( type(masterslavejointtype), intent(out)  joint)

◆ nullifyjointdof()

subroutine masterslavejointtypemodule::nullifyjointdof ( type(jointdoftype), intent(out)  jointDof)

◆ restorepreviousjointvalues()

subroutine, private masterslavejointtypemodule::restorepreviousjointvalues ( type(masterslavejointtype), intent(inout)  joint)
private

Restores the state variables from the last converged time step.

Parameters
jointThe joint to restore the state variables for

This subroutine is invoked when doing iteration cut-back.

Author
Knut Morten Okstad
Date
2 Nov 2008

◆ setjointsvelacc()

subroutine masterslavejointtypemodule::setjointsvelacc ( type(masterslavejointtype), dimension(:), intent(inout)  joints,
real(dp), dimension(:), intent(in)  velGlobal,
real(dp), dimension(:), intent(in)  accGlobal 
)

◆ transvslavetojoint()

real(dp) function, dimension(6) masterslavejointtypemodule::transvslavetojoint ( type(masterslavejointtype), intent(in)  joint,
real(dp), dimension(:), intent(in)  u 
)

◆ updatepreviousjointvalues()

subroutine, private masterslavejointtypemodule::updatepreviousjointvalues ( type(masterslavejointtype), intent(inout)  joint)
private

◆ writejoint()

subroutine, private masterslavejointtypemodule::writejoint ( type(masterslavejointtype), intent(in)  joint,
integer, intent(in)  io,
integer, intent(in), optional  complexity 
)
private

Variable Documentation

◆ axial_p

integer, parameter masterslavejointtypemodule::axial_p = 8

◆ ball_p

integer, parameter masterslavejointtypemodule::ball_p = 2

◆ cam_p

integer, parameter masterslavejointtypemodule::cam_p = 7

◆ cylindric_p

integer, parameter masterslavejointtypemodule::cylindric_p = 6

◆ follower_axis_p

integer, parameter masterslavejointtypemodule::follower_axis_p = 1

◆ free_p

integer, parameter masterslavejointtypemodule::free_p = 4

◆ jointtypename_p

character(len=15), dimension(8), parameter masterslavejointtypemodule::jointtypename_p = (/ 'Revolute joint ', 'Ball joint ', 'Rigid joint ', 'Free joint ', 'Prismatic joint', 'Cylindric joint', 'Cam joint ', 'Axial joint ' /)

◆ orthogonal_axis_p

integer, parameter masterslavejointtypemodule::orthogonal_axis_p = 2

◆ prismatic_p

integer, parameter masterslavejointtypemodule::prismatic_p = 5

◆ revolute_p

integer, parameter masterslavejointtypemodule::revolute_p = 1

◆ rigid_p

integer, parameter masterslavejointtypemodule::rigid_p = 3

◆ rot_axis_p

integer, parameter masterslavejointtypemodule::rot_axis_p = 3

◆ rotparamtypes_p

character(len=15), dimension(3), parameter masterslavejointtypemodule::rotparamtypes_p = (/ 'FOLLOWER_AXIS ', 'ORTHOGONAL_AXIS', 'ROT_AXIS ' /)