Hi all,
I am using a DISP subroutine to impose a displacement to the centerline of an elastic rod. Since I am new to writing subroutines, I wanted to make sure my reasoning made sense. Here is how I do it:
1. I identify all the nodes lying on the centerline by looking at mesh's .inp file
2. In the DISP subroutine, I write a number of IF... THEN conditions, of format:
IF(NODE.EQ.2.AND.JDOF.EQ.1) THEN
U(1) = ...
ELSE IF(NODE.EQ.2.AND.JDOF.EQ.2) THEN
U(1) = ...
ELSE IF(NODE.EQ.2.AND.JDOF.EQ.3) THEN
U(1) = ...
etc., where in this example I am updating the 3 translation degrees of freedom of node 2. I am writing these three lines for every node I identified in the previous step. Attached is an example of what this might look like for a series of nodes. Of course, I have an ENDIF/RETURN/END at the end of the code.
Am I doing that properly? In particular, I am imposing a special time-dependent loading, and I wanted to make sure my reasoning and code made sense. Thanks a lot in advance!
Cheers!
Abaqus