MODAL_FORCE

 

The MODAL FORCE subroutine generates a user - defined RFlex Modal Force.

 

Language type

SubRoutine

FORTRAN

modal_force (ID, TIME, UPAR, NPAR, IFBODY, POS, VEL, ACC, NMODE, NNODE, NMODALLOAD, MODALLOADS, JFLAG, IFLAG, RESULT)

C/C++

modal_force (int id, double time, double upar[], int npar, int ifbody, double pos[12], double vel[6], double acc[6], int nmode, int nnode, int nModalLoad, double *ModalLoads,  int jflag, int iflag, double *result)

 

Parameter information

 

Variable Name

Size

Description

id

int

Modal Force sequential identification

time

double

Current simulation time of RecurDyn/Solver.

upar

double*

Parameters defined by the user. There is no limit about the maximum size of array.

npar

int

Number of user parameters.

ifbody

int

RFLEX body sequential identification defined in RecurDyn/Solver.

pos

double[12]

Position and Orientation matrix of RFLEX body reference frame with respect to Inertia Reference Frame.

vel

double[6]

Velocity and rotational velocity of RFLEX body reference frame with respect to Inertia Reference Frame.

acc

double[6]

Acceleration and rotational acceleration of RFLEX body reference frame with respect to Inertia Reference Frame.

nmode

int

Number of selected modes (This is the same number of modal coordinates.)

nnode

int

Number of node of RFLEX body (The node information is written in RFI file.)

nModalLoad

int

Number of selected Modal Load Case.

ModalLoads

double

[(6+nmode)

*nModalLoad]

Modal Load data.

jflag

int

When RecurDyn/Solver evaluates Jacobian, the flag is true. Otherwise, the flag is false.

iflag

int

When RecurDyn/Solver makes its initial call to this routine, the flag is true. Otherwise, the flag is false.

result

double[6+nmode]

Returned modal force.

 

If the user wants to get more information of Modal Force, refer to RFLEX Modal Force.

 

Example

 

Figure 1  Modal force model applying air resistance effect

 

Note

If the user wants to run this model using a user subroutine, the user can refer it in the directory (<install dir>/Help/usub/**).