FEDEM Solver  R8.0
Source code of the dynamics solver
Modules | Functions/Subroutines | Variables
engineRoutinesModule.f90 File Reference

Subroutines for general function evaluation. More...

Modules

module  engineroutinesmodule
 Module with subroutines/functions for evaluation of general functions.
 

Functions/Subroutines

subroutine engineroutinesmodule::setpointersforsensors (eArr, tArr, sArr, dArr)
 Initialization of private pointers. More...
 
subroutine engineroutinesmodule::preevaluate (engines, ierr)
 Pre-evaluation of general functions. More...
 
real(dp) function engineroutinesmodule::evaluate (engine, E1, E0, ierr, xArg)
 Evaluates a general function with optional scaling and offset. More...
 
recursive real(dp) function engineroutinesmodule::enginevalue (engine, ierr, xArg)
 Evaluates a general function. More...
 
recursive real(dp) function engineroutinesmodule::enginerate (engine, ierr, tArg)
 Evaluates the time-derivative of a general function. More...
 
recursive real(dp) function, private engineroutinesmodule::sensorrate (sensor, ierr)
 Evaluates the time-derivative of a sensor value. More...
 
recursive subroutine, private engineroutinesmodule::evalargs (args, nArg, iDer, xArg, x, rVal, ierr)
 Evaluates the argument(s) of a general function. More...
 
recursive subroutine engineroutinesmodule::updatesensor (sensor, ierr)
 Updates a sensor value depending on the sensor type. More...
 
real(dp) function getlocal (triad, dof, entity)
 Evaluates a local velocity, acceleration or force for given triad. More...
 
real(dp) function getglobalforce (triad, dof)
 Evaluates a global force for given triad. More...
 
real(dp) function getangle (triad, dof)
 Evaluates a global rotation angle for given triad. More...
 
real(dp) function getrelative (triad1, triad2, dof, entity, oldValue)
 Evaluates a relative quantity between given two triads. More...
 
recursive subroutine engineroutinesmodule::updatespringbase (spr, ierr)
 Updates the spring variables. More...
 
recursive subroutine engineroutinesmodule::updatedamperbase (dmp, ierr)
 Updates the damper variables. More...
 
subroutine engineroutinesmodule::updateenginesforsave (engines, eFlag, ierr)
 Update all engines and store the values for saving. More...
 
subroutine engineroutinesmodule::printfuncvalues (istep, time, engines, lpu)
 Updates and prints out the current value of all general functions. More...
 

Variables

type(environmenttype), pointer, save, public engineroutinesmodule::ourenvir => null()
 Public pointer to the environmental data member in the mechanismtypemodule::mechanismtype object. More...
 
type(enginetype), dimension(:), pointer, save, private engineroutinesmodule::engines => null()
 Private pointer to the corresponding member array in the mechanismtypemodule::mechanismtype object. More...
 
type(triadtype), dimension(:), pointer, save, private engineroutinesmodule::triads => null()
 Private pointer to the corresponding member array in the mechanismtypemodule::mechanismtype object. More...
 
type(springbasetype), dimension(:), pointer, save, private engineroutinesmodule::springs => null()
 Private pointer to the corresponding member array in the mechanismtypemodule::mechanismtype object. More...
 
type(damperbasetype), dimension(:), pointer, save, private engineroutinesmodule::dampers => null()
 Private pointer to the corresponding member array in the mechanismtypemodule::mechanismtype object. More...
 
logical, save engineroutinesmodule::ispredictorstep = .false.
 Flag used for consistent right-hand-side calculation in the predictor step. More...
 

Detailed Description

Subroutines for general function evaluation.

Function/Subroutine Documentation

◆ getangle()

real(dp) function updatesensor::getangle ( type(triadtype), intent(in)  triad,
integer, intent(in)  dof 
)

Evaluates a global rotation angle for given triad.

◆ getglobalforce()

real(dp) function updatesensor::getglobalforce ( type(triadtype), intent(in)  triad,
integer, intent(in)  dof 
)

Evaluates a global force for given triad.

◆ getlocal()

real(dp) function updatesensor::getlocal ( type(triadtype), intent(in)  triad,
integer, intent(in)  dof,
integer, intent(in)  entity 
)

Evaluates a local velocity, acceleration or force for given triad.

◆ getrelative()

real(dp) function updatesensor::getrelative ( type(triadtype), intent(in)  triad1,
type(triadtype), intent(in)  triad2,
integer, intent(in)  dof,
integer, intent(in)  entity,
real(dp), intent(in)  oldValue 
)

Evaluates a relative quantity between given two triads.