FEDEM Solver
R8.0
Source code of the dynamics solver
|
Linear multi-point constraint handling. More...
Modules | |
module | rigidmodule |
Module with subroutines for setting up linear multi-point constraints. | |
Functions/Subroutines | |
subroutine, public | rigidmodule::multipointconstraints (MINEX, MADOF, MPAM, MPMNPC, MMNPC, TXC, TYC, TZC, MPAR, MSC, MPMCEQ, MMCEQ, TTCC, IPSW, LPU, IERR) |
Generates constraint equation arrays in the SAM datastructure. More... | |
subroutine | explconstreqn (nedof, indC, weight, omega) |
Copies coefficients of an explicitly defined constraint equation. More... | |
subroutine, public | rigidmodule::checkrgdelements (mprgd, mprbar, mpam, meldep, minex, mpmnpc, mmnpc, nodeStatus, numErr) |
Checks the topology of the RGD elements. More... | |
subroutine, public | rigidmodule::checkrbarelements (mprbar, mprgd, minex, mpmnpc, mmnpc, madof, msc, nodeStatus, lpu, numErr) |
Checks consistency of RBAR elements. More... | |
subroutine, public | rigidmodule::rigid3d (mprgd, mprbar, meldep, minex, madof, mpmnpc, mmnpc, mpmcex, mmcex, txc, tyc, tzc, ttccx, mpar, msc, mpmceq, mmceq, ttcc, ipsw, lpu, ierr) |
Generates constraint equation arrays in the SAM datastructure. More... | |
recursive integer function | calcdepth (ep) |
Calculates chain depth of an RGD element based on array MELDEP. More... | |
subroutine | chkandincindepdofs (inod, kind, dofs, iel, ierr) |
Checks for illegal status codes on rigid independent DOFs. More... | |
subroutine | chkandincdepdofs (inod, dofs, iel, ierr) |
Checks for illegal status codes on rigid dependent DOFs. More... | |
subroutine | rigidmodule::rgdce (mprgd, elDepth, meldep, msc, mpmcex, mmcex, ttccx, mpmceq, mmceq, mpmnpc, mmnpc, ttcc, madof, txc, tyc, tzc, minex, iceq, ipcur, lpu, ierr) |
Construct the constraint equations for RGD (or RBE2) elements. More... | |
subroutine | rigidmodule::rbarce (mprbar, msc, mpmcex, mmcex, ttccx, mpmceq, mmceq, mpmnpc, mmnpc, ttcc, madof, txc, tyc, tzc, minex, iceq, ipcur, lpu, ierr) |
Constructs the constraint equations for RBAR elements. More... | |
subroutine | rigidmodule::defineconstrainteqn (iDofS, iDofM, C, mpmcex, mmcex, ttccx, msc, mpmceq, mmceq, ttcc, iceq, ipcur, lpu, ierr) |
Establishes the constraint equation for a given dependent DOF. More... | |
subroutine | rigidmodule::procdofcomp (dofNumbs, dofs, iel, lpu, ierr) |
Processes an m-set number of RGD and RBAR elements. More... | |
subroutine | rigidmodule::procrbardef (rgdComp, d1, d2, d3, d4, iel, lpu, ierr) |
Processes the component definition of an RBAR element. More... | |
Variables | |
integer, parameter, public | rigidmodule::krigid = 61 |
Type id for rigid elements. More... | |
integer, parameter, public | rigidmodule::krbar = 62 |
Type id for rigid bars. More... | |
integer, parameter, public | rigidmodule::kwavgm = 63 |
Type id for constraint elements. More... | |
Linear multi-point constraint handling.
recursive integer function rigid3d::calcdepth | ( | integer, intent(in) | ep | ) |
Calculates chain depth of an RGD element based on array MELDEP.
The function is invoked recursively until the end of a chain is detected. If RGD elements are connected in a loop, a negative value will be returned.
|
private |
Checks for illegal status codes on rigid dependent DOFs.
|
private |
Checks for illegal status codes on rigid independent DOFs.
subroutine multipointconstraints::explconstreqn | ( | integer, intent(in) | nedof, |
integer, intent(in) | indC, | ||
real(dp), dimension(:), intent(in) | weight, | ||
real(dp), dimension(:), intent(out) | omega | ||
) |
Copies coefficients of an explicitly defined constraint equation.
Assuming here that all independent nodes have six DOFs. See also FFlSesamReader::readLinearDependencies(), where the weight matrix is populated from the SESAM BLDEP records.