KINEMATICS

The KINEMATICS statement specifies error tolerances and other parameters for kinematic analyses.

Format

Click the argument for a description.

Arguments

 
AERROR
Specifies the maximum acceleration error Adams Solver (C++) is to allow for each time step.

Default: 1.0E-4
Range: AERROR > 0
ALIMIT=r
Specifies the maximum angular increment Adams Solver (C++) is to allow per iteration. The default units for ALIMIT are radians. To specify ALIMIT in degrees, add a D after the value.

Default: 30D
Range: ALIMIT > 0
AMAXIT=i
Specifies the maximum number of iterations Adams Solver (C++) is to allow for finding accelerations at a point in time.

Default: 25
Range: AMAXIT > 0
APATTERN=c1[:...:c10]
Specifies as many as ten character strings that together establish the pattern for evaluating the Jacobian matrix during the modified Newton-Raphson solution for the accelerations. For each iteration, T or TRUE indicates that Adams Solver (C++) is to evaluate the Jacobian, and F or FALSE indicates that Adams Solver (C++) is not to evaluate the Jacobian. Thus, cj determines whether or not Adams Solver is to evaluate the Jacobian at the jth iteration. If necessary, Adams Solver (C++) repeats the pattern of evaluations until it reaches the maximum number of iterations (AMAXIT). The number of T’s or TRUE’s and F’s or FALSE’s together must be at least one and no more than 10.

Default: T:T:T:T:T:T:T:T:T:T, that is, to evaluating the Jacobian at every iteration (that is, the unmodified Newton-Raphson algorithm)
ERROR=r
Specifies the maximum displacement error Adams Solver (C++) is to allow for each time step.

Default: 1.0E-4

Range: ERROR > 0
HMAX=r
Defines the maximum time step that the kinematics solver is allowed to take.

Default: The output step size.
MAXIT=i
Specifies the maximum number of iterations Adams Solver (C++) is to allow for finding the displacements at a point in time.
Default: 25
Range: MAXIT > 0
PATTERN=c1[:...:c10]
Specifies as many as ten character strings that together establish the pattern for evaluating the Jacobian matrix during the modified Newton-Raphson solution for the displacements. For each iteration, T or TRUE indicates that Adams Solver (C++) is to evaluate the Jacobian and F or FALSE indicates that Adams Solver (C++) is not to evaluate the Jacobian. Thus cj determines whether or not Adams Solver is to evaluate the Jacobian at the jth iteration. If necessary, Adams Solver (C++) repeats the pattern of evaluations until it reaches the maximum number of iterations (MAXIT). The number of T’s or TRUE’s and F’s or FALSE’s together must be at least one and no more than ten.

Default: T:T:T:T:T:T:T:T:T:T, that is, to evaluating the Jacobian at every iteration (that is., the unmodified Newton-Raphson algorithm)
TLIMIT=r
Specifies the maximum translational increment Adams Solver (C++) is to allow per iteration.

Default: 1.0E10 (no limit)
Range: TLIMIT > 0

Extended Definition

The KINEMATICS statement specifies error tolerances and other parameters for kinematic analyses. This statement would only be used when you are requesting a kinematic analysis and you want to change one or more of the tolerances and parameters from the default values.
Use the SIMULATE command to request a series of kinematic analyses over time. A kinematic analysis is only appropriate when a system has zero degrees of freedom. A kinematic analysis solves for the displacements, velocities, accelerations, and forces (if any) at a series of points in time. To find the displacements, Adams Solver (C++) uses Newton-Raphson iteration to solve a nonlinear set of algebraic equations.
After finding the displacements, Adams Solver (C++) solves a system of linear equations to find the velocities, then solves another set of nonlinear equations to find accelerations and forces. Adams Solver (C++) repeats this procedure at successively later times until it obtains results over the period of time specified in a SIMULATE command.
Unlike the Adams Solver (FORTRAN), the Adams Solver (C++) uses a Newton-Raphson iteration to solve the linear equations for velocity, rather than a direct method. In spite of this change, the KINEMATICS statement does not offer any controls over the iterative velocity solution. The modification is required because in Adams Solver (C++), VARIABLE elements can influence the velocity analysis and such elements can be self referencing. For example:
VARIABLE/1, FUN= (DX(1)+VARVAL(1))/2
A linear set of equations involving such self-referencing elements must be iteratively solved.
If you issue neither a KINEMATICS command nor statement in an Adams Solver (C++) session, Adams Solver (C++) uses the default values for AERROR, ALIMIT, AMAXIT, APATTERN, ERROR, MAXIT, PATTERN, and TLIMIT when performing a kinematic analysis.
 
Tip:  
Using a PATTERN argument to request less frequent evaluations of the Jacobian matrix may decrease the computation time, decreasing the cost and improving the response time. However, infrequent evaluations could also be more expensive since the modified Newton-Raphson algorithm might require more iterations due to the slower convergence rates.
Use the ALIMIT and TLIMIT arguments to limit the increments in the displacement variables and thus the size of the position change on successive iterations. This tends to prevent Adams Solver (C++) from moving the mechanism to an undesirable configuration.

Examples

KINEMATICS/TLIMIT=10, MAXIT=30
This KINEMATICS statement assigns new values to TLIMIT and MAXIT for a kinematic analysis. Thus, the maximum translational increment allowed in each iteration of a kinematic analysis is 10 length units and the number of iterations of the algorithm for the solution of the nonlinear equations is limited to 30.
See other Analysis parameters available.