KPL/FK New Horizons Spacecraft Frames Kernel =============================================================================== This frame kernel contains the New Horizons spacecraft and science instruments. Version and Date ------------------------------------------------------------------------------- The TEXT_KERNEL_ID stores version information of loaded project text kernels. Each entry associated with the keyword is a string that consists of four parts: the kernel name, version, entry date, and type. For example, the ISS I-kernel might have an entry as follows: TEXT_KERNEL_ID += 'NEWHORIZONS V0.0.5 15-JANUARY-2007 IK' | | | | | | | | KERNEL NAME <-------+ | | | | | V VERSION <-------+ | KERNEL TYPE | V ENTRY DATE New Horizons Frame Kernel Version: \begindata TEXT_KERNEL_ID += 'NEWHORIZONS_FRAMES V0.0.5 15-JANUARY-2007 FK' NAIF_BODY_NAME += ( 'NEW_HORIZONS' ) NAIF_BODY_CODE += ( -98 ) NAIF_BODY_NAME += ( 'NH' ) NAIF_BODY_CODE += ( -98 ) NAIF_BODY_NAME += ( 'NH_SPACECRAFT' ) NAIF_BODY_CODE += ( -98 ) NAIF_BODY_NAME += ( 'NH_ASTR' ) NAIF_BODY_CODE += ( -98 ) \begintext Version 0.0.5 -- January 15, 2007 -- Lillian Nguyen, JHU/APL -- Draft Version. NOT YET APPROVED BY ALL INSTRUMENT TEAMS. -- Star tracker frame inserted between spacecraft frame and nominal instrument frames to reflect a spacecraft frame change due to a star tracker calibration. -- LORRI frame definition changed according to instrument team. -- Ralph frames defined for LEISA and for each MVIC focal plane array. -- Alice Airglow frame updated with in-flight values. Version 0.0.4 -- October 4, 2006 -- Lillian Nguyen, JHU/APL -- Draft Version. NOT YET APPROVED BY INSTRUMENT TEAMS. -- Removed 3-letter frame names, updated frame tree. -- Corrected the PEPSSI frame definition. Version 0.0.3 -- April 4, 2006 -- Lillian Nguyen, JHU/APL -- Draft Version. NOT YET APPROVED BY INSTRUMENT TEAMS. -- Alice airglow and SOC frames redefined according to orientation diagrams received from instrument team. -- SWAP and PEPSSI frames added. -- Ralph frames modified according to focal plane definitions received from instrument team. Version 0.0.2 -- January 25, 2006 -- Lillian Nguyen, JHU/APL -- Draft Version. NOT YET APPROVED BY INSTRUMENT TEAMS. -- Includes the addition of frames for REX and SDC. -- LORRI frame redefined according to orientation diagram received from instrument team. Version 0.0.1 -- November 16, 2005 -- Lillian Nguyen, JHU/APL -- Draft Version. NOT YET APPROVED BY INSTRUMENT TEAMS. Version 0.0.0 -- August 13, 2005 -- Brian Carcich -- Testing Kernel. References ------------------------------------------------------------------------------- 1. ``C-kernel Required Reading'' 2. ``Kernel Pool Required Reading'' 3. ``Frames Required Reading'' 4. nh_v000.tf (placeholder New Horizon SPICE frames kernel), provided by Brian Carcich and dated 2005-08-13. 5. New Horizons Spacecraft Requirements Document, 7399-9004 6. New Horizons Spacecraft Configuration Drawings, 7399-0002_-_10-28-03.pdf (\\Aplfsfrontier\project\pluto) 7. New Horizons Spacecraft to PERSI/RALPH Interface Control Document, Rev B, 7399-9201. 8. New Horizons System Alignment Report, 7399-9189, dated 12 December, 2005. 9. Instrument Vectors v2.xls (containing an update to Table 12 of [8]), received in an e-mail from John Troll dated 1/16/2006; and PEPSSI baffle vector, received in an e-mail from John Troll on 2/8/2006. 10. ``Rotation Required Reading'' 11. Alice Instrument Specification, 05310.02-ISPEC-01. 12. Spacecraft to Alice Interface Control Document (ICD), 7399-9046. 13. Ralph Instrument Specification, Rev. A ECR SWRI 5310-001. 14. LOng-Range Reconnaissance Imager (LORRI) User's Manual, 7400-9601, dated Jan. 10, 2006. 15. LORRI_orientation_1-9-06, received on 1/23/2006 by e-mail from Hal Weaver along with a description of the LORRI frame relative to the spacecraft frame. Also a phone conversation with Hal clarifying the diagrams in the document. 16. E-mail exchange with David James (Laboratory for Atmospheric and Space Physics at the University of Colorado (LASP)), Jan. 26, 2006 - Feb. 1, 2006. 17. P-ALICE_Orientation_on_SC, received from Joel Parker in an e-mail dated Jan. 25, 2006; discussions with Dave Slater on Mar. 16 and 23, 2006, and e-mail exchange with Dave Slater on Mar. 28-29, 2006 regarding the diagram. 18. Pluto Energetic Particle Spectrometer Science Investigation (PEPSSI) Interface Control Document, 7399-9049, Rev. C. 19. E-mail dated Feb. 8, 2006 from John Troll containing measured PEPSSI baffle vector. 20. New Horizons Spacecraft to SWAP Interface Control Document, 7399-9047 Rev. A. 21. New Horizons Critical Design Review Science Payload slides. 22. Document titled "RalphArrayPositions.doc", received from Cathy Olkin by e-mail, Mar. 23, 2006, and e-mail exchange concerning the document, Apr. 3-4, 2006. 23. Ralph Instrument Specification, Rev. A ECR SWRI 5310-001. 24. Discussions with Scott Turner regarding his analysis of PEPSSI data containing evidence of sunlight. 25. PEPSSI mounting bracket mechanical drawing, JHU/APL document 7399-0151. 26. E-mail from Scott Turner describing the PEPSSI mounting specification. 27. E-mail discussions among Gabe Rogers, Scott Turner, Hal Weaver, and Howard Taylor concerning instrument boresight changes caused by a star tracker calibration. 28. "AST1_SPIN_CAL.dat", recieved from Gabe Rogers on 12/4/2006. 29. Discussions with Howard Taylor regarding LORRI instrument frame definition and LORRI keywords, 12/21/2006. 30. E-mail exchange with Cathy Olkin on MVIC coordinate system and LEISA size. 31. "RalphBoresights03.doc", received from Allen Lunsford 2/2/2007. 32. E-mail from Andrew Steffl regarding Alice pointing offsets, received on 2/13/2007. Contact Information ------------------------------------------------------------------------------- Lillian Nguyen, JHU/APL, (443)-778-5477, Lillian.Nguyen@jhuapl.edu Implementation Notes ------------------------------------------------------------------------------- This file is used by the SPICE system as follows: programs that make use of this instrument kernel must ``load'' the kernel, normally during program initialization. Loading the kernel associates data items with their names in a data structure called the ``kernel pool''. The SPICELIB routine FURNSH, CSPICE routine furnsh_c, and IDL routine cspice_furnsh load SPICE kernels as shown below: FORTRAN (SPICELIB) CALL FURNSH ( 'kernel_name' ) C (CSPICE) furnsh_c ( "kernel_name" ) ICY (IDL) cspice_furnsh, 'kernel_name' In order for a program or subroutine to extract data from the pool, the SPICELIB routines GDPOOL, GCPOOL, and GIPOOL are used. See [2] for details. This file was created and may be updated with a text editor or word processor. New Horizons Frames ------------------------------------------------------------------------------- The following New Horizons frames are defined in this kernel file: Frame Name Relative To Type NAIF ID ======================= =================== ======= ======= Spacecraft frames: ----------------------------------- NH_SPACECRAFT J2000 CK -98000 NH_ASTR NH_SPACECRAFT FIXED -98001 Alice Frames (-981xx): ----------------------------------- NH_ALICE_SOC NH_ASTR FIXED -98100 NH_ALICE_AIRGLOW NH_SPACECRAFT FIXED -98101 RALPH Frames (-982xx): ----------------------------------- NH_RALPH_MVIC NH_SPACECRAFT FIXED -98200 NH_RALPH_LEISA NH_SPACECRAFT FIXED -98201 NH_RALPH_SIA NH_ASTR FIXED -98202 NH_RALPH_MVIC_FT NH_SPACECRAFT FIXED -98203 NH_RALPH_MVIC_PAN2 NH_SPACECRAFT FIXED -98204 NH_RALPH_MVIC_PAN1 NH_SPACECRAFT FIXED -98205 NH_RALPH_MVIC_RED NH_SPACECRAFT FIXED -98206 NH_RALPH_MVIC_BLUE NH_SPACECRAFT FIXED -98207 NH_RALPH_MVIC_METHANE NH_SPACECRAFT FIXED -98208 NH_RALPH_MVIC_NIR NH_SPACECRAFT FIXED -98209 LORRI Frames (-983xx): ----------------------------------- NH_LORRI NH_ASTR FIXED -98300 NH_LORRI_1X1 NH_LORRI FIXED -98301 NH_LORRI_4X4 NH_LORRI FIXED -98302 PEPSSI Frames (-984xx): ----------------------------------- NH_PEPSSI NH_ASTR FIXED -98400 REX Frames (-985xx): ----------------------------------- NH_REX NH_ASTR FIXED -98500 SWAP Frames (-986xx): ----------------------------------- NH_SWAP NH_ASTR FIXED -98600 SDC Frames (-987xx): ----------------------------------- NH_SDC NH_ASTR FIXED -98700 New Horizons Frames Hierarchy ------------------------------------------------------------------------------- The diagram below shows the New Horizons frames hierarchy: 'J2000' INERTIAL | |<--- ck | 'NH_SPACECRAFT' | 'NH_ASTR' | | | 'NH_ALICE_SOC' | | 'NH_ALICE_AIRGLOW' | | 'NH_RALPH_MVIC' | | 'NH_RALPH_LEISA' | | | 'NH_RALPH_SIA' | | 'NH_RALPH_MVIC_FT' | | 'NH_RALPH_MVIC_PAN2' | | 'NH_RALPH_MVIC_PAN1' | | 'NH_RALPH_MVIC_RED' | | 'NH_RALPH_MVIC_BLUE' | | 'NH_RALPH_MVIC_METHANE' | | 'NH_RALPH_MVIC_NIR' | 'NH_LORRI' | | | 'NH_LORRI_1X1' | | | 'NH_LORRI_4X4' | 'NH_PEPSSI' | 'NH_REX' | 'NH_SWAP' | 'NH_SDC' Spacecraft Frame ------------------------------------------------------------------------------- From [5]: (Note: The figures referenced below can not be reproduced here. There is a diagram below that basically illustrates what is contained there.) ``Figure 3.1.1-1 shows the New Horizons observatory and its coordinate system. This coordinate system shall be the only coordinate system used for all observatory-level hardware and software development. Nominal thrust direction for an Atlas V or Delta IV launch is in the +Y direction. Positive observatory roll is defined as a right handed rotation about the +X axis, positive pitch is defined a right handed rotation about the +Z axis and positive yaw is defined as a right handed rotation about the +Y axis. The origin of the coordinate system is located at the center of the bottom of the observatory adapter ring.'' +X view: -------- o /|\ / | \ / | \ / | \ / | \ / | \ ___________________/______|______\__________________ `-. HGA(REX) ,-' `-. ,-' `-. ,-' __ `-.____________________________,-' / / PEPPSI __________/_\________________________/_\_____|___| PERSI .-| | | |______ Alice | | | RTG | | || '-| | .-*-. | |_____|| SWAP | | / \ | | || |----| | \ / | | || PERSI | | | "-.-" | | Ralph |___ | | | | | |________________|_______________|________________| | +X (out of page) /__<------o_________\ +Zsc | adapter ring | | V -Ysc +Y view: -------- ______ ------ || SWAP ---- _|__|______ __..---..__ | | \ _`-' ``-. HGA(REX) PEPPSI | ---- _' `-_ `-. | .' `-_ `. .-| , `-_ `. LORRI : | . `-_ `. : | / `-_ \ '-|. `-_ . _______ _______ |' .-*-. `-_ ||+|+|+|+| |+|+|+|+| | / \ `|--`-------------------| | ! o-----> +X | | | | \ | / _,|--.-------------------| |. "-|-" _,- ||+|+|+|+| |+|+|+|+| |' | _,- ' ------- ------- | ' V _,- / RTG (Radioisotope | ` +Z _,- . Thermoelectric | ` _,- - Generator) | `. _,- .' | '. _,- _.-' |__________',-__ __,,,'' | | '' --- '' | | `-----' PERSI (Alice above, Ralph below) Since the S/C bus attitude with respect to an inertial frame is provided by a C-kernel (see [1] for more information), this frame is defined as a CK-based frame. \begindata FRAME_NH_SPACECRAFT = -98000 FRAME_-98000_NAME = 'NH_SPACECRAFT' FRAME_-98000_CLASS = 3 FRAME_-98000_CLASS_ID = -98000 FRAME_-98000_CENTER = -98 CK_-98000_SCLK = -98 CK_-98000_SPK = -98 \begintext ASTR (autonomous star trackers) Frame ------------------------------------------------------------------------------- From [27], the definition of the spacecraft body frame changed after launch due to a calibration in the ASTR (star tracker) alignments to the principal axes. The star tracker boresight needed to be rotated relative to the original orientation in John Trollšs pre-flight calibration report in order to match the thruster firing directions with the spin axis of the spacecraft (i.e., to the principal moment of inertia). In order to rotate all of the instrument boresights by the same amount, we introduce a frame taking vectors from the ASTR frame to the spacecraft body frame. The nominal instrument frames will be linked to the ASTR frame rather than to the spacecraft frame. The ASTR to spacecraft body matrix is given [28] by: [ 0.99998698852861 0.00510125214304 0.00000025156926 ] DCM = [-0.00510125214304 0.99998698366466 0.00009862975258 ] [ 0.00000025156926 -0.00009862975258 0.99999999513605 ] \begindata FRAME_NH_ASTR = -98001 FRAME_-98001_NAME = 'NH_ASTR' FRAME_-98001_CLASS = 4 FRAME_-98001_CLASS_ID = -98001 FRAME_-98001_CENTER = -98 TKFRAME_-98001_SPEC = 'MATRIX' TKFRAME_-98001_RELATIVE = 'NH_SPACECRAFT' TKFRAME_-98001_MATRIX = ( 0.99998698852861, -0.00510125214304, 0.00000025156926, 0.00510125214304, 0.99998698366466, -0.00009862975258, 0.00000025156926, 0.00009862975258, 0.99999999513605) \begintext Alice Frames ------------------------------------------------------------------------------- Solar Occultation Channel (SOC) Frame Definition The SOC frame is defined by the instrument team [17] such that the +Y axis in the instrument frame is the boresight and the X and Z axes are close to the spacecraft X and Z axes, respectively. From [12], the nominal SOC boresight is a line in the spacecraft YZ plane right-hand rotated by 2 degrees around the spacecraft X axis from the REX boresight (nominally the Y axis). We are given the alignment for the SOC boresight in [9] and will use that measured vector to determine the frame. Z ^ sc | | SOC boresight | _.- (+Y in the instrument frame) | _.-' | _.-' o |_.-' 2.0 o--------------> X Y sc sc The diagram below shows the projection onto the sky of the Alice entrance slit through the Alice optics for the SOC aperture. The SOC field of view is the square opening at the end of the Alice slit and is 2.0 degrees x 2.0 degrees. Projection of Alice slit on the sky through the SOC aperture Spacecraft Axes ___ _ ^ | | ^ +Z | | | | sc | | | | | | | | Airglow | | | | FOV | | | x---------> | | | +Y (in) +X | | | sc sc | | | | --- |x| <---Alice optical | ^ o | | boresight | | 2.0 | | (+Y ) | ___ | ____| |____ sc | ^ | | | | | | | | | SOC | _v_ | _ | /____ SOC FOV | FOV | | | \ Center | | | | _v_ _v_ |___________| <------------------- wavelength From [9], the measured SOC boresight vector (labeled 'SOC FOV Center' in the diagram above)in spacecraft coordinates is: [ -0.0011506 ] Alice SOC +Y Vector (boresight) = [ 0.9993305 ] [ 0.0365690 ] The instrument +X vector is defined to be the spacecraft +X axis, so [ 1.0 ] Alice SOC +X Vector = [ 0.0 ] [ 0.0 ] The instrument +Z vector is determined by taking the cross product X x Y: [ 0.0 ] Alice SOC +Z Vector = [ -0.03656902157615599 ] [ 0.99933112963670012 ] And we use that to adjust the +X vector to form an orthogonal frame: [ 0.99999933805963592 ] Alice SOC +X Vector = Y x Z = [ 0.00114983036743085 ] [ 0.00004207631511568 ] Using these three vectors, we define the rotation that takes vectors from the instrument frame to the spacecraft frame as [ ] [ 0.99999933805963592 -0.0011506 0.0 ] [ ROT ] = [ 0.00114983036743085 0.9993305 -0.03656902157615599 ] [ ] [ 0.00004207631511568 0.0365690 0.99933112963670012 ] \begindata FRAME_NH_ALICE_SOC = -98100 FRAME_-98100_NAME = 'NH_ALICE_SOC' FRAME_-98100_CLASS = 4 FRAME_-98100_CLASS_ID = -98100 FRAME_-98100_CENTER = -98 TKFRAME_-98100_SPEC = 'MATRIX' TKFRAME_-98100_RELATIVE = 'NH_ASTR' TKFRAME_-98100_MATRIX = ( 0.99999933805963592, 0.00114983036743085, 0.00004207631511568, -0.0011506, 0.9993305, 0.0365690, 0.0, -0.03656902157615599, 0.99933112963670012 ) \begintext Airglow Channel Frame Definition The airglow frame is defined [17] such that -X axis in the instrument frame is the boresight, and +Y and +Z axes in the instrument frame are close to the spacecraft +Y and +Z axes, respectively. The diagram below shows the projection of the Alice slit onto the sky through the Alice optics for the airglow aperture. The spacecraft axes are shown to the right of the slit diagram. The airglow boresight is centered in the 6.0 degree long slit. Its field of view is rotated +2.0 degrees with respect to the spacecraft +X axis due to the 2.0 degree instrument tip to center the +Y axis (the REX antenna boresight) in the center of the SOC field of view [12, 17]. Projection of Alice slit on the Spacecraft Axes sky through the Airglow aperture | o/ +Z ___ _ |2.0/ sc ^ | | | / | | | | / | | | |/ | | | o - - - - - Airglow | | | +X (out) `-._ 2.0 deg FOV | | | sc `-._ | | | ` +Y | | | sc | | | | |+| <---Airglow Airglow instrument axes | | | boresight are rotated +2.0 degrees | | | about the spacecraft +X | ___ ____| |____ axis. | ^ | | | | | | Instrument Axes | SOC | | | | FOV | | | ^ +Z | | | | | inst _v_ _v_ |___________| | | -------------------> wavelength o-------> +Y +X (out) inst inst Note that the following calculations use nominal pre-launch calibration values. These calculations remain here for reference, but have been replaced with in-flight calibration values, which are described below the nominal frame definition. We are given in [9] the measured boresight vector in spacecraft coordinates: Airglow boresight = -X = [-0.9999836 0.0011311 0.0056122] inst We must calculate the instrument Y and Z axes in spacecraft coordinates in order to define a rotation matrix, R, which takes vectors from the airglow instrument frame to vectors in the spacecraft frame. To calculate the instrument Y axis, we will rotate the spacecraft Y axis by +2.0 degrees about the spacecraft +X axis and use the projection of the rotated Y axis onto the plane perpendicular to the measured boresight as the instrument Y axis. The instrument Z axis is then determined using the cross product. Note that this calculation assumes there is no misalignment in the plane perpendicular to the boresight (that there is no twist in the misalignment). The rotation of the spacecraft Y axis is shown here: +Z | SC | | _. +Y | _.-' o rotated | _.-' 2 o'------------ +X (out) +Y SC SC The rotated Y axis in spacecraft coordinates is +Y = [ 0.0 cos( 2.0 deg ) sin( 2.0 deg ) ] rotated We now calculate the projection of the rotated Y axis onto the plane perpendicular to the measured boresight to get the instrument Y axis: -X (Boresight) ^ inst | | / +Y | / rotated | / | / |/ o---------> +Z (out) +Y inst inst Since the boresight vector is unit length, using the dot product and vector addition, we have +Y = +Y - Boresight * dot(+Y , Boresight) inst rotated rotated The SPICE routine VPERP does this calculation for us, yielding +Y = [ 0.001326253357475 0.999390205835991 0.034892084075427 ] inst The instrument Z axis is determined using the cross product: +Z = +X x +Y inst inst inst = [ 0.005569311419949 -0.034898955455451 0.999375327731491 ] The rotation matrix R taking vectors in the spacecraft frame to vectors in the instrument frame is then [ ] [ 0.9999836 0.001326253357475 0.005569311419949 ] [ R ] = [ -0.0011311 0.999390205835991 -0.034898955455451 ] [ ] [ -0.0056122 0.034892084075427 0.999375327731491 ] This nominal frame definition is shown below. It remains here for reference only and will not be loaded into the SPICE kernel pool. FRAME_NH_ALICE_AIRGLOW = -98101 FRAME_-98101_NAME = 'NH_ALICE_AIRGLOW' FRAME_-98101_CLASS = 4 FRAME_-98101_CLASS_ID = -98101 FRAME_-98101_CENTER = -98 TKFRAME_-98101_SPEC = 'MATRIX' TKFRAME_-98101_RELATIVE = 'NH_ASTR' TKFRAME_-98101_MATRIX = ( 0.9999836, -0.0011311, -0.0056122, 0.001326253357475, 0.999390205835991, 0.034892084075427, 0.005569311419949, -0.034898955455451, 0.999375327731491) In-flight values for pointing offsets are described in [32] as: "The error bars are the standard deviation of the residuals. To convert from the s/c coordinate system to the Alice instrument coordinate system (the boresight is defined to be [-1,0,0] in both coordinate systems), perform the following rotations (in degrees): Rotation about s/c X -1.7174036 +/- 0.14135753 Rotation about new Z +0.36871090 +/- 0.013300878 Rotation about new Y -0.31363048 +/- 0.013886115 Applying the inverse rotations, we arrive at the Alice boresight in spacecraft coordinates: [-0.99996431, 0.0064351747, 0.0054737439] The 6 degree entrance slit is imaged onto rows 6-25 (inclusive). Therefore the center of the slit should fall exactly on the boundary between rows 15 and 16. However, I believe it is preferable that when the Alice boresight aims toward a point source, the spectrum fall onto a single row (or as close to this as possible). Therefore, I have added an additional rotation of +0.10 degrees (1/3 of one 0.3 degree detector row) about the Y axis to put all the flux into row 16. In this case the Alice boresight in s/c coordinates is: [-0.99997234, 0.0064351747, 0.0037284694] Rotation about new Y -0.21363048 +/- 0.013886115 " Using the SPICE subroutine ROTMAT, the three rotations described above are calculated, leading to the following transformation, which takes vectors in the instrument frame to vectors in the spacecraft frame: [ ] [ 0.999972343138248 0.006543983421023 0.003534011826058 ] [ R ] = [ -0.006435174777151 0.999530106231987 -0.029969238586582 ] [ ] [ -0.003728469416376 0.029945667747729 0.999544574043076 ] \begindata FRAME_NH_ALICE_AIRGLOW = -98101 FRAME_-98101_NAME = 'NH_ALICE_AIRGLOW' FRAME_-98101_CLASS = 4 FRAME_-98101_CLASS_ID = -98101 FRAME_-98101_CENTER = -98 TKFRAME_-98101_SPEC = 'MATRIX' TKFRAME_-98101_RELATIVE = 'NH_SPACECRAFT' TKFRAME_-98101_MATRIX = ( 0.999972343138248, -0.006435174777151, -0.003728469416376, 0.006543983421023, 0.999530106231987, 0.029945667747729, 0.003534011826058, -0.029969238586582, 0.999544574043076) \begintext RALPH Frames ------------------------------------------------------------------------------- The RALPH instrument consists of Linear Etalon Imaging Spectral Array (LEISA) and Multispectral Visible Imaging Camera (MVIC). RALPH also has a Solar Illumination Aperture (SIA). RALPH is mounted on the +Z side of the New Horizons spacecraft. Multispectral Visible Imaging Camera (MVIC) Frames Definition MVIC obtains science imaging data using frame transfer data acquisition and uses optical filters to provide spectral band discrimination in the blue, red, near infrared (NIR), methane, and two panchromatic bands [23]. From [22], the instrument boresight is aligned with the center of the frame transfer array. A summary of the relative positions of the individual arrays is presented below, with detailed calculations following. To convert the numbers in Table 1 from microns to microradians use the conversion factor of 1.5208 microradian/micron. From [22] Table 1: The offset in microns of the individual focal plane arrays in Ralph ------------------------------------------------------------------- Offset of the array Offset of the array from the instrument from the instrument boresight in the MVIC boresight in the MVIC Array row direction (microns) column direction (microns) ----- --------------------- --------------------- Frame Transfer 0.0 0.0 Pan 2 2041.0 0.0 Pan 1 3354.0 0.0 Red 4693.0 0.0 Blue 5941.0 0.0 Methane 7280.0 0.0 NIR 8632.0 0.0 LEISA -218.0 3334.0 From [22] Table 2 (LEISA from [30]): Size in pixels of the MVIC and LEISA arrays ------------------------------------------------------------------- Array Rows Columns ----- ---- ------- Frame Transfer 128 5024 Pan 2 32 5024 Pan 1 32 5024 Red 32 5024 Blue 32 5024 Methane 32 5024 NIR 32 5024 LEISA 256 256 The detail of the calculations used in Table 1 for the MVIC arrays [22]: Pan 2: (221 - 64) * 13 microns/pixel = 2041 microns Pan 1: (322 - 64) * 13 microns/pixel = 3354 microns Red: (425 - 64) * 13 microns/pixel = 4693 microns Blue: (521 - 64) * 13 microns/pixel = 5941 microns Methane: (624 - 64) * 13 microns/pixel = 7280 microns NIR: (728 - 64) * 13 microns/pixel = 8632 microns The first number in the calculations above is the MVIC row at which the filter is centered. Subtracted from that number is 64 in all cases, which is the MVIC row of the center of the frame transfer array. The MVIC pixels are 13 microns wide with a single pixel FOV of 19.8 microradians [22]. The detail of the calculation used in Table 1 for LEISA [22]: The center of the MVIC frame transfer (FT) array corresponds to column 44.65 and row 133.45 of LEISA. The distance from the instrument boresight (center of the FT array) to the center of the LEISA array is calculated here: In MVIC row direction (128 - 133.45)* 40 microns/pixel = -218 microns In MVIC col direction (128 - 44.65)* 40 microns/pixel = 3334 microns The LEISA scale is used here because this is the difference between two different LEISA pixel coordinates. The MVIC directions are used so that all offsets are presented in the same coordinate system. The LEISA pixels are 40 microns wide with a single pixel FOV of 61 microradians. NOTE: the following calculations use nominal alignment values and have been preceded by in-flight values. The following two frames remain in this kernel for reference only. Only the frames enclosed within the "\begindata \begintext" block are used by SPICE. The base instrument frame, NH_RALPH_MVIC, describes the nominal instrument misalignment (note that the definition of this frame has changed after in-flight calibration - see below). Because the RALPH coordinate system is the same as the spacecraft coordinate system [7], the rotation matrix that takes vectors represented in the nominal MVIC frame into the spacecraft frame is the identity. We will adjust the rotation to take into account the measured alignment provided in [9]. From [9], the measured MVIC boresight vector in spacecraft coordinates is: [ -0.9999688 ] MVIC Boresight Vector = -X = [ 0.0078090 ] [ -0.0011691 ] and the detector direction (+Z axis in the instrument frame) is measured to be: [ -0.0011761 ] MVIC Detector Direction = [ 0.0036511 ] [ 0.9999926 ] Taking the cross product of these two vectors gives us: [ 0.007813211258259 ] MVIC +Y Vector = Z x X = [ 0.999962844813125 ] [ -0.003641802174272 ] And we use that to adjust the Z vector to form an orthogonal frame: [ -0.001140617758206 ] MVIC +Z Vector = X x Y = [ 0.003650823069793 ] [ 0.999992685214268 ] Using these three vectors, we define the rotation that takes vectors from the instrument frame to the spacecraft frame as [ ] [ 0.9999688 0.007813211258259 -0.001140617758206 ] [ ROT ] = [ -0.0078090 0.999962844813125 0.003650823069793 ] [ ] [ 0.0011691 -0.003641802174272 0.999992685214268 ] FRAME_NH_RALPH_MVIC = -98200 FRAME_-98200_NAME = 'NH_RALPH_MVIC' FRAME_-98200_CLASS = 4 FRAME_-98200_CLASS_ID = -98200 FRAME_-98200_CENTER = -98 TKFRAME_-98200_SPEC = 'MATRIX' TKFRAME_-98200_RELATIVE = 'NH_ASTR' TKFRAME_-98200_MATRIX = ( 0.9999688, -0.0078090, 0.0011691, 0.007813211258259, 0.999962844813125, -0.003641802174272, -0.001140617758206, 0.003650823069793, 0.999992685214268 ) Since the instrument boresight is aligned with the center of the frame transfer array [22], the rotation matrix taking vectors in the frame transfer array frame to the base instrument frame is the identity: FRAME_NH_RALPH_MVIC_FT = -98203 FRAME_-98203_NAME = 'NH_RALPH_MVIC_FT' FRAME_-98203_CLASS = 4 FRAME_-98203_CLASS_ID = -98203 FRAME_-98203_CENTER = -98 TKFRAME_-98203_SPEC = 'MATRIX' TKFRAME_-98203_RELATIVE = 'NH_RALPH_MVIC' TKFRAME_-98203_MATRIX = ( 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0 ) The above nominal NH_RALPH_MVIC frame has been updated in version 0.0.5 of this kernel. The calculations above had erronously been done in single precision in earlier versions. Version 0.0.5 also connects NH_RALPH_MVIC to the NH_ASTR frame rather than the NH_SPACECRAFT frame to take into account the in-flight change to the star tracker alignment. Note that the NH_RALPH_MVIC and NH_RALPH_MVIC_FT frames defined above are in the text section of the kernel and will not be loaded into SPICE. They have been replaced by the frames defined below using in-flight measured values and remain in this kernel for reference only. The definitions below have been provided in [31]. [31] notes that the matrix values below contain an adjustment to correct a shift in values returned by SPICE. The MVIC and LEISA matrices may be updated in a future release once the cause of the shift is known. Note that the instrument reference frames are all defined with respect to the NH_SPACECRAFT frame. Basic boresight for the instrument \begindata FRAME_NH_RALPH_MVIC = -98200 FRAME_-98200_NAME = 'NH_RALPH_MVIC' FRAME_-98200_CLASS = 4 FRAME_-98200_CLASS_ID = -98200 FRAME_-98200_CENTER = -98 TKFRAME_-98200_SPEC = 'MATRIX' TKFRAME_-98200_RELATIVE = 'NH_SPACECRAFT' TKFRAME_-98200_MATRIX = ( 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0 ) \begintext MVIC Pan Frame Transfer Array \begindata FRAME_NH_RALPH_MVIC_FT = -98203 FRAME_-98203_NAME = 'NH_RALPH_MVIC_FT' FRAME_-98203_CLASS = 4 FRAME_-98203_CLASS_ID = -98203 FRAME_-98203_CENTER = -98 TKFRAME_-98203_SPEC = 'MATRIX' TKFRAME_-98203_RELATIVE = 'NH_SPACECRAFT' TKFRAME_-98203_MATRIX = ( 0.999915461106432, -0.012957863475922, 0.001301425571368, 0.012962551750366, 0.999908274152575, -0.003840453099600, -0.001188689962478, 0.003857294149614, 0.999990855106924 ) \begintext TDI Arrays \begindata FRAME_NH_RALPH_MVIC_NIR = -98209 FRAME_-98209_NAME = 'NH_RALPH_MVIC_NIR' FRAME_-98209_CLASS = 4 FRAME_-98209_CLASS_ID = -98209 FRAME_-98209_CENTER = -98 TKFRAME_-98209_SPEC = 'MATRIX' TKFRAME_-98209_RELATIVE = 'NH_SPACECRAFT' TKFRAME_-98209_MATRIX = ( 0.999655573953295, -0.026218528636659, 0.001363247322305, 0.026223117930647, 0.999649201897941, -0.003626292333940, -0.001204840860741, 0.003661087780433, 0.999991572287813 ) FRAME_NH_RALPH_MVIC_METHANE = -98208 FRAME_-98208_NAME = 'NH_RALPH_MVIC_METHANE' FRAME_-98208_CLASS = 4 FRAME_-98208_CLASS_ID = -98208 FRAME_-98208_CENTER = -98 TKFRAME_-98208_SPEC = 'MATRIX' TKFRAME_-98208_RELATIVE = 'NH_SPACECRAFT' TKFRAME_-98208_MATRIX = ( 0.999706214601813, -0.024211181536640, 0.001355962837282, 0.024215758201663, 0.999699832809316, -0.003629168417489, -0.001204837178782, 0.003661233729783, 0.999991571758176 ) FRAME_NH_RALPH_MVIC_BLUE = -98207 FRAME_-98207_NAME = 'NH_RALPH_MVIC_BLUE' FRAME_-98207_CLASS = 4 FRAME_-98207_CLASS_ID = -98207 FRAME_-98207_CENTER = -98 TKFRAME_-98207_SPEC = 'MATRIX' TKFRAME_-98207_RELATIVE = 'NH_SPACECRAFT' TKFRAME_-98207_MATRIX = ( 0.999795403077788, -0.020196202570963, 0.001341376615173, 0.020200753919525, 0.999789001887114, -0.003634876673948, -0.001204830694104, 0.003661525649188, 0.999991570697647 ) FRAME_NH_RALPH_MVIC_RED = -98206 FRAME_-98206_NAME = 'NH_RALPH_MVIC_RED' FRAME_-98206_CLASS = 4 FRAME_-98206_CLASS_ID = -98206 FRAME_-98206_CENTER = -98 TKFRAME_-98206_SPEC = 'MATRIX' TKFRAME_-98206_RELATIVE = 'NH_SPACECRAFT' TKFRAME_-98206_MATRIX = ( 0.999752824372622, -0.022203736816693, 0.001348672591773, 0.022208300833224, 0.999746432868338, -0.003632029868004, -0.001204833789898, 0.003661379686231, 0.999991571228120 ) FRAME_NH_RALPH_MVIC_PAN1 = -98205 FRAME_-98205_NAME = 'NH_RALPH_MVIC_PAN1' FRAME_-98205_CLASS = 4 FRAME_-98205_CLASS_ID = -98205 FRAME_-98205_CENTER = -98 TKFRAME_-98205_SPEC = 'MATRIX' TKFRAME_-98205_RELATIVE = 'NH_SPACECRAFT' TKFRAME_-98205_MATRIX = ( 0.999833950545631, -0.018188586893952, 0.001334074936899, 0.018193125555121, 0.999827539694002, -0.003637708823840, -0.001204827891411, 0.003661671618066, 0.999991570166760 ) FRAME_NH_RALPH_MVIC_PAN2 = -98204 FRAME_-98204_NAME = 'NH_RALPH_MVIC_PAN2' FRAME_-98204_CLASS = 4 FRAME_-98204_CLASS_ID = -98204 FRAME_-98204_CENTER = -98 TKFRAME_-98204_SPEC = 'MATRIX' TKFRAME_-98204_RELATIVE = 'NH_SPACECRAFT' TKFRAME_-98204_MATRIX = ( 0.999868466620725, -0.016180897880494, 0.001326767586392, 0.016185423834895, 0.999862046133615, -0.003640526306263, -0.001204825381830, 0.003661817592276, 0.999991569635460 ) \begintext Linear Etalon Imaging Spectral Array (LEISA) Frames Definition MVIC and LEISA share a common light collection telescope [13]. The LEISA frame is defined in [31] as LEISA Array \begindata FRAME_NH_RALPH_LEISA = -98201 FRAME_-98201_NAME = 'NH_RALPH_LEISA' FRAME_-98201_CLASS = 4 FRAME_-98201_CLASS_ID = -98201 FRAME_-98201_CENTER = -98 TKFRAME_-98201_SPEC = 'MATRIX' TKFRAME_-98201_RELATIVE = 'NH_SPACECRAFT' TKFRAME_-98201_MATRIX = ( 0.999833725668520, -0.018154907521815, 0.001873657185926, 0.018161563736818, 0.999817822153710, -0.003715956943165, -0.001743042311673, 0.003750674847578, 0.999990409103958 ) \begintext Solar Illumination Aperture (SIA) Frame Definition We define the SIA frame such that +Z axis in the instrument frame is the boresight and +X in the instrument frame is aligned to the spacecraft +X axis. Looking down the spacecraft X axis, we have Z ^ sc | | | | _.- SIA boresight vector (+Z ) | _.-' inst | _.-' o |_.-' 2.0 o--------------> X = X Y inst sc sc Plane X = 0 The rotation matrix that transforms vectors in the instrument frame to the spacecraft frame can be defined by the single rotation [ ] [ ] [ ROT ] = [ (90.0 - 2.0) ] [ ] [ ] X where [x] represents the rotation matrix of a given angle x about axis i. i \begindata FRAME_NH_RALPH_SIA = -98202 FRAME_-98202_NAME = 'NH_RALPH_SIA' FRAME_-98202_CLASS = 4 FRAME_-98202_CLASS_ID = -98202 FRAME_-98202_CENTER = -98 TKFRAME_-98202_SPEC = 'ANGLES' TKFRAME_-98202_RELATIVE = 'NH_ASTR' TKFRAME_-98202_ANGLES = ( 0.0, 88.0, 0.0 ) TKFRAME_-98202_AXES = ( 3 1 3 ) TKFRAME_-98202_UNITS = 'DEGREES' \begintext LOng Range Reconnaissance Imager (LORRI) Frames ------------------------------------------------------------------------------- The following diagrams are reproduced from [15]. When viewed by an observer looking out LORRI's boresight, the spacecraft axes on the sky will look like: Diagram 1 --------- Sky View Looking out from LORRI _________________________________ | | | | | ^ +Y | | | sc | | | | | | | | | | | <--------o | | +Z +X (out) | | sc sc | | | | | | | | | |_________________________________| The LORRI optics inverts images in both the Y and Z directions, so that the projection of these spacecraft axes onto the LORRI CCD will look like the following: (Note that we are looking INTO the LORRI telescope in the diagram below, whereas above we were looking outwards, hence the position of the +Z axis does not appear to have changed when in fact it has flipped). Diagram 2 --------- Looking in at the LORRI CCD _________________________________ | | Spacecraft Axes | | | | ^ +Y | | | sc increasing ^ | | | columns | | p | x-----> +Z | | p +X (in) | +X (in) sc | | +Z <---------x sc | sc | | sc | | | | | | | | | | | | | p | | | V +Y | | | sc | O_________________________________| ------------------------> [0,0]=[column, row] increasing rows p p Note that in Diagram 2, the axes are labeled Z and Y to clarify sc sc that although these are still spacecraft coordinates, they are the projections of the spacecraft axes from Diagram 1 onto the LORRI CCD, not the actual spacecraft axes. The actual spacecraft axes are depicted to the right of Diagram 2. The origin in the CCD view is at the bottom left, and the CCD storage area and serial register are to the left. The LORRI IDL display further inverts the image in Diagram 2 about the diagonal originating at [0,0]: Diagram 3 --------- LORRI IDL Display _________________________________ | | Spacecraft Axes | | | | ^ +Z | | | sc increasing ^ | | | rows | | p | o-----> +Y | | p +X (out) | +X (out) sc | | +Y <---------x sc | sc | | sc | | | | | | | | | | | | | p | | | V +Z | | | sc | O_________________________________| ------------------------> [0,0]=[column, row] increasing columns Also provided here are the same set of three diagrams using the LORRI instrument axes, X , Y , Z , rather than the spacecraft axes. L L L Diagram 1a ---------- Sky View Looking out from LORRI _________________________________ | | | | Spacecraft Axes | | | | ^ +Y | | | sc | | | | | <-----o | o---------> | +Z +X (out) | | Y | sc sc | | L | | | | | | | | V X | | L | |_________________________________| Diagram 2a ---------- Looking in at the LORRI CCD _________________________________ | | | p | | ^ X | | | L | increasing ^ | | | columns | | | | | | | | | | x---------> p | | | Y | | | L | | | | | | | | | | | | | O_________________________________| ------------------------> [0,0]=[column, row] increasing rows As in Diagram 2, the axes in Diagram 2a are the projections of the LORRI instrument axes through the optics onto the LORRI CCD. Diagram 3a --------- LORRI IDL Display _________________________________ | | | p | | ^ Y | | | L | increasing ^ | | | rows | | | | | | | | | | p o---------> p | | | Z (out) X | | | L L | | | | | | | | | | | | | O_________________________________| ------------------------> [0,0]=[column, row] increasing columns Taken from [29], we have the following coordinate system definition for the LORRI frame: The -Z axis in instrument coordinates is defined to be the boresight and is approximately aligned with the spacecraft -X axis. The Y axis in instrument coordinates is approximately aligned with the spacecraft -Z axis and is in the direction of increasing rows. The X axis in instrument coordinates is approximately aligned with the spacecraft -Y axis and is in the direction of increasing columns. Using the measured vectors from [9], we have: [ -0.9999955 ] LORRI Boresight Vector (-Z ) = [ 0.0005485 ] inst [ -0.0029601 ] and the detector direction (-Y axis in the instrument frame) in spacecraft coordinates is measured to be: [ -0.0029702 ] LORRI -Y Vector = [ 0.0069403 ] [ 0.9999715 ] Taking the cross product of these two vectors gives us: [ -0.000569028334549 ] LORRI +X Vector = Y x Z = [ -0.999975765451163 ] [ 0.006938639428225 ] And we use that to adjust the Y vector to form an orthogonal frame: [ 0.002956222326369 ] LORRI +Y Vector = Z x X = [ -0.006940292366278 ] [ -0.999971546140903 ] Using these three vectors, we define the rotation that takes vectors from the instrument frame to the spacecraft frame as [ ] [ -0.000569028334549 0.002956222326369 0.9999955 ] [ ROT ] = [ -0.999975765451163 -0.006940292366278 -0.0005485 ] [ ] [ 0.006938639428225 -0.999971546140903 0.0029601 ] \begindata FRAME_NH_LORRI = -98300 FRAME_-98300_NAME = 'NH_LORRI' FRAME_-98300_CLASS = 4 FRAME_-98300_CLASS_ID = -98300 FRAME_-98300_CENTER = -98 TKFRAME_-98300_SPEC = 'MATRIX' TKFRAME_-98300_RELATIVE = 'NH_ASTR' TKFRAME_-98300_MATRIX = ( -0.000569028334549, -0.999975765451163, 0.006938639428225, 0.002956222326369, -0.006940292366278, -0.999971546140903, 0.9999955, -0.0005485, 0.0029601 ) \begintext LORRI has two binning modes - 1x1 and 4x4. Separate frames are defined below for each of those modes. The frames are identical to the NH_LORRI frame, hence the identity rotation. \begindata FRAME_NH_LORRI_1X1 = -98301 FRAME_-98301_NAME = 'NH_LORRI_1X1' FRAME_-98301_CLASS = 4 FRAME_-98301_CLASS_ID = -98301 FRAME_-98301_CENTER = -98 TKFRAME_-98301_SPEC = 'MATRIX' TKFRAME_-98301_RELATIVE = 'NH_LORRI' TKFRAME_-98301_MATRIX = ( 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0 ) FRAME_NH_LORRI_4X4 = -98302 FRAME_-98302_NAME = 'NH_LORRI_4X4' FRAME_-98302_CLASS = 4 FRAME_-98302_CLASS_ID = -98302 FRAME_-98302_CENTER = -98 TKFRAME_-98302_SPEC = 'MATRIX' TKFRAME_-98302_RELATIVE = 'NH_LORRI' TKFRAME_-98302_MATRIX = ( 1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0 ) \begintext Pluto Energetic Particle Spectrometer Science Investigation (PEPSSI) Frames ------------------------------------------------------------------------------- From [18], PEPSSI is mounted on the spacecraft +Y panel in the -X/-Z corner of the spacecraft's top panel. It has been mounted on a bracket to provide a clear field of view. The PEPSSI coordinate system is defined in Figure A-4 of [18] such that the instrument Z axis is the normal vector to the baffle shielding the the instrument from the high gain antenna, the instrument Y axis is the instrument look direction, and the instrument X axis completes the right- handed frame. Three coarse reproductions of Figure A-4 are shown below. The coordinate system is displayed above each diagram. Figure A-5 of [18] shows the instrument mounted to its bracket. The mounting bracket is represented by the column of "B"s in the diagrams below): +Z -X +Z ^ inst ^ inst ^ inst | | | | | | x----> +X o----> +Y o----> +Y +Y (in) inst +Z (out) inst +X (out) inst inst inst __ inst | ``-. | `. ____________________ B _________|_ ' ____________ |____________________| B| `. \ B ______|____________| | | B| \ . B| |____| ^ | | B| | | B| | ^ | | | B| / ' B| | ^ | | | | B|_________ _,' / B| | | | baffle | | B | , B| | | baffle |________| | ,' B|_________| | baffle --> |__..-` B sensor The PEPSSI alignment is given in [9] as a single vector - the measured normal to the instrument baffle. This vector defines the instrument +Z axis: [ 0.4574230384 ] PEPPSI baffle normal (+Z ) = [ 0.2112844736 ] inst [ 0.8637841369 ] The nominal instrument look direction is determined by analyzing the mechanical drawings of the instrument mounting bracket [25]. Figure A-5 of [18] shows PEPSSI mounted on the sloped face of the bracket, with its look direction (instrument +Y axis) normal to the sloped face. Two views of the mounting bracket in the spacecraft coordinate frame are [25]: ^ Y ^ Y | sc | sc | | X <------x Z (in) X (in) x------> Z sc sc sc sc _ _ _ _ _ _ _____ _ _ _ _ _ _ ______ o _.-' | o _.-' | 28.343 _.-' _| 27.832 _.-' | .-' _.-' | .-' | | _.-' | | | | _.-' | | | .-'_____________| |________________| //////////////////////// //////////////////////// spacecraft spacecraft The face of the bracket on which PEPSSI is mounted is the outward-facing sloped surface in the above left diagram. The normal to the face is the instrument +Y axis. To calculate the normal, we first use the given angles to find two vectors in the plane of the bracket face: V1 = [ cos(28.343 deg), -sin(28.343 deg), 0 ] V2 = [ 0, -sin(27.832 deg), -cos(27.832 deg) ] The normal to the bracket face (instrument +Y) is given in spacecraft coordinates by the cross product: [ 0.430539299735951 ] Y = V1 x V2 = [ 0.798162645175740 ] inst [ -0.421393288068217 ] The instrument X axis is orthogonal to the plane containing the instrument Y and Z axes: [ 0.778475068630558 ] X = Y x Z = [ -0.564648724992781 ] inst inst inst [ -0.274132057382342 ] The Y axis is adjusted to form an orthogonal frame: [ 0.429814764127889 ] Y = Z x X = [ 0.797828733864454 ] inst inst inst [ -0.422763030500455 ] Using these three vectors, we define the rotation that takes vectors from the instrument frame to the spacecraft frame as [ ] [ 0.778475068630558 0.429814764127889 0.4574230384 ] [ ROT ] = [ -0.564648724992781 0.797828733864454 0.2112844736 ] [ ] [ -0.274132057382342 -0.422763030500455 0.8637841369 ] \begindata FRAME_NH_PEPSSI = -98400 FRAME_-98400_NAME = 'NH_PEPSSI' FRAME_-98400_CLASS = 4 FRAME_-98400_CLASS_ID = -98400 FRAME_-98400_CENTER = -98 TKFRAME_-98400_SPEC = 'MATRIX' TKFRAME_-98400_RELATIVE = 'NH_ASTR' TKFRAME_-98400_MATRIX = ( 0.778475068630558 -0.564648724992781 -0.274132057382342 0.429814764127889 0.797828733864454 -0.422763030500455 0.4574230384 0.2112844736 0.8637841369 ) \begintext Note that it was determined ([24], [26]) that PEPSSI was incorrectly mounted on the spacecraft. The above frame definition describes the actual mounting on the spacecraft, which is different from the intended mounting specification, described in [26]. [24] also suggests that the Euler rotations in Figure A-5 of [18] describe neither the mounting specification nor the actual mounting, but rather a permutation of the mounting specification. Radio Science Experiment (REX) Frames ------------------------------------------------------------------------------- We are defining the REX coordinate system such that the +Z axis in instrument coordinates is the boresight, the +X axis in instrument coordinates is aligned with the spacecraft +X axis, and the +Y axis in instrument coordinates is aligned with the spacecraft -Z axis. The measured boresight vector is given in [9] as- [ 0.0000823 ] REX Boresight Vector (+Z ) = [ 1.0 ] inst [ -0.0001249 ] Since we defined the instrument +X axis to be the spacecraft +X axis, we have: [ 1.0 ] REX +X Vector = [ 0.0 ] [ 0.0 ] The instrument +Y vector is determined by taking the cross product Z x X: [ 0.0 ] REX +Y Vector = [ -0.000124900004202 ] [ -0.999999992199995 ] And we use that to adjust the +X vector to form an orthogonal frame: [ 0.999999996613355 ] REX +X Vector = Y x Z = [ -0.000082299999378 ] [ 0.000000010279270 ] Using these three vectors, we define the rotation matrix that takes vectors from the instrument frame to the spacecraft frame as [ ] [ 0.999999996613355 0.0 0.0000823 ] [ ROT ] = [ -0.000082299999378 -0.000124900004202 1.0 ] [ ] [ 0.000000010279270 -0.999999992199995 -0.0001249 ] \begindata FRAME_NH_REX = -98500 FRAME_-98500_NAME = 'NH_REX' FRAME_-98500_CLASS = 4 FRAME_-98500_CLASS_ID = -98500 FRAME_-98500_CENTER = -98 TKFRAME_-98500_SPEC = 'MATRIX' TKFRAME_-98500_RELATIVE = 'NH_ASTR' TKFRAME_-98500_MATRIX = ( 0.999999996613355, -0.000082299999378, 0.000000010279270, 0.0, -0.000124900004202, -0.999999992199995, 0.0000823, 1.0, -0.0001249 ) \begintext Solar Wind Around Pluto (SWAP) Frames ------------------------------------------------------------------------------- From [20], SWAP is mounted on the -Z panel of the New Horizons Spacecraft and uses the same coordinate system as the spacecraft. The rotation matrix that takes vectors represented in the nominal SWAP frame into the spacecraft frame is the identity. We will adjust the rotation to take into account the measured alignment provided in [9]: [ 0.9999672 ] SWAP Measured +X Vector = [ 0.0080965 ] [ -0.0000296 ] [ 0.0000469 ] SWAP Measured +Z Vector = [ -0.0021315 ] [ 0.9999977 ] Taking the cross product of these two vectors gives us: [ -0.0080964188 ] SWAP +Y Vector (Boresight) = Z x X = [ 0.9999649500 ] [ 0.0021318100 ] And we use that to adjust the Z vector to form an orthogonal frame: [ 0.000046859163 ] SWAP +Z Vector = X x Y = [ -0.002131500500 ] [ 0.999997730000 ] [ ] [ 0.9999672 -0.0080964188 0.000046859163 ] [ ROT ] = [ 0.0080965 0.9999649500 -0.002131500500 ] [ ] [ -0.0000296 0.0021318100 0.999997730000 ] \begindata FRAME_NH_SWAP = -98600 FRAME_-98600_NAME = 'NH_SWAP' FRAME_-98600_CLASS = 4 FRAME_-98600_CLASS_ID = -98600 FRAME_-98600_CENTER = -98 TKFRAME_-98600_SPEC = 'MATRIX' TKFRAME_-98600_RELATIVE = 'NH_ASTR' TKFRAME_-98600_MATRIX = ( 0.9999672, 0.0080965, -0.0000296, -0.0080964188, 0.9999649500, 0.0021318100, 0.000046859163, -0.002131500500, 0.999997730000 ) \begintext Student Dust Counter (SDC) Frames ------------------------------------------------------------------------------- The SDC coordinate system is defined [16] such that the boresight is the instrument +Z axis. This corresponds to the spacecraft -Y axis. The instrument X axis is defined such that it is along the detector's long dimension, with instrument +X corresponding to spacecraft +Z. The instrument Y axis is defined such that it is along the detector's short dimension, with instrument +Y corresponding to the spacecraft -X axis. The rotation matrix that takes vectors from the instrument frame to the spacecraft frame is then: [ ] [ 0 -1 0 ] [ ROT ] = [ 0 0 -1 ] [ ] [ 1 0 0 ] \begindata FRAME_NH_SDC = -98700 FRAME_-98700_NAME = 'NH_SDC' FRAME_-98700_CLASS = 4 FRAME_-98700_CLASS_ID = -98700 FRAME_-98700_CENTER = -98 TKFRAME_-98700_SPEC = 'MATRIX' TKFRAME_-98700_RELATIVE = 'NH_ASTR' TKFRAME_-98700_MATRIX = ( 0.0, 0.0, 1.0, -1.0, 0.0, 0.0, 0.0, -1.0, 0.0 ) \begintext