NXM Help SYSMOD
Summary: Covers spatial coordinate systems and reference frames.
The systems modeling facilities in NeXtMidas are designed to manipulate data describing objects moving in 3-dimensional space and the propagation of electromagnetic energy. Although the design requirements are quite focused, the tools developed to support these functions are generally applicable to a variety of problems. These tools include:
- Type 3000/5000 record oriented files
- Mechanisms for defining or manipulating absolute or relative event times
- Coordinate system transformations
- General arithmetic operations on 3 element data items (x,y,z)
The basis for mathematical operations in the systems modeling package (SMP) is the vector data atom. Typically, signal processing primitives are coded to interpret either scalar (real) or complex data atoms. Spatial quantities, when expressed as 3 component atoms, are call vector atoms. The SMP also makes use of the matrix (3x3) atom and the transmatrix (4x4) atoms.
There are a number of operations that can be performed on or with vector atoms:
- Scaling of magnitude
- Rotation of direction
- Translation of origin
- Addition/Subtraction of two vectors
- Scalar product (aka inner/dot product) of two vectors
- Vector product (aka outer/cross product) of two vectors
Conceptually, all of these operations are independent of the vector's expressed representation. However, to obtain meaningful numeric results from operations involving two or more vectors, they must be expressed in the same coordinate system, engineering units, and frame of reference. While the choice of representation is entirely arbitrary, sometimes the convenience of a particular form is so overwhelming compared to others as to make it almost (but never quite) mandatory.
For a particular application, different elements of a problem may be expressed more conveniently in different representations. It is this fact that motivates one to have the capability to convert easily among different representations.
NeXtMidas recognizes two types of ENGINEERING UNITS:
- ENGLISH
- METRIC
The specific units are associated with a numeric key as defined by the Util.unitsName() routine. However, the angular components of a vector are ALWAYS in units of degrees. The units keys are for the distance components of the vector only.
NeXtMidas recognizes four types of COORDINATE SYSTEMS:
- Cartesian (x,y,z)
- Spherical (R,theta,phi)
- Cylindrical (R,theta,h)
- Geodetic (alt,lat,lon)
NeXtMidas recognizes five standard types of REFERENCE FRAMES:
- NULL - not applicable to problem
- ECR - Earth Centered Rotational (X&Y in equatorial plane at 0 and 90
- degrees East respectively, and Z north along rotational axis)
- ECI - Earth Centered Inertial (X towards vernal equinox, Y 90 degrees
- east of X, and Z north along rotational axis)
- TOPOCENT - X due South in local horizon, Y east in horizon plane, and
- Z perpendicular (up) to local horizon
- TOP - X due East in local horizon, Y north in horizon plane, and
- Z perpendicular (up) to local horizon. This system is then
- augmented by a specified azimuth rotation, elevation angle,
- and roll angle.
If the reference name does not match one of these recognized names, it is assumed to be a CUSTOM frame of reference frame as defined by a special type 5000 file of that name with the appropriate transformation matrices.
The TRANSMATRIX is defined as follows
A = a11 a12 a13 b1 s1 a21 a22 a23 b2 s2 a31 a32 a33 b2 s2
where the columns are contiguous in memory. This leads to a matrix transformation of the form y = Ax.
y1 = a11*x1 + a12*x2 + a13*x3 + b1 y2 = a21*x1 + a22*x2 + a23*x3 + b2 y3 = a31*x1 + a32*x2 + a33*x3 + b3
The S term is currently unused. It is for a scaling factor.