Model Element |
|||||||||||||||||||||||||||||||
Description |
|||||||||||||||||||||||||||||||
Body_Point defines a point mass entity in MotionSolve. This entity has mass, but no inertia properties. The position of a point mass is characterized by three translational coordinates. By default, the orientation of the point mass is set to be the same as the global coordinate system. It never changes during simulation. Reference_Markers on Body_Point may have location and orientation coordinates. The orientation of these Reference_Markers does not change during the simulation. |
|||||||||||||||||||||||||||||||
Format |
|||||||||||||||||||||||||||||||
<Body_Point id = "integer" [ label = "string" ] cg_id = "integer" [ lprf_id = "integer" ] mass = "real" v_ic_x = "real" v_ic_y = "real" v_ic_z = "real" v_ic_x_flag = { "TRUE" | "FALSE" } v_ic_y_flag = { "TRUE" | "FALSE" } v_ic_z_flag = { "TRUE" | "FALSE" } </Body_Point> |
|||||||||||||||||||||||||||||||
Attributes |
|||||||||||||||||||||||||||||||
id |
Element identification number, (integer>0). This number is unique among all Body_Point elements. |
||||||||||||||||||||||||||||||
label |
The name of the Body_Point element. |
||||||||||||||||||||||||||||||
cg_id |
Specifies the Reference_Marker that is located at the center-of-mass of the Body_Point. |
||||||||||||||||||||||||||||||
lprf_id |
Optional attribute to specify the local part reference marker. |
||||||||||||||||||||||||||||||
mass |
Specifies the mass of the Body_Point. Mass > 0. |
||||||||||||||||||||||||||||||
v_ic_x |
Specifies the initial translational velocities of the Body_Point CG Reference_Marker along the global x-axis. |
||||||||||||||||||||||||||||||
v_ic_y |
Specifies the initial translational velocities of the Body_Point CG Reference_Marker along the global y-axis. |
||||||||||||||||||||||||||||||
v_ic_z |
Specifies the initial translational velocities of the Body_Point CG Reference_Marker along the global z-axis. |
||||||||||||||||||||||||||||||
v_ic_x_flag |
A Boolean flag that indicates whether the x-velocity is known exactly or is just an initial guess. "TRUE" means this initial condition is applied exactly unless it is in conflict with a Motion input. "FALSE" means this initial condition is applied as an initial guess. It may be changed by MotionSolve to ensure that all constraints are satisfied. |
||||||||||||||||||||||||||||||
v_ic_y_flag |
A Boolean flag that indicates whether the y-velocity is known exactly or is just an initial guess. "TRUE" means this initial condition is applied exactly unless it is in conflict with a Motion input. "FALSE" means this initial condition is applied as an initial guess. It may be changed by MotionSolve to ensure that all constraints are satisfied. |
||||||||||||||||||||||||||||||
v_ic_z_flag |
A Boolean flag that indicates whether the z-velocity is known exactly or is just an initial guess. "TRUE" means this initial condition is applied exactly unless it is in conflict with a Motion input. "FALSE" means this initial condition is applied as an initial guess. It may be changed by MotionSolve to ensure that all constraints are satisfied. |
||||||||||||||||||||||||||||||
Comments |
|||||||||||||||||||||||||||||||
In some situations, the body can be treated as a point mass for some purposes even if its dimensions are not negligibly small. For example, the gravitational field outside a spherically-symmetric body is the same as if the body were a point mass positioned at the center (with the same total mass, acting as a point source of gravitation).
|
|||||||||||||||||||||||||||||||
Example |
|||||||||||||||||||||||||||||||
The three body problem is one of the oldest problems in dynamical systems. The problem is to determine the behavior of three interacting celestial masses, for example the Earth, Moon and Sun. No closed form solutions have been found for the general problem and numerical simulations are performed to predict the behavior of the three bodies. The scale of the system is such that the three bodies can be considered as point masses. Mass:
Distance:
Time:
Initial velocities:
The global coordinate system is placed at the CG of the Sun. At the start of the simulation, the Earth is assumed to be along the X-axis of the global coordinate system. The moon is assumed to be in the X-Y plane as shown in the figure below.
The Sun-Earth-Moon System The Body_Point defining the sun in this system of units would be: <Body_Point id = "1" cg_id = "11" mass = "3.328E+5" v_ic_x = "0.0" v_ic_y = "0.0" v_ic_z = "0.0" v_ic_x_flag = "TRUE" v_ic_y_flag = "TRUE" v_ic_z_flag = "TRUE" </Body_Point> The Body_Point defining the Earth in this system of units would be: <Body_Point id = "2" cg_id = "21" mass = "1.0" v_ic_x = "0.0" v_ic_y = "2.445E+3" v_ic_z = "0.0" v_ic_x_flag = "TRUE" v_ic_y_flag = "TRUE" v_ic_z_flag = "TRUE" </Body_Point> |
Model Element |
|
Description |
|
The POINT_MASS is an entity that has mass but no inertia properties. The position of the POINT_MASS is characterized by three translational coordinates. 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. |
|
Declaration |
|
def POINT_MASS(id, LABEL="", MASS=0.0, CM=0, QG=[], REULER=[], ZG=[], XG=[], VX=0.0, VY=0.0, VZ=0.0, FUNCTION="", ROUTINE="", INTERPRETER="", SCRIPT=""): |
|
Attributes |
|
id |
Element identification number (integer>0). This number is unique among all the POINT_MASS elements. |
LABEL |
The name of the POINT_MASS element. |
MASS |
Specifies the mass of the POINT_MASS. When specified, mass must be a positive number. |
CM |
Specifies the ID of the MARKER that is located at the center-of-mass of the POINT_MASS. |
QG |
Specifies the coordinates of local POINT_MASS reference marker with respect to the Global reference frame. |
REULER |
Specifies the Euler angles of local POINT_MASS reference marker with respect to the Global axes system. |
ZG |
Specifies a point with respect to the Global reference frame, denoting the direction of z-axis of local POINT_MASS reference marker from QG. |
XG |
Specifies a point with respect to the Global reference frame, denoting the direction of x-axis of local POINT_MASS reference marker from QG. |
VX |
Specifies the initial translational velocity of the POINT_MASS along the Global x-axis. |
VY |
Specifies the initial translational velocity of the POINT_MASS along the Global y-axis. |
VZ |
Specifies the initial translational velocity of the POINT_MASS along the Global x-axis. |
FUNCTION |
The list of parameters that are passed from the data file to the user defined subroutine. This attribute is common to all types of user subroutines and scripts. The name of the user subroutine depends on the type of the element. |
ROUTINE
|
Specifies an alternative name for the user subroutine.
|
INTERPRETER |
Specifies the interpreted language that the user script is written in. Valid choices are MATLAB or PYTHON. |
SCRIPT |
Specifies the path and name of the user written script that contains the routine. |
CommentsSee Body_Point |
|
ExampleThe below example demonstrates the specification of a POINT MASS.POINT_MASS(2,LABEL="Point Mass Body 0",MASS=1,CM=21,VY=2445) |
See Also:
The following MDL Model statements:
*SetPointmassBody() - asymmetric point mass body pair
*SetPointmassBody() - single point mass body
*SetPointmassBody() - symmetric point mass body pair
*SetPointmassBodyIC() - all point mass bodies in a system
*SetPointmassBodyIC() - point mass body pair
*SetPointmassBodyIC() - single point mass body
*SetPointmassBodyICFlag() - all point mass bodies in a system