Hi FEAP team,
I need help regarding initialization of DOF values (initial displacements) in my user element subroutine.
This user defined element has 3 displacement components per node, as well as other (density like) scalar variables as DOF. The element residual and stiffness matrix equations involve first time derivative of that scalar variables. Since there is no second time derivative and hence no "mass" matrix is involved, therefore I have programmed the entire system of equations after time discretization using Backward Euler scheme with a fixed time increment (time increment as input from user via TINPUT).
After this simple time integration and getting rid of first time derivative, it seems the system has become quasi-static, as I am calculating total stiffness K'_T = c1*K + c2*C, and there is no damping matrix C generated for FEAP (instead I am returning K'_T to s matrix in element routine).
The problem is to initialize the values of extra DOF (those density like variables). Since this is not transient problem anymore, I am not sure if
BATCh
INITial DISPlacement
END
1 1 0. 0. 0. 2.5 2.5 2.5 1.5 1.5 1.5 2.0 2.0 2.0 2.5 2.5 2.5 1.5 1.5 1.5
27 1 0. 0. 0. 2.5 2.5 2.5 1.5 1.5 1.5 2.0 2.0 2.0 2.5 2.5 2.5 1.5 1.5 1.5
will work in this case. Is there any other way to initialize these extra DOF values in FEAP?
I have tried with above INITial DISPlacement but FEAP crashed and I couldn't find any clue from the trivial debugger (I have compiled FEAP with Release configuration).
Second problem is that: in some cases, the number of DOF can be up to 15. In that case the number of data values at EBOUN and INITial DISPlacement cards will be more than 16. The version 8.3 Programmer Manual of FEAP (section 2.1 page 11) states that the TINPUT/PINPUT allow 16 individual values per one input record. Is this limit also for every/all lines in FEAP input file (or only those which are meant to be processed by TINPUT/PINPUT)? If yes, then is there any way to pass values of 15 or more DOF values for boundary and initial displacements?
Kindly pardon if the question seems silly, but I have spent quite long time trying to find answers to these questions.
Thanks.