Welcome to Adams/Solver Subroutines - Kxcad.net
Welcome to Adams/Solver Subroutines - Kxcad.net
Welcome to Adams/Solver Subroutines - Kxcad.net
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Input Arguments<br />
<strong>Welcome</strong> <strong>to</strong> <strong>Adams</strong>/<strong>Solver</strong> <strong>Subroutines</strong><br />
id An integer variable that provides the identifier of the REQUEST<br />
statement requesting information from REQSUB. From the identifier,<br />
<strong>Adams</strong>/<strong>Solver</strong> au<strong>to</strong>matically knows other information (such as the par<br />
argument) available in the corresponding statement.<br />
iflag A logical variable that <strong>Adams</strong>/<strong>Solver</strong> sets <strong>to</strong> true for the initial call <strong>to</strong><br />
REQSUB. In general, you do not need <strong>to</strong> test this flag in the subroutine.<br />
But if there are computations that need <strong>to</strong> be evaluated once at the<br />
beginning of the simulation, you can test the iflag argument. In this case,<br />
if the iflag argument is true, the subroutine should evaluate the<br />
computations.<br />
npar An integer variable that indicates the number of constants specified in<br />
the USER parenthetical list. The primary purpose of npar is <strong>to</strong> provide<br />
REQSUB with the number of values s<strong>to</strong>red in the par array.<br />
par A double-precision array of constants taken in order from the USER<br />
parenthetical list of the REQUEST statement.<br />
time A double-precision variable through which <strong>Adams</strong>/<strong>Solver</strong> conveys the<br />
current simulation time.<br />
Output Argument<br />
result A double-precision array of eight values that contains the values you<br />
calculate in the REQSUB. <strong>Adams</strong>/<strong>Solver</strong> sends all the values and the<br />
current time <strong>to</strong> the tabular output file.<br />
Extended Definition<br />
If the dataset contains an OUTPUT statement with the REQSAVE<br />
argument, <strong>Adams</strong>/<strong>Solver</strong> s<strong>to</strong>res values two through four, and six through<br />
eight in the request file for subsequent plotting in the postprocessor (see<br />
the C++ OUTPUT command or the FORTRAN OUTPUT command).<br />
<strong>Adams</strong>/<strong>Solver</strong> does not s<strong>to</strong>re columns one and five in the request file.<br />
These columns usually contain translational and rotational magnitude<br />
values for the request. If the dataset contains a RESULTS statement<br />
without the NODATASTRUCTURES argument, <strong>Adams</strong>/<strong>Solver</strong> s<strong>to</strong>res<br />
all eight values in the results file for subsequent postprocessing. If fewer<br />
than eight values are used in the result array, <strong>Adams</strong>/<strong>Solver</strong> sets the<br />
remaining values <strong>to</strong> zero.<br />
The REQUEST and MREQUEST statements are usually adequate for outputting displacement, velocity,<br />
acceleration, or force data between two markers in the system. But if you want <strong>to</strong> output other quantities,<br />
191