FEDEM Solver  R8.0
Source code of the dynamics solver
Functions/Subroutines
massroutinesmodule Module Reference

Module with subroutines for calculation of discrete mass elements. More...

Functions/Subroutines

subroutine, public updatemasses (masses, gravity, restart, ierr)
 Updates all mass elements. More...
 
subroutine updatemass (mass, gravity, restart, ierr)
 Updates a mass element. More...
 
subroutine, public addingravitationforces (Q, RF, mass, gravity, sam, ierr)
 Calculates the gravitation forces for a mass element. More...
 
subroutine, public addininertiaforces (FI, RF, mass, sam, ierr)
 Calculates the inertia forces for a mass element. More...
 
subroutine calcgravitationforces (mass, gravity, eV)
 Calculates the gravitation forces for a mass element. More...
 
subroutine calcinertiaforces (mass, eV)
 Calculates the inertia forces for a mass element. More...
 
subroutine, public addinmassmat (scaleI, Nmat, mass, sam, ierr, Rhs)
 Calculates the mass matrix for a mass element. More...
 

Detailed Description

Module with subroutines for calculation of discrete mass elements.

This module contains a set of subroutines for performing various computation tasks on the masstypemodule::masstype objects in the model during the dynamic or quasi-static simulation.

Function/Subroutine Documentation

◆ addingravitationforces()

subroutine, public massroutinesmodule::addingravitationforces ( real(dp), dimension(:), intent(inout)  Q,
real(dp), dimension(:), intent(inout)  RF,
type(masstype), intent(in)  mass,
real(dp), dimension(3), intent(in)  gravity,
type(samtype), intent(in)  sam,
integer, intent(inout)  ierr 
)

Calculates the gravitation forces for a mass element.

Parameters
QExternal force vector (gravity loads)
RFSystem reaction forces associated with constrained DOFs
[in]massThe mass element to calculate gravitation forces for
[in]gravityGravitation vector
[in]samData for managing system matrix assembly
ierrError flag

The calculated forces are added into the system force vector Q with contributions to the reaction forces RF for the constrained DOFs.

Author
Karl Erik Thoresen
Date
Feb 1999
Author
Bjorn Haugen
Date
Nov 2001
Author
Knut Morten Okstad
Date
30 Jan 2008
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addininertiaforces()

subroutine, public massroutinesmodule::addininertiaforces ( real(dp), dimension(:), intent(inout)  FI,
real(dp), dimension(:), intent(inout)  RF,
type(masstype), intent(in)  mass,
type(samtype), intent(in)  sam,
integer, intent(inout)  ierr 
)

Calculates the inertia forces for a mass element.

Parameters
FIInertial force vector
RFSystem reaction forces associated with constrained DOFs
[in]massThe mass element to calculate inertia forces for
[in]samData for managing system matrix assembly
ierrError flag

The calculated forces are added into the system force vector Q with contributions to the reaction forces RF for the constrained DOFs.

Author
Karl Erik Thoresen
Date
Feb 1999
Author
Bjorn Haugen
Date
Nov 2001
Author
Knut Morten Okstad
Date
30 Jan 2008
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addinmassmat()

subroutine, public massroutinesmodule::addinmassmat ( real(dp), intent(in)  scaleI,
type(sysmatrixtype), intent(inout)  Nmat,
type(masstype), intent(in)  mass,
type(samtype), intent(in)  sam,
integer, intent(out)  ierr,
real(dp), dimension(:), intent(inout), optional  Rhs 
)

Calculates the mass matrix for a mass element.

Parameters
[in]scaleIMass matrix scaling factor
NmatSystem Newton matrix
[in]massThe mass element to calculate mass matrix for
[in]samData for managing system matrix assembly
ierrError flag
RhsSystem right-hand-side vector associated with the Newton matrix

This subroutine calculates the mass matrix for a mass element and adds it into the system Newton matrix, multiplied by the given scale factor scaleI.

Author
Karl Erik Thoresen
Date
Feb 1999
Here is the call graph for this function:
Here is the caller graph for this function:

◆ calcgravitationforces()

subroutine massroutinesmodule::calcgravitationforces ( type(masstype), intent(in)  mass,
real(dp), dimension(3), intent(in)  gravity,
real(dp), dimension(6), intent(out)  eV 
)

Calculates the gravitation forces for a mass element.

Parameters
[in]massThe mass element to calculate gravitation forces for
[in]gravityGravitation vector
[out]eVElement force vector
Author
Knut Morten Okstad
Date
30 Jan 2008
Here is the call graph for this function:
Here is the caller graph for this function:

◆ calcinertiaforces()

subroutine massroutinesmodule::calcinertiaforces ( type(masstype), intent(in)  mass,
real(dp), dimension(6), intent(out)  eV 
)

Calculates the inertia forces for a mass element.

Parameters
[in]massThe mass element to calculate inertia forces for
[out]eVElement force vector
Author
Knut Morten Okstad
Date
30 Jan 2008
Here is the call graph for this function:
Here is the caller graph for this function:

◆ updatemass()

subroutine massroutinesmodule::updatemass ( type(masstype), intent(inout)  mass,
real(dp), dimension(3), intent(in)  gravity,
logical, intent(in)  restart,
integer, intent(inout), optional  ierr 
)

Updates a mass element.

Parameters
massThe mass element to update
[in]gravityGravitation vector
[in]restartIf .true., skip force calculation
ierrError flag
Author
Knut Morten Okstad
Date
30 Jan 2008
Here is the call graph for this function:
Here is the caller graph for this function:

◆ updatemasses()

subroutine, public massroutinesmodule::updatemasses ( type(masstype), dimension(:), intent(inout)  masses,
real(dp), dimension(3), intent(in)  gravity,
logical, intent(in)  restart,
integer, intent(inout), optional  ierr 
)

Updates all mass elements.

Parameters
massesAll mass elements of the model
[in]gravityGravitation vector
[in]restartIf .true., skip force calculation
ierrError flag
Author
Knut Morten Okstad
Date
30 May 2002
Here is the call graph for this function:
Here is the caller graph for this function: