# Nforce

Model ElementNforce defines a force and torque acting between many markers. The force and the torque can only be linear functions of the relative displacement and velocity of the various markers.

Nforce

## Attribute Summary

Name Property Modifiable by command? Designable?
id Int ()
label Str () Yes
imarkers Reference (Marker, count=0)   Yes
j Reference (Marker) Yes Yes
cratio Double () Yes FD Only
cmatrix Reference ("Matrix") Yes FD Only
kmatrix Reference ("Matrix") Yes FD Only
length Reference ("Matrix") Yes FD Only
force Reference ("Matrix") Yes FD Only
active Bool () Yes

## Usage

Nforce (j=objMarker, imarkers=list, kmatrix=objMatrix, optional_attributes)

## Attributes

j
Reference to an existing Marker object
Specifies the Marker that is the reference coordinate system for Nforce. All inputs such as stiffness and damping matrices and forces are measured in j. Relative displacements, velocities and force vectors are computed in this coordinate system.
The j attribute is mandatory.
imarkers
List of existing Marker objects
Specifies the list of IMARKERS between which the NFORCE is applied.
The imarkers attribute is mandatory.
kmatrix
Reference to an existing Matrix object
Specifies the MATRIX element which contains the stiffness matrix. This is an 6N*6N matrix, where N is the number of I markers.
The kmatrix attribute is mandatory.
kmatrix should be positive semi-definite. This means for any deformation Δ, the matrix product ΔT[kmatrix]Δ ≥ 0.
id
Integer
Specifies the element identification number. This number must be unique among all the Nforce objects in the model.
This attribute is optional. MotionSolve will automatically create an ID when one is not specified.
Range of values: id > 0
label
String
Specifies the name of the Nforce object.
This attribute is optional. When not specified, MotionSolve will create a label for you.
cratio
Double
Defines a damping scale factor. If this is specified, the damping matrix is calculated as C = cratio * K.
The cratio attribute is optional.
cratio ≥ 0
The default value for cratio = 0
Note: cratio and cmatrix are mutually exclusive. You may specify neither or only one of these.
cmatrix
Reference to an existing Matrix object
Specifies the MATRIX element that contains the damping matrix. This is a 6N*6N matrix, where N is the number of I markers.
The cmatrix attribute is optional.
Default is a zero matrix.
When specified, cmatrix should be positive semi-definite. This means for any deformation velocity v, the matrix product vT[cmatrix]v ≥ 0.
Note: cratio and cmatrix are mutually exclusive. You may specify neither or only one of these.
force
Reference to an existing Matrix object
Specifies the 6N*1 MATRIX element which contains the preload values for each pair of markers between which the NFORCE is applied. N is the number of IMARKERS.
The force attribute is optional.
Default is a zero matrix.
length
Reference to an existing Matrix object
Specifies the 3N*1 MATRIX element which contains the length values for each pair of markers between which the NFORCE is applied. N is the number of IMARKERS.
The length attribute is optional.
When omitted, the imarkers are taken to be at their reference locations. This means that at the input configuration, all deformations are computed as zero.
active
Boolean
Select one from "TRUE" or "FALSE"
• "TRUE" indicates that the element is active in the model and it affects the behavior of the system
• "FALSE" indicates that the element is inactive in the model and it does not affect the behavior of the system. It is almost as if the entity was removed from the model, of course with the exception that can be turned "ON" when desirable.
The attribute active is optional. When not specified, active defaults to "TRUE".

## Example

The example below shows how the NFORCE element may be defined.
# Define the necessary markers
m10  = Marker (body=p10, qp=[1.4,3.1,1.61], zp=[1.5,3.1,1.61])
m101 = Marker (body=p11, qp=[-4.4, 9.3, 5.31])
m102 = Marker (body=p12, qp=[8.14, 2.01, 1.11])
m103 = Marker (body=p13, qp=[0.0, 4.56,2.02])

# Define the Nforce
nfo1 = Nforce (label="Truss", j=m10, imarkers=[m101,m102,m103], kmatrix=mat11, cratio=0.01)