Skip to content

Home > List of Keywords > *LENELEM,NAME=DLL

*LENELEM,NAME=DLL

Data format:

One line with 3 parameters followed by one line with NDAT parameters

IEL IELR NDAT
V_1 ... V_NDAT (optional line: only defined if NDAT>0)
DLLFileName
DLLProcName

Status :

Optional

Restriction :

For dynamic analyses only

Purpose :

To control the length of an element through an external dynamic library

Details :

Parameter Description
IEL Identification number of the element which length is controlled
IELR Identification number of the reference element to compute loads and position, velocity, acceleration. IF IELR=0 then IEL becomes the reference element
NDAT Number of external data
V_1 ... V_NDAT Values of NDAT data provided to .dll
DLLFileName DLL file name
DLLProcName DLL procedure name

Note

Procedure in the DLL exchanges the following information with DeepLines at the beginning of each timestep (isize integer, all other double precision real numbers):

  • if (isize > 0)

( xl_cur, xl_ini, time, dtincr, matrot, posglo, vitnode, accnode, feload, isize, external_data)

  • if (isize = 0)

( xl_cur, xl_ini, time, dtincr, matrot, posglo, vitnode, accnode, feload)

where

  • xl_cur : Current length of the element. This is updated by the .dll. Note that if the length is less than 1mm, then it is forced to 1mm.
  • xl_ini : Initial length of the element (input)
  • time : time when the dll is called (input)
  • dtincr : time step (input)
  • matrot(18) : rotation matrix of the first node of the reference element, first line from 1 to 3, second line from 4 to 6 third line from 7 to 9 (input) Followed by the rotation matrix of the end node
  • Posglo(6) : position (translation only) of the first and last node of the reference element in the global frame (input) -
  • Vitnode(12) : velocity of the first and last node of the reference element in the global frame (input)
  • Accenode(12) : acceleration of the first and last node of the reference element in the global frame (input)
  • feload(6) : loads (force and moment) in local frame of element IELR (input)
  • isize=NDAT: Number of external data provided to the .dll (input) if NDAT=0, the .dll called is modified and does not contain isize and external_data
  • external_data(isize) : values of the NDAT data (input)