

A=id | Designates the MATRIX statement in the dataset that defines the state transition matrix for the linear system. You must have a MATRIX statement with this identifier in the dataset; it must be a square matrix (same number of rows and columns); and it must have the same number of columns as the number of rows in the X array. |
B=id | Designates the MATRIX statement in the dataset that defines the control matrix for the linear system. The B argument is optional. When it appears on the LSE statement, you must also include the U argument. A MATRIX statement with the identifier id must be in the dataset; it must have the same number of rows as the A matrix and the same number of columns as the number of elements in the U array. |
C=id | Designates the MATRIX statement in the dataset that defines the output matrix for the linear system. The C argument is optional. When it appears on the LSE statement, you must also include the Y argument. A MATRIX statement with the identifier id must be in the dataset; it must have the same number of rows as the A matrix and the same number of rows as the number of elements in the Y array. |
D=id | Designates the MATRIX statement in your dataset that defines the feed forward matrix for the linear system. When the D argument is used, you must also include both Y and U arguments in the LSE definition. A MATRIX statement with this identifier must be in the dataset; it must have the same number of rows as the number of elements in the Y array and the same number of columns as the number of elements in the U array. |
IC=id | Designates the ARRAY statement in the dataset that defines the column matrix of initial conditions for the linear system. The IC argument is optional. When it appears on the LSE statement, you must have an ARRAY statement with the identifier id in the dataset; and it must have the same number of elements as the X array (equal to the number of rows in the A matrix). When no IC array is specified for an LSE, all states are initialized to zero. |
STATIC_HOLD | Indicates that the LSE states are not permitted to change during static and quasi-static analyses. |
U=id | Designates the ARRAY statement in the dataset that defines the input (or control) array for the linear system. The U argument is optional. When it is used on the LSE statement, there must be an ARRAY statement with the identifier id in the dataset; and it must be of the U type. One or both of the B or D argument must appear along with the U argument in the LSE statement. The corresponding MATRIX statements must have the same number of columns as there are elements in the U array. |
X=id | Designates the ARRAY statement in the dataset that defines the state array for the linear system. You must have an ARRAY statement with this identifier in the dataset; it must be of the X type; and it may not be used in any other LSE, GSE, or TFSISO statement. |
Y=id | Designates the ARRAY statement in your dataset that defines the column matrix of output variables for the linear system. The Y argument is optional. When it is used on the LSE statement, an ARRAY statement with the identifier id must be in the dataset; it must be of the Y type, and it may not be used in any other LSE, GSE or TFSISO statement. One or both of the C or D arguments must appear along with the Y argument on the LSE statement. The corresponding MATRIX statements must have the same number of rows as there are elements in the Y array. |

matrix must be nonzero.Caution: | ■The LSE statement provides a very general capability for defining a linear element. The Adams solvers, however, have been developed and refined for sparse systems of equations that arise from the modeling of mechanical systems. With the LSE statement, you can create very dense sets of equations. If these equations form a large portion of your completed model, Adams Solver (C++) may perform more slowly than expected. ■Note that, if the algebraic equations defined by the LSE statement have no solution or multiple solutions (this is possible because of the general nature of the input ARRAY), Adams Solver (C++) most likely fails to converge or possibly converge to an unexpected answer. To avoid this possibility, you should not reference the X (state) or Y (output) ARRAY statements in the VARIABLE statements listed in the U (input) array. ■During a static analysis, Adams Solver (C++) finds equilibrium values for user-defined differential variables (DIFFs, GSEs, LSEs, and TFSISOs), as well as for the displacement and force variables. This changes the initial conditions for a subsequent analysis. If STATIC_HOLD is not specified, during a static analysis, Adams Solver (C++) sets the time derivatives of the user-defined variables to zero, and uses the user-supplied initial-condition values only as an initial guess for the static solution. Generally, the final equilibrium values are not the same as the initial condition values. Adams Solver (C++) then uses the equilibrium values of the user-defined variables as the initial values for any subsequent analysis, just as with the equilibrium displacement and force values. ■However, if STATIC_HOLD is specified, the user-specified initial conditions are retained as the static equilibrium values. Thus, the final equilibrium values are the same as the user-specified initial conditions. Note that this does not guarantee that the time derivatives of the user-defined variable are zero after static analysis. |
