About Adams Solver
Conventions
Guidelines for Solver Selection and Settings
Best Practices
Additional Publications
Adams Solver Glossary
Using Adams Solver
Command File
Creating an Adams Solver Command File
Command File Syntax
Modeling and Simulating Process
Building Your Model
Testing Your Model
Reviewing the Results
Improving Your Model
Datasets
Working with Adams Solver Datasets
Organizing the Dataset
Using Statements to Define Your Model
Understanding Adams Solver Modeling Concepts
Vectors
Reference Frames
Coordinate Systems
Positioning Methods
Local Versus Global Geometric Data
Degrees of Freedom
Force Direction and Application
ROUTINE Argument
Joint types
Translational Joint
Revolute Joint
Cylindrical Joint
Universal/Hooke Joint
Spherical Joint
Error Codes
Welcome to the C++ Version of Adams Solver
Adams Solver (C++) FAQs
Operators
C++ Statements
ACCGRAV
ARRAY
BEAM
BUSHING
CBKSUB
CLEARANCE
CONTACT
COUPLER
CURVE
CVCV
DEBUG
DIFF
END
ENVIRONMENT
EQUILIBRIUM
FE_LOAD
FE_NODE
FE_PART
FEMDATA
FIELD
FLEX_BODY
FRICTION
GCON
GEAR
GFORCE
GRAPHICS
GSE
IC
INTEGRATOR
JOINT
JPRIM
KINEMATICS
LSE
LSOLVER
MARKER
MATERIAL
MATRIX
MFORCE
MOTION
NFORCE
OUTPUT
PART
PINPUT
POINT_MASS
POUTPUT
PREFERENCES
PSTATE
PTCV
REQUEST
RESULTS
SECTION
SENSOR
SFORCE
SPLINE
SPRINGDAMPER
STRING
SURFACE
TFSISO
TITLE
UNITS
VARIABLE
VFORCE
VTORQUE
C++ Functions
ABS
ACCM
ACCX
ACCXYZ
ACCY
ACCZ
ACOS
AINT
AKISPL
AMOM
ANINT
AO
ARYVAL
ASIN
ATAN
ATAN2
AX
AY
AZ
BEAM
BISTOP
BUSH
CHEBY
CONTACT
CONTACT_DATA
COS
COSH
CPU
CUBSPL
CURVE
CVCV
DEFORM
DELAY
DIF
DIF1
DIM
DM
DTOR
DX
DXYZ
DY
DZ
EXP
FIELD
FM
FORCOS
FORSIN
FRICTION
FX
FXFREQ
FXMODE
FXYZ
FY
FZ
GFORCE
HAVSIN
HSIZE
IF
IMPACT
INCANG
INTERP
INVPSD
JOINT
JPRIM
KE
LOG
LOG10
MAG
MAX
MIN
MOD
MODE
MOM
MOTION
NJAC
NRHS
ORDER
ORIENT
PHI
PI
PINVAL
PITCH
POLY
POUVAL
PSI
PTCV
Q
QDDOT
QDOT
ROLL
RTOD
S
SA
SD
SENVAL
SFORCE
SHF
SIGN
SIN
SINH
SPDP
SQRT
STEP
STEP5
SV
SWEEP
TAN
TANH
THETA
TIME
TM
TRANS
TX
TXYZ
TY
TZ
UV
UVX
UVY
UVZ
VARVAL
VFORCE
VM
VR
VTORQ
VX
VXYZ
VY
VZ
WDTM
WDTX
WDTXYZ
WDTY
WDTZ
WM
WX
WXYZ
WY
WZ
YAW
C++ Commands
ACCGRAV
ACTIVATE
ARRAY
BEAM
BUSHING
CONTROL
DEACTIVATE
DEBUG
DIFF
ENVIRONMENT
EQUILIBRIUM
FIELD
FILE
FLEX_BODY
FRICTION
GCON
GFORCE
HELP
IC
INFO
INTEGRATOR
JOINT
KINEMATICS
LINEAR
LSOLVER
MARKER
MENU
MOTION
OUTPUT
PART
PREFERENCES
RELOAD
REQUEST
SAVE
SENSOR
SFORCE
SHOW
SIMULATE
SPLINE
SPRINGDAMPER
STOP
STRING
TIME
VARIABLE
VFORCE
VTORQUE
Welcome to the FORTRAN Version of Adams Solver
Adams Solver (FORTRAN) Statements
ACCGRAV
ARRAY
BEAM
BUSHING
CONTACT
CURVE
COUPLER
CVCV
DEBUG
DIFF
END
EQUILIBRIUM
FEMDATA
FIELD
FLEX_BODY
FRICTION
GEAR
GFORCE
GRAPHICS
GSE
IC
INTEGRATOR
JOINT
JPRIM
KINEMATICS
LIST/NOLIST
LSE
MARKER
MATRIX
MFORCE
MOTION
MREQUEST
NFORCE
OUTPUT
PART
PINPUT
POINT_MASS
POUTPUT
PREFERENCES
PTCV
REQUEST
RESULTS
SENSOR
SFORCE
SPLINE
SPRINGDAMPER
STRING
TFSISO
TITLE
UCON
UNITS
VARIABLE
VFORCE
VTORQUE
Adams Solver (FORTRAN) Functions
ABS
ACCM
ACCX
ACCY
ACCZ
ACOS
AINT
AKISPL
ANINT
ARYVAL
ASIN
ATAN
ATAN2
AX
AY
AZ
BEAM
BISTOP
BUSH
CHEBY
CONTACT
COS
COSH
CUBSPL
CURVE
CVCV
DIF
DIF1
DIM
DM
DTOR
DX
DY
DZ
EXP
FIELD
FM
FORCOS
FORSIN
FRICTION
FX
FXFREQ
FXMODE
FY
FZ
GFORCE
HAVSIN
IF
IMPACT
INCANG
INTERP
INVPSD
JOINT
JPRIM
LOG
MAX
MIN
MOD
MODE
MOTION
NFORCE
ORIENT
PHI
PI
PINVAL
PITCH
POLY
POUVAL
PSI
PTCV
ROLL
RTOD
SENVAL
SFORCE
SHF
SIGN
SIN
SINH
SPDP
SQRT
STEP
STEP5
SWEEP
TAN
TANH
THETA
TIME
TM
TX
TY
TZ
VARVAL
VFORCE
VM
VR
VTORQ
VX
VY
VZ
WDTM
WDTX
WDTY
WDTZ
WM
WX
WY
WZ
YAW
Adams Solver (FORTRAN) Commands
ACCGRAV
ACTIVATE
ARRAY
BEAM
BUSHING
CONTROL
DEACTIVATE
DEBUG
EQUILIBRIUM
FIELD
FILE
FLEX_BODY
FRICTION
GFORCE
HELP
IC
INFO
INTEGRATOR
JOINT
KINEMATICS
LINEAR
LSOLVER
MARKER
MENU
MOTION
OUTPUT
PART
PREFERENCES
RELOAD
REQUEST
SAVE
SENSOR
SFORCE
SHOW
SIMULATE
SPLINE
SPRINGDAMPER
STOP
STRING
TIME
UCON
VARIABLE
VFORCE
VTORQUE
Welcome to Adams Solver Subroutines
Conventions, Requirements and Types
Subroutine Conventions
System Requirements
Types of Subroutines
Utility Subroutines
ADAMS_DECLARE_THREADSAFE
ADAMS_NEEDS_PARTIALS
ADAMS_SMP_GROUP
ADD_MASS_PROPERTY
AKISPL
ANALYS
BISTOP
BODY_MASS_PROPERTY
CHEBY
c_get_linear_mat_states
c_sysfn2
CUBSPL
CONTACT_INCIDENT_INDEX
DATOUT
ERRMES
FLEX_CONTACT_DATA
FORCOS
FORSIN
GET_FULL_MATRIX_DATA
GET_GRAVITY
GET_MATRIX_INFO
GET_NTHREAD
Example 2 (C/C++)
GET_SOLVER
GET_SPARSE_MATRIX_DATA
GET_THREAD_INDEX
GETCPU
GETINM
GETINT
GETMOD
GETSLV
GETSTM
GETVER
GSE
GSE_OUTPUT_ICS
GTARAY
GTCMAT
GTCURV
GTSTRG
GTUNTS
HAVSIN
IMPACT
ISTRNG
MODIFY
MODINF
N_CONTACT_INCIDENTS
N_NODE_INCIDENTS
NANINF
NMODES
POLY
PUT_SPLINE
RCNVRT
RSTRNG
SERIALIZE_CHARACTERS
SERIALIZE_DOUBLES
SERIALIZE_INTEGERS
SET_DGSE_TYPE
SHF
STEP
STEP5
SUBTRACT_MASS_PROPERTY
SYSARY
SYSFNC
SYSPAR
SYSTEM_KINETIC_ENERGY
SYSTEM_MOMENTUM
TCNVRT
TIMGET
UNSERIALIZE_CHARACTERS
UNSERIALIZE_DOUBLES
UNSERIALIZE_INTEGERS
UCOVAR
USRMES
User-Written Subroutines
Basics
Types of User-Written Subroutines
Guidelines
Writing Subroutines
Creating a User Library
Subroutine Arguments
Using Multiple Subroutines
Working with Multiple Subroutines of the Same Type
Invoking Subroutines
Compiling, Linking, and Running Libraries
Debugging Custom Libraries
Example - Specifying a User-Written Subroutine
Unsupported Subroutines
CBKSUB
CFFSUB
CNFSUB
CONSUB
COUSUB, COUXX, COUXX2
CURSUB
DIFSUB
DMPSUB
FEloadsub
FIESUB
GSE_SET_IMPLICIT
GSE_SET_ND
GSE_SET_NS
GSE_SET_SAMPLE_OFFSET
GSE_SET_STATIC_HOLD
GFOSUB
GSE_DERIV, GSE_OUTPUT, GSE_UPDATE, GSE_SAMP
MFOSUB
MOTSUB
RELSUB
REQSUB
SAVSUB
SENSUB
SEVSUB
SFOSUB
SPLINE_READ
SURSUB
UCOSUB
VARSUB
VFOSUB
VTOSUB
Additional Parallel Code in User-written Subroutines
Scope and definitions
Typical parallel scenarios
Case of more threads than CPUs
Additional parallelization in class P subroutines
Special cases where additional parallelization is recommended
Limitations and recommendations for writing additional parallel code
Adams Solver Examples
Adams Solver C++ vs. FORTRAN
Introduction
Advantages of Adams Solver C++
Modeling capabilities found only in the Adams Solver C++
Simulation capabilities found only in Adams Solver C++
Side-to-side C++/FORTRAN comparison
Statements comparison
Commands comparison
Function comparison
Utility subroutines comparison
Other differences
Special Topics about the Adams Solver C++
Linearization
Flexible Body Contact
GCONs
CBKSUB
Adams-to-Nastran Export
FE_PART
Running Multiple Solver Batch Runs on Windows
High Performance Computing
Thread Affinity Settings in Adams
About Adams Solver
Special Topics about the Adams Solver C++