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

Module with data types joint DOF friction objects. More...

Data Types

type  frictionparametertype
 Data type representing a set of friction parameters. More...
 
type  frictiontype
 Data type representing a joint DOF friction. More...
 
type  frictionptrtype
 Data type representing a friction object pointer. More...
 
interface  getptrtoid
 Returns pointer to object with specified ID. More...
 
interface  writeobject
 Standard routine for writing an object to file. More...
 
interface  updateatconvergence
 Updates the state variables pertaining to previous time step. More...
 
interface  restorefromlaststep
 Restores the state variables from the last converged time step. More...
 

Functions/Subroutines

type(frictionparametertype) function, pointer getptrtoidfrictionparametertype (array, id)
 Returns pointer to friction parameters object with specified id. More...
 
subroutine writefrictiontype (friction, io, complexity)
 Standard routine for writing an object to io. More...
 
subroutine writefrictionparametertype (fricData, io)
 Standard routine for writing an object to io. More...
 
subroutine nullifyfriction (friction)
 Initializes a friction object. More...
 
subroutine deallocatefrictionprms (frictions)
 Deallocates an array of friction parameters objects. More...
 
subroutine initializefriction (friction, frictionSets, frictionId, saveVar, err)
 Allocates and initializes a friction object. More...
 
subroutine updatefrictionatstart (friction)
 Initializes internal friction variables at the start of simulation. More...
 
subroutine updatefrictionatconvergence (friction)
 Updates a friction object after convergence has been achieved. More...
 
subroutine restorefrictionfromlaststep (friction)
 Restores a friction object from the last converged step. More...
 

Variables

character(len=14), dimension(6), parameter frictype_p = (/ 'ROT_FRICTION ', 'TRANS_FRICTION', 'CAM_FRICTION ', 'BALL_FRICTION ', 'BALL_FRICTION2', 'GENERIC_ENGINE' /)
 Friction type names. More...
 
real(dp), save fricforcetol = 0.0_dp
 Zero tolerance for friction forces. More...
 

Detailed Description

Module with data types joint DOF friction objects.

The module also contains subroutines for accessing the frictions.

Function/Subroutine Documentation

◆ deallocatefrictionprms()

subroutine frictiontypemodule::deallocatefrictionprms ( type(frictionparametertype), dimension(:), pointer  frictions)

Deallocates an array of friction parameters objects.

Parameters
frictionsThe frictiontypemodule::frictionparametertype objects to deallocate
Author
Knut Morten Okstad
Date
23 Jan 2017

◆ getptrtoidfrictionparametertype()

type(frictionparametertype) function, pointer frictiontypemodule::getptrtoidfrictionparametertype ( type(frictionparametertype), dimension(:), intent(in), target  array,
integer, intent(in)  id 
)

Returns pointer to friction parameters object with specified id.

Parameters
[in]arrayArray of frictiontypemodule::frictionparametertype objects to search within
[in]idBase ID of the object to search for

If the friction parameters object is not found, NULL is returned.

Author
Bjorn Haugen
Date
1 Nov 1999

◆ initializefriction()

subroutine frictiontypemodule::initializefriction ( type(frictiontype), pointer  friction,
type(frictionparametertype), dimension(:), intent(in)  frictionSets,
integer, intent(in)  frictionId,
integer, dimension(:), intent(in)  saveVar,
integer, intent(out)  err 
)

Allocates and initializes a friction object.

Parameters
[out]frictionThe frictiontypemodule::frictionparameterttype object to allocate/initialize
[in]frictionSetsAll friction parameters objects in the model
[in]frictionIdBase id of the friction parameters object to use
[in]saveVarFlags indicating which variables should be saved
[out]errError flag
Author
Knut Morten Okstad
Date
28 Aug 2002
Here is the caller graph for this function:

◆ nullifyfriction()

subroutine frictiontypemodule::nullifyfriction ( type(frictiontype), intent(out)  friction)

Initializes a friction object.

Parameters
[out]frictionThe frictiontypemodule::frictionttype object to initialize
Author
Knut Morten Okstad
Date
16 Jun 2006

◆ restorefrictionfromlaststep()

subroutine frictiontypemodule::restorefrictionfromlaststep ( type(frictiontype), intent(inout)  friction)

Restores a friction object from the last converged step.

Parameters
frictionThe friction object to restore
Author
Knut Morten Okstad
Date
2 Nov 2008

◆ updatefrictionatconvergence()

subroutine frictiontypemodule::updatefrictionatconvergence ( type(frictiontype), intent(inout)  friction)

Updates a friction object after convergence has been achieved.

Parameters
frictionThe friction object to update
Author
Knut Morten Okstad
Date
3 Oct 2005

◆ updatefrictionatstart()

subroutine frictiontypemodule::updatefrictionatstart ( type(frictiontype), intent(inout)  friction)

Initializes internal friction variables at the start of simulation.

Parameters
frictionThe friction object to initialize internal variables for
Author
Knut Morten Okstad
Date
24 Oct 2005
Here is the caller graph for this function:

◆ writefrictionparametertype()

subroutine frictiontypemodule::writefrictionparametertype ( type(frictionparametertype), intent(in)  fricData,
integer, intent(in)  io 
)

Standard routine for writing an object to io.

Parameters
[in]fricDataThe frictiontypemodule::frictionparametertype object to write
[in]ioFile unit number to write to
Author
Bjorn Haugen
Date
Sep 1999

◆ writefrictiontype()

subroutine frictiontypemodule::writefrictiontype ( type(frictiontype), intent(in)  friction,
integer, intent(in)  io,
integer, intent(in), optional  complexity 
)

Standard routine for writing an object to io.

Parameters
[in]frictionThe frictiontypemodule::frictiontype object to write
[in]ioFile unit number to write to
[in]complexityIf present, the value indicates the amount of print
Author
Bjorn Haugen
Date
Sep 1999

Variable Documentation

◆ fricforcetol

real(dp), save frictiontypemodule::fricforcetol = 0.0_dp

Zero tolerance for friction forces.

◆ frictype_p

character(len=14), dimension(6), parameter frictiontypemodule::frictype_p = (/ 'ROT_FRICTION ', 'TRANS_FRICTION', 'CAM_FRICTION ', 'BALL_FRICTION ', 'BALL_FRICTION2', 'GENERIC_ENGINE' /)

Friction type names.