SYSFNC

Utility/Data Access SubroutineThe SYSFNC utility subroutine allows you to query MotionSolve for a single system state such as displacement, velocity, and force, inside a user subroutine. SYSFNC should be called with the appropriate input argument (listed below) and it returns the corresponding system state.

Format

Fortran Calling Syntax
CALL SYSFNC (FNCNAM, IPAR, NSIZE, STATE, ERRFLG)
C/C++ Calling Syntax
c_sysfnc(fncnam, ipar, nsize, state, errflg)
Python Calling Syntax
[state, errflg] = py_sysfnc(fncnam, ipar)
MATLAB Calling Syntax
[state, errflg] = m_sysfnc(fncnam, ipar)

Attributes

FNCNAM
A string that specifies the name of the function for the SYSFNC call. Valid function names are listed below.
IPAR
A real vector containing input parameters for the FNCNAM. The size of this array must be NSIZE.
NSIZE
A scalar integer variable that contains the number of parameters for the SYSFNC call.
STATE
The real value extracted by the function call.
ERRFLG

A logical flag that represents the success of the SYSFNC function call.

  • False/0 - Success.
  • True/nonzero - Error in the function call

Complete Definition

This function can be called only by a subset of user defined subroutines: ARYSUB, CONSUB, DIFSUB, GFOSUB, REQSUB, SENSUB, SEVSUB, SFOSUB, TUNSUB, VARSUB, VFOSUB, and VTOSUB. In particular, it cannot be called by UCOSUB, COUSUB, COUXX, COUXX2, FIESUB, MOTSUB, GSESUB, GSEXX, GSEXU, GSEYX and GSEYU. For the above mentioned routines, system states must be explicitly passed as input arguments and cannot be extracted via the SYSARAY or SYSFNC call.

The table below lists each of the supported function names with the size of the arguments that are required.

Note: Please refer to the documentation for each of these functions for more details on their syntax.
Functions Types Function Names NSIZE
Displacement DM, AX, AY,AZ, YAW, PITCH, ROLL, PSI, PHI, THETA 1-2
  DX, DY, DZ 1-3
  INCANG 3
  Q 2
Velocity VM, VR 1-3
  WM 1-2
  VX,VY,VZ 1-4
  WX,WY,WZ 1-3
  QDOT 2
Acceleration ACCM, WDTM 1-3
  ACCX, ACCY, ACCZ, WDTX, WDTY, WDTZ 1-4
  QDDOT 2
Marker Force FM, TM 2
  FX, FY, FZ, TX, TY, TZ 2-3
Elemental Force BEAM, BUSH, FIELD, SPDP, COUPLER, MATE, SFORCE, VFORCE, VTORQ, GFORCE, YFORCE, JOINT, JPRIM, MOTION, CVCV, PTCV, CVSF, PTSF, SFSF, CONTACT 4
  FRICTION 2
System Element DIF, DIF1, VARVAL, SENVAL 1
  PINVAL, POUVAL, ARYVAL 2
Kinetic Energy KE 1
Proximity PROXIMITY 2