02.04.2013 Views

Welcome to Adams/Solver Subroutines - Kxcad.net

Welcome to Adams/Solver Subroutines - Kxcad.net

Welcome to Adams/Solver Subroutines - Kxcad.net

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Welcome</strong> <strong>to</strong> <strong>Adams</strong>/<strong>Solver</strong> <strong>Subroutines</strong><br />

INTEGER CASE<br />

DOUBLE PRECISION SCALE, LOADVEC(6+NMODS)<br />

C<br />

C... PARAMETERSC<br />

INTEGER MAXN<br />

PARAMETER (MAXN = 100 )<br />

DOUBLE PRECISION ZERO<br />

PARAMETER (ZERO = 0.0D+00)<br />

DOUBLE PRECISION ONE<br />

PARAMETER (ONE = 1.0D+00)<br />

DOUBLE PRECISION TWO<br />

PARAMETER (TWO = 2.0D+00)<br />

DOUBLE PRECISION PI<br />

PARAMETER (PI = 3.141592653589793D+00)<br />

C<br />

C... LOCALSC<br />

LOGICAL ERRFLG<br />

INTEGER I, NQ, FBYID<br />

INTEGER MNUM(MAXN)<br />

DOUBLE PRECISION GSTF, GMAS<br />

DOUBLE PRECISION MFRQ(MAXN), QDOT(MAXN)<br />

C<br />

C===================== EXECUTABLE CODE<br />

==============================<br />

C FBYID = NINT(PAR(1))<br />

C<br />

C... GET MODE NUMBERS AND FREQUENCIES FOR ALL ACTIVE MODES<br />

C<br />

CALL MODINF (FBYID, MNUM, MFRQ, ERRFLG)<br />

CALL ERRMES(ERRFLG, 'FAILED CALL TO MODINF', ID, 'STOP')<br />

C<br />

C... GET TIME DERIVATIVE OF MODAL COORDINDATES<br />

CALL SYSARY('QDOT', FBYID, 1, QDOT, NQ, ERRFLG)<br />

CALL ERRMES(ERRFLG, 'FAILED CALL TO SYSARY', ID, 'STOP')<br />

C<br />

C... CASE MUST BE SET TO ZEROC<br />

CASE = 0CC... BUILD MODAL LOAD AND RETURN IN LOADVEC ARRAY<br />

C<br />

DO I = 1, 6<br />

LOADVEC(I) = ZERO<br />

END DO<br />

C<br />

DO I = 1, NMODS<br />

GMAS = ONE<br />

GSTF = (TWO * PI * MFRQ(I)) ** 2<br />

183

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!