3.2. Node Information Routines

3.2.1. Function ndinqr (Getting Information About a Node)

The primary function of ndinqr is getting information about a node. This function also sets the current node pointer to this node.


Note:  Some of the database commands in the input file shown below are in the common block ansysdef.inc, which must be included in the subroutine.


*deck,ndinqr
      function ndinqr (node,key)
c *** primary function:    get information about a node.
c *** secondary functions: set current node pointer to this node.

c *** Notice - This file contains ANSYS Confidential information ***

c     input arguments:
c        node     (int,sc,in)       - node number
c                                      Should be 0 for key=11, DB_NUMDEFINED,
c                                      DB_NUMSELECTED, DB_MAXDEFINED, and
c                                      DB_MAXRECLENG
c        key      (int,sc,in)       - key as to information needed about
c                                     the node.
c                 = DB_SELECTED    - return select status:
c                     ndinqr  =  0 - node is undefined.
c                             = -1 - node is unselected.
c                             =  1 - node is selected.
c                 = DB_NUMDEFINED  - return number of defined nodes
c                 = DB_NUMSELECTED - return number of selected nodes
c                 = DB_MAXDEFINED  - return highest node number defined
c                 = DB_MAXRECLENG  - return maximum record length (dp words)
c                 =   2, return length (dp words)
c                 =   3,
c                 =   4, pointer to first data word
c                 =  11, return void percent (integer)
c                 =  17, pointer to start of index
c                 = 117, return the maximum number of DP contact data stored for any node
c                 =  -1,
c                 =  -2, superelement flag
c                 =  -3, master dof bit pattern
c                 =  -4, active dof bit pattern
c                 =  -4, used for internal contact node flag <0
c                 =  -5, solid model attachment
c                 =  -6, pack nodal line parametric value
c                 =  -7, constraint bit pattern
c                 =  -8, force bit pattern
c                 =  -9, body force bit pattern
c                 = -10, internal node flag
c                 = -11, orientation node flag =1 is =0 isnot
c                 = -11, contact node flag <0
c                 = -12, constraint bit pattern (for DSYM)
c                 = -13, if dof constraint written to file.k (for LSDYNA only)
c                 = -14, nodal coordinate system number (set by NROTATE)
c                 = -15, MPI rank/domain that owns this node
c                 =-101, pointer to node data record
c                 =-102, pointer to angle record
c                 =-103, 
c                 =-104, pointer to attached couplings
c                 =-105, pointer to attacted constraint equations
c                 =-106, pointer to nodal stresses
c                 =-107, pointer to specified disp'S
c                 =-108, pointer to specified forces
c                 =-109, pointer to x/y/z record
c                 =-110,
c                 =-111,
c                 =-112, pointer to nodal temperatures
c                 =-113, pointer to nodal heat generations
c                 =-114,
c                 =-115, pointer to calculated displacements
c                 =-116,

c     output arguments:
c        ndinqr   (int,func,out)   - the returned value of ndinqr is based on 
c                                        setting of key.


3.2.2. Function getnod (Getting a Nodal Point)

*deck,getnod
      subroutine getnod (node,v,kerr,kcrot)
c *** primary function:    get a nodal point

c *** Notice - This file contains ANSYS Confidential information ***

c  input arguments:
c     node     (int,sc,in)       - node number
c     kerr     (int,sc,inout)    - message flag
c                                  = 0 - print no message if node is unselected
c                                         or undefined
c                                  = 1 - print message if node is undefined
c                                  = 2 - print message if node is undefined
c                                         or unselected
c     kcrot    (int,sc,in)       - output coordinates in this coordinate system.
c                                    if kcrot is negative, output theta and
c                                    phi coordinates in radians

c  output arguments:
c     v        (dp,ar(6),out)    - Coordinates (first 3 values) and rotation
c                                    angles (last 3 values)
c     kerr     (int,sc,inout)    - select status
c                                  = 0 - node is selected
c                                  = 1 - node is not defined
c                                  =-1 - node is unselected


3.2.3. Function putnod (Storing a Node)

*deck,putnod
      subroutine putnod (node,vctn,kcrot)
c *** primary function:    store a node
c *** secondary functions: display node if in immediate mode.
    
c *** Notice - This file contains ANSYS Confidential information ***
    
c     input arguments:
c        node     (int,sc,in)       - node number
c        vctn     (dp,ar(6),in)     - array of 3 nodal coordinates and
c                                              3 nodal rotation angles.
c        kcrot    (int,sc,in)       - local coordinate system in which the nodal
c                                      coordinates and angles are defined
    
c     output arguments:  none.
    

3.2.4. Function ndgall (Getting the XYZ/Rotation Coordinates Vector for a Node)

*deck,ndgall
      function ndgall (node,xyz)
c *** primary function:    get x,y,z,rotx,roty,rotz vector for a node.

c *** Notice - This file contains ANSYS Confidential information ***

c     input arguments:
c        node     (int,sc,in)       - node number for operation.

c     output arguments:
c        ndgall   (int,sc,out)      - status of node.
c                                       0=node is undefined.
c                                      -1=node is unselected.
c                                       1=node is selected.
c        xyz      (dp,ar(6),out)    - vector containing x,y,z,rotx,roty,rotz


3.2.5. Subroutine ndspgt (Getting the Nodal Solution for a Node of an Element)

*deck,ndspgt
      subroutine ndspgt (node,dofs,ndof,nrot,xyzang,nuvect,unode)
c *** primary function:  get the nodal solution for a node of an element

c *** Notice - This file contains ANSYS Confidential information ***

c     input arguments:
c        node     (int,sc,in)    - The node number
c        dofs     (int,ar(DOFBITLENG),in) - The dofs to retrieve for the node.
c                                   dof = degree of freedom
c                                   The dofs array should be zeroed out, 
c                                   except for the needed parts. 
c                                   dofs is a bit pattern with true bits
c                                   representing the GLOBAL Dof set desired.
c                                   That is, dofs(1) is used for UX to SP06,
c                                   and dofs(2) is used for TBOT to TTOP.
c                                   See ECHPRM for details.  For example,
c                                         dofs(1) = UX + TEMP
c                                         dofs(2) = TE3
c                                   TTOP is a special case.  If you want
c                                   TTOP alone, use: 
c                                         dofs(2) = ibset(0,TTOP)
c                                   If TBOT and TTOP are desired, you must use:
c                                         dofs(2) = TBOT
c                                         dofs(2) = ibset(dofs(2),TTOP)
c        ndof     (int,sc,in)    - The number of node dofs (1, 2 or 3).
c        nrot     (int,sc,in)    - Key to rotate dofs from nodal to global
c                                   coordinate systems.
c                                   if 0, none. if 2, 2-d. if 3, 3-d
c                                   if > 0, dof set must include and only
c                                   include all terms of the vector (e.g. 
c                                   UX,UY,UZ, or AX,AY,AZ).
c        xyzang   (dp,ar(6),in)  - The xyz virgin node coordinates
c                                    (including angles).  Not used if 
c                                    nrot = 0 or ndof < 2.
c        nuvect   (int,sc,in)    - Number of vectors to retrieve.  Can vary
c                                   between 1 and 5.  Normally 1 is what is
c                                   wanted.  Other vectors include previous
c                                   values and/or velocities.  See elucom for
c                                   all possibilites.  Contents are analysis
c                                   type dependent.

c     output arguments:
c        unode    (dp,ar(ndof,nuvect),out) - Element nodal solution vectors in
c                                             the global coordinate system.