cspice_dvcrss |
|||

## AbstractCSPICE_DVCRSS calculates the cross product of the position components of two state vectors and the time derivative of this cross product. For important details concerning this module's function, please refer to the CSPICE routine dvcrss_c. ## I/OGiven: s1 a double precision 6-vector defining a state; s1 = (r1, dr1 ). -- dt s2 a second state vector; s2 = (r2, dr2 ). -- dt An implicit assumption exists that both states lie in the same reference frame. If this is not the case, the numerical result has no meaning. the call: ## ExamplesAny numerical results shown for this example may differ between platforms as the results depend on the SPICE kernels used as input and the machine specific arithmetic implementation. One can construct non-inertial coordinate frames from apparent positions of objects or defined directions. However, if one wants to convert states in this non-inertial frame to states in an inertial reference frame, the derivatives of the axes of the non-inertial frame are required. Define a reference frame with the apparent direction of the sun as seen from earth as the primary axis (x). Use the earth pole vector to define with the primary axis a primary plane of the frame. ;; ;; Load SPK, PCK, and LSK kernels, use a meta kernel for convenience. ;; cspice_furnsh, 'standard.tm' ;; ;; Define the earth body-fixed pole vector (z). The pole ;; has no velocity in the earth fixed frame "IAU_EARTH." ;; z_earth = [ 0.D, 0, 1, 0, 0, 0 ]; ;; ;; Calculate the state transformation between IAU_EARTH and J2000 ;; at an arbitrary epoch. ;; utc = 'Jan 1, 2009' cspice_str2et, utc, et cspice_sxform, 'IAU_EARTH', 'J2000', et, trans ;; ;; Transform the earth pole vector from the IAU_EARTH frame to J2000. ;; z_j2000 = transpose(trans) # z_earth ;; ;; Calculate the apparent state of the sun from earth at the epoch ;; 'et' in the J2000 frame. ;; target = 'Sun' observer = 'Earth' cspice_spkezr, target, et, 'J2000', 'LT+S', observer, state, ltime ;; ;; Define the z axis of the new frame as the cross product between ;; the apparent direction of the sun and the earth pole. 'z_new' cross ;; 'x_new' defines the y axis of the derived frame. ;; cspice_dvhat, state, x_new ;; ;; Calculate the z direction in the new reference frame then ;; calculate the normal of the vector and derivative of ;; the normal to determine the z unit vector. ;; ## ParticularsIn this discussion, the notation V1 x V2 indicates the cross product of vectors V1 and V2. With s1 = (r1,v1) and s2 = (r2,v2) then d sout = [ r1 x r2 , -- (r1 x r2) ] dt ## Required ReadingICY.REQ ## Version-Icy Version 1.0.1, 09-MAY-2016, EDW (JPL) Eliminated typo in example code; no change to functionality. -Icy Version 1.0.0, 20-APR-2010, EDW (JPL) ## Index_EntriesCompute the derivative of a cross product |

Wed Apr 5 17:58:00 2017