# Point_Mass

Model ElementThe Point_Mass is an entity that has mass but no inertia properties.

Point_Mass

## Description

Three translational coordinates characterize the position of the Point_Mass. By default, the orientation of the Point_Mass is set to be the same as the global coordinate system. It never changes during simulation. Markers on Point_Mass may have location and orientation coordinates. The orientation of these Markers does not change during the simulation.

## Attribute Summary

Name Property Modifiable by command? Designable?
id Int ()
label Str ()
qg Location (Point())   Yes
zg Location ()   Yes
xg Location ()   Yes
zv Location ()   Yes
xv Location ()   Yes
reuler Angles ()   Yes
mass Double () Yes Yes
cm Reference ("Marker")   Yes
vx Double (None) Yes FD Only
vy Double (None) Yes FD Only
vz Double (None) Yes FD Only
exact Exact ()
routine Routine ()

## Usage

Point_Mass (optional_attributes)

## Attributes

id
Integer
Specifies the element identification number. This number must be unique among all the Point_Mass 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 Point_Mass object.
This attribute is optional. When not specified, MotionSolve will create a label for you.
mass
Double
Specifies the mass of the Point_Mass object.
The attribute mass is optional. If a Point_Mass is fully constrained and you are not interested in the constraint forces, then mass needs not to be specified. When not specified, mass is set to zero.
Valid range of values: mass ≥ 0.0
cm
Reference to a Marker
Specifies the Marker that is located at the center-of-mass of the PART.
The attribute cm is optional. If a Point_Mass is fully constrained and you are not interested in the constraint forces, then mass and inertia need not to be specified. When these are not specified, you must not specify cm.
Note: In order to remove circular references, the body is created in two steps. First the body is defined without a CM marker. Then the CM attribute is explicitly defined.
qg
A Location object or a list of three doubles.
Specifies the coordinates of local part reference Marker. This Marker is used as the reference coordinate system for all Markers defined on this Point_Mass.
The qg attribute is optional. When not specified, it is assumed to be coincident with the global origin, (0, 0, 0).
zg
A Location object or a list of three doubles.
Specifies the coordinates of a point on the z-axis of the local part reference Marker. This Marker is used as the reference coordinate system for all Markers defined on this Point_Mass.
The zg attribute is optional. When not specified, the point is assumed to be on the global z-axis.
The zg/xg attribute is exclusive to zv/xv, reuler, and function. Only one of them may be specified.
xg
A Location object or a list of three doubles.
Specifies the coordinates of a point on the x-axis of the local part reference Marker. This Marker is used as the coordinate system for all Markers defined on this Point_Mass.
The xg attribute is optional. When not specified, the point is assumed to be on the global x-axis.
The zg/xg attribute is exclusive to zv/xv, reuler, and function. Only one of them may be specified.
zv

A Location object or a list of threedoubles.

Specifies the z-axis of the local part reference Marker. This Marker is used as the reference coordinate system for all Markers defined on this Part.

The zv attribute is optional. When not specified, the z-axis is assumed to be the global z-axis.

The zv/xv attribute is exclusive to zg/xg, reuler, and function. Only one of them may be specified.

xv
A Location object or a list of three doubles.
Specifies the x-axis of the local part reference Marker. This Marker is used as the coordinate system for all Markers defined on this Part.
The xv attribute is optional. When not specified, the x-axis is assumed to be the global x-axis.

The zv/xv attribute is exclusive to zg/xg, reuler, and function. Only one of them may be specified.

reuler
A list of three doubles.
Specifies the body-fixed 3-1-3 Euler angles of the local part reference Marker with respect to the global coordinate system. This Marker is used as the reference coordinate system for all Markers defined on this Point_Mass.
The reuler attribute is optional. When not specified, it is assumed to be (0,0,0), in other words, the local part reference Marker has the same orientation as the global coordinate system.
The reuler attribute is exclusive to function and zg/xg. Only one of them may be specified.
function
String
Specifies the list of parameters that are passed from the data file to the user-written defined.
The attribute function is optional.
The function attribute is exclusive to reuler and zg/xg. Only one of them may be specified.
routine
String or a pointer to a function.
Specifies an alternative name for the user subroutine.
The attribute routine is optional. The default name of the user subroutine is MASS_READ.
vx
Double
Specifies the initial translational velocity of the PART along the global x-axis.
The vx attribute is optional.
• When not specified, MotionSolve will perform an internal computation to ensure that all Point_Mass velocities are consistent with the first time derivative of the constraints.
• When specified, MotionSolve will try to maintain the value specified as it perform the internal computation to ensure that all Point_Mass velocities are consistent with the first time derivative of the constraints.
vy
Double
Specifies the initial translational velocity of the PART along the global y-axis.
The vy attribute is optional.
• When not specified, MotionSolve will perform an internal computation to ensure that all Point_Mass velocities are consistent with the first time derivative of the constraints.
• When specified, MotionSolve will try to maintain the value specified as it perform the internal computation to ensure that all Point_Mass velocities are consistent with the first time derivative of the constraints.
vz
Double
Specifies the initial translational velocity of the PART along the global z-axis.
The vz attribute is optional.
• When not specified, MotionSolve will perform an internal computation to ensure that all Point_Mass velocities are consistent with the first time derivative of the constraints.

When specified, MotionSolve will try to maintain the value specified as it perform the internal computation to ensure that all Point_Mass velocities are consistent with the first time derivative of the constraints.

exact

## Example

1. Referring to the 3-body problem in the XML Reference, specify the Sun as a Point_Mass.
sun = Point_Mass (Label="SUN", mass=3.328e5, vx=0, vy=0, vz=0)
sun.cm = Marker (body=sun, label="Sun’s center") #location defaults to [0,0,0]
2. Referring to the 3-body problem in the XML Reference, specify the Earth as a Point_Mass.
earth = Point_Mass (Label="EARTH", mass=1, vx=0, vy=2.445e3, vz=0)
earth.cm = Marker (label="Earth's center", qg=[389.2,0,0])