KPL/FK Frame (FK) SPICE kernel file for JUICE science operations frames =============================================================================== This frames kernel defines a number of frames used by the JUICE science operations centre to perform mission analysis and attitude dependent science opportunity identification. These frames can be used stand-alone, i.e. referring directly to them and assuming they correspond to the JUICE spacecraft reference frame, or in combination with the JUICE spacecraft frames. The latter will allow the user to use the existing alignments and instrument frame definitions to perform instrument specific mission analysis and attitude dependent science opportunity identification. Please refer to the section ``Using these frames'' for further details. Version and Date ------------------------------------------------------------------------------- Version 0.8 -- December 21, 2022 -- Elias Roussos, MPS Alfredo Escalante Lopez, ESAC/ESA Added ANGLE_SEP_TOLERANCE keyword to JUICE_EUROPA_RAM frame preventing two-vector definition degeneration. Version 0.7 -- December 10, 2019 -- Marc Costa Sitja, ESAC/ESA Corrected typo in JUICE_SA_DEFAULT definitions. Version 0.6 -- March 8, 2019 -- Marc Costa Sitja, ESAC/ESA Added a definition for each Solar Array and JUICE_{target}}_NOA for Venus, Earth and Mars. Version 0.5 -- September 28, 2018 -- Marc Costa Sitja, ESAC/ESA Corrected JUICE_SA_DEFAULT definition. Version 0.4 -- July 17, 2017 -- Marc Costa Sitja, ESAC/ESA Added Solar Arrays Default Orientation (JUICE_SA_DEFAULT) frame definition. Version 0.3 -- February 13, 2017 -- Marc Costa Sitja, ESAC/ESA Added JUICE__RAM frame definitions as requested by Christian Erd. Version 0.2 -- June 04, 2016 -- Marc Costa Sitja, ESAC/ESA Updated all NAIF ID codes from -907* to -28* since the JUICE spacecraft NAIF ID has been updated from -907 to -28. Version 0.1 -- May 11, 2016 -- Jorge Diaz del Rio (ODC Space) Added JUICE_IO_NPO frame. Corrected typos in text. Version 0.0 -- April 25, 2016 -- Jorge Diaz del Rio (ODC Space) Initial version. References ------------------------------------------------------------------------------- [1] "Frames Required Reading". [2] "Kernel Pool Required Reading". [3] ``Science Operations Centre - Flight Dynamics - Pointing Timeline-ICD'' [TBD] Not yet available; EM16 used as reference. [4] ``JUICE spacecraft attitude during the mission'', JUI-ADST-INST-TN-000122, X. Moisson, Airbus Defense and Space, Issue 1, 16th October 2015. Contact Information ------------------------------------------------------------------------------- If you have any questions regarding this file contact SPICE support at ESAC: Marc Costa Sitja (+34) 91-8131-457 mcosta@sciops.esa.int, esa_spice@sciops.esa.int or NAIF at JPL: Boris Semenov (818) 354-8136 Boris.Semenov@jpl.nasa.gov Implementation Notes ------------------------------------------------------------------------------- This file is used by the SPICE system as follows: programs that make use of this frame kernel must "load" the kernel normally during program initialization. Loading the kernel associates the data items with their names in a data structure called the "kernel pool". The routine that loads a kernel into the pool is shown below: FORTRAN: (SPICELIB) CALL FURNSH ( frame_kernel_name ) C: (CSPICE) furnsh_c ( frame_kernel_name ); IDL: (ICY) cspice_furnsh, frame_kernel_name MATLAB: (MICE) cspice_furnsh ( 'frame_kernel_name' ) This file was created and may be updated with a text editor or word processor. JUICE Science Operations frame names and NAIF ID Codes ------------------------------------------------------------------------------- The following frames are defined in this kernel file: SPICE Frame Name Long-name ------------------------ --------------------------------------------- JUICE_EARTH_COMMS JUICE HGA Earth communications pointing JUICE_SA+Y_DEFAULT JUICE +Y Solar Array Default Orientation JUICE_SA-Y_DEFAULT JUICE -Y Solar Array Default Orientation JUICE Nadir orbit-aligned (NOA) pointing: JUICE_CALLISTO_NOA JUICE Nadir orbit-aligned pointing @ Callisto JUICE_EUROPA_NOA JUICE Nadir orbit-aligned pointing @ Europa JUICE_JUPITER_NOA JUICE Nadir orbit-aligned pointing @ Jupiter JUICE_GANYMEDE_NOA JUICE Nadir orbit-aligned pointing @ Ganymede JUICE_MARS_NOA JUICE Nadir orbit-aligned pointing @ Mars JUICE_VENUS_NOA JUICE Nadir orbit-aligned pointing @ Venus JUICE_EARTH_NOA JUICE Nadir orbit-aligned pointing @ Earth JUICE Nadir power-optimized (NPO) pointing: JUICE_CALLISTO_NPO JUICE Nadir power-optimized pointing @ Callisto JUICE_EUROPA_NPO JUICE Nadir power-optimized pointing @ Europa JUICE_JUPITER_NPO JUICE Nadir power-optimized pointing @ Jupiter JUICE_GANYMEDE_NPO JUICE Nadir power-optimized pointing @ Ganymede JUICE_IO_NPO JUICE Nadir power-optimized pointing @ Io JUICE Ramming direction (RAM) pointing: JUICE_CALLISTO_RAM JUICE Ramming direction pointing @ Callisto JUICE_EUROPA_RAM JUICE Ramming direction pointing @ Europa JUICE_JUPITER_RAM JUICE Ramming direction pointing @ Jupiter JUICE_GANYMEDE_RAM JUICE Ramming direction pointing @ Ganymede These frames have the following centers, frame class and NAIF IDs: SPICE Frame Name Center Class NAIF ID ------------------------ --------------------- ------- ---------- JUICE_EARTH_COMMS JUICE DYNAMIC -28900 JUICE_SA+Y_DEFAULT JUICE DYNAMIC -28901 JUICE_SA-Y_DEFAULT JUICE DYNAMIC -28902 JUICE_VENUS_NOA JUICE DYNAMIC -28903 JUICE_MARS_NOA JUICE DYNAMIC -28904 JUICE_JUPITER_NOA JUICE DYNAMIC -28905 JUICE_CALLISTO_NOA JUICE DYNAMIC -28906 JUICE_EUROPA_NOA JUICE DYNAMIC -28907 JUICE_GANYMEDE_NOA JUICE DYNAMIC -28908 JUICE_EARTH_NOA JUICE DYNAMIC -28909 JUICE_JUPITER_NPO JUICE DYNAMIC -28910 JUICE_CALLISTO_NPO JUICE DYNAMIC -28911 JUICE_EUROPA_NPO JUICE DYNAMIC -28912 JUICE_GANYMEDE_NPO JUICE DYNAMIC -28913 JUICE_IO_NPO JUICE DYNAMIC -28914 JUICE_JUPITER_RAM JUICE DYNAMIC -28915 JUICE_CALLISTO_RAM JUICE DYNAMIC -28916 JUICE_EUROPA_RAM JUICE DYNAMIC -28917 JUICE_GANYMEDE_RAM JUICE DYNAMIC -28918 The keywords implementing these frame definitions are located in the "JUICE Science Operations Frame Definitions" section. General Notes About This File ------------------------------------------------------------------------------- About Required Data: -------------------- All the dynamic frames defined in this file require at least one of the following kernel types to be loaded prior to their evaluation, normally during program initialization: - Planetary and Satellite ephemeris data (SPK), i.e. de432, jup300, etc; - Spacecraft ephemeris data (SPK); Note that loading different kernels will lead to different orientations of the same frame at a given epoch, providing different results from each other, in terms of state vectors referred to these frames. Using these frames ------------------ These frames have been implemented to define the different pointing profiles for the JUICE spacecraft. These pointing profiles can be used in two different ways: [1] ``As is'' for analysis of offsets between the spacecraft attitude defined in the corresponding CK and a given pointing profile. Loading this kernel in combination with any JUICE CK will allow the user to perform this comparison between the JUICE_SPACECRAFT frame and any of the different frames defined within this kernel. [2] In combination with the JUICE Frames kernel, to define a default pointing profile for the whole duration of the mission together with the spacecraft and instrument frames defined in the JUICE FK. In this way, instrument-specific mission analysis activities, for which a particular pointing profile and knowledge of the instruments is required, can be conducted without the need for a spacecraft CK. In order to define such default pointing profile, the latest JUICE frames kernel and this file shall be loaded before the selected ``JUICE spacecraft frame overwrite'' frame kernel. As an example, imagine that the desired default pointing profile is "Nadir power optimized with respect to Jupiter", then the furnish (metakernel) file should contain the following sequence of frames kernels, in the following order: ... $DATA/fk/juice_v00.tf $DATA/fk/juice_ops_v00.tf $DATA/fk/juice_sc_jup_npo_v00.tf ... (*) the example presents version 0.0 of the JUICE frames and JUICE Science Operations frames kernels. Newer versions of these files will produce the same results. By loading the ``juice_sc_jup_npo.tf'' frames kernel last, the spacecraft frame JUICE_SPACECRAFT, which is defined as a CK-based frame in the ``JUICE frames kernel'', will be overwritten as a type-4 fixed offset frame, mapping the JUICE_SPACECRAFT frame to the JUICE_JUPITER_NPO frame defined in the ``JUICE Science Operations Frames Kernel'' (this) file. JUICE Science Operations Frame Definitions ------------------------------------------------------------------------------- This section contains the definition of the JUICE science operations frames. JUICE HGA Earth communications pointing frame (JUICE_EARTH_COMMS) ------------------------------------------------------------------------ Definition: ----------- The JUICE HGA Earth communications pointing frame is defined as follows (from [3]): - the position of the Earth relative to JUICE is the primary vector. Since the HGA is located in the -X spacecraft bus pannel, the -X axis is the primary vector and it points from JUICE to the Earth center of mass; - the secondary axis is chosen to keep the science deck away from the Sun. -Z axis is the secondary vector and is the orthogonal component to the -X axis of the Sun position relative to JUICE; - +Y axis completes the right-handed system; - the origin of this frame is the spacecraft's center of mass. All vectors are geometric: no corrections are used. Required Data: -------------- This frame is defined as a two-vector frame using two different types of specifications for the primary and secondary vectors. Both the primary and the secondary vector are defined as an 'observer-target position' vectors, therefore, the ephemeris data required to compute both the JUICE-Earth position and the JUICE-Sun position in J2000 frame have to be loaded before using this frame. Remarks: -------- Since the primary and secondary vectors of this frame are defined based on the JUICE-Earth position and JUICE-Sun position vectors, the usage of different ephemerides to compute these vectors may lead to different frame orientation at given time. \begindata FRAME_JUICE_EARTH_COMMS = -28900 FRAME_-28900_NAME = 'JUICE_EARTH_COMMS' FRAME_-28900_CLASS = 5 FRAME_-28900_CLASS_ID = -28900 FRAME_-28900_CENTER = -28 FRAME_-28900_RELATIVE = 'J2000' FRAME_-28900_DEF_STYLE = 'PARAMETERIZED' FRAME_-28900_FAMILY = 'TWO-VECTOR' FRAME_-28900_PRI_AXIS = '-X' FRAME_-28900_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28900_PRI_OBSERVER = 'JUICE' FRAME_-28900_PRI_TARGET = 'EARTH' FRAME_-28900_PRI_ABCORR = 'NONE' FRAME_-28900_SEC_AXIS = '-Z' FRAME_-28900_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28900_SEC_OBSERVER = 'JUICE' FRAME_-28900_SEC_TARGET = 'SUN' FRAME_-28900_SEC_ABCORR = 'NONE' FRAME_-28900_SEC_FRAME = 'J2000' \begintext JUICE Solar Arrays Default frames (JUICE_SA+Y_DEFAULT, JUICE_SA-Y_DEFAULT) -------------------------------------------------------------------------- Definition: ----------- The Solar Arrays Default frames are defined as follows (from [4]): - +Z axis is the position of the Sun relative to JUICE and is the secondary vector. This axis is chosen to keep this study Solar Arrays frame as close to being normal to the Sun-JUICE vector as possible; - +Y axis is defined by the primary vector of and is parallel for the JUICE_SA+Y_DEFAULT and antiparallel for the JUICE_SA-Y_DEFAULT to the JUICE S/C +Y axis - which is equivalent to the rotation axis of the Solar Arrays -; - +X axis completes the right-handed system; - the origin of this frame is the spacecraft's center of mass. The +Z axis defined by the Sun-S/C vector applies Light Time and Stellar Aberration corrections. Required Data: -------------- This frame is defined as a two-vector frame using two different types of specifications for the primary and secondary vectors. Both the secondary vector is defined as an 'observer-target position' vectors, therefore, the ephemeris data required to compute both the JUICE-Sun position in J2000 frame have to be loaded before using this frame. In addition the primary axis is defined as a 'constant vector' vector w.r.t. the JUICE_SPACECRAFT frame that requires a CK kernel to compute the orientation of JUICE_SPACECRAFT w.r.t. J2000 frame. Remarks: -------- Since the primary and secondary vectors of this frame are defined based on the JUICE-Sun position and CK frames, the usage of different ephemerides to compute these vectors may lead to different frame orientation at given time. \begindata FRAME_JUICE_SA+Y_DEFAULT = -28901 FRAME_-28901_NAME = 'JUICE_SA+Y_DEFAULT' FRAME_-28901_CLASS = 5 FRAME_-28901_CLASS_ID = -28901 FRAME_-28901_CENTER = -28 FRAME_-28901_RELATIVE = 'JUICE_SA+Y_ZERO' FRAME_-28901_DEF_STYLE = 'PARAMETERIZED' FRAME_-28901_FAMILY = 'TWO-VECTOR' FRAME_-28901_PRI_AXIS = '+Y' FRAME_-28901_PRI_VECTOR_DEF = 'CONSTANT' FRAME_-28901_PRI_SPEC = 'RECTANGULAR' FRAME_-28901_PRI_VECTOR = ( 0, 1, 0 ) FRAME_-28901_PRI_FRAME = 'JUICE_SPACECRAFT' FRAME_-28901_SEC_AXIS = '+Z' FRAME_-28901_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28901_SEC_OBSERVER = 'JUICE' FRAME_-28901_SEC_TARGET = 'SUN' FRAME_-28901_SEC_ABCORR = 'LT+S' FRAME_-28901_SEC_FRAME = 'JUICE_SPACECRAFT' FRAME_JUICE_SA-Y_DEFAULT = -28902 FRAME_-28902_NAME = 'JUICE_SA-Y_DEFAULT' FRAME_-28902_CLASS = 5 FRAME_-28902_CLASS_ID = -28902 FRAME_-28902_CENTER = -28 FRAME_-28902_RELATIVE = 'JUICE_SA-Y_ZERO' FRAME_-28902_DEF_STYLE = 'PARAMETERIZED' FRAME_-28902_FAMILY = 'TWO-VECTOR' FRAME_-28902_PRI_AXIS = '-Y' FRAME_-28902_PRI_VECTOR_DEF = 'CONSTANT' FRAME_-28902_PRI_SPEC = 'RECTANGULAR' FRAME_-28902_PRI_VECTOR = ( 0, 1, 0 ) FRAME_-28902_PRI_FRAME = 'JUICE_SPACECRAFT' FRAME_-28902_SEC_AXIS = '+Z' FRAME_-28902_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28902_SEC_OBSERVER = 'JUICE' FRAME_-28902_SEC_TARGET = 'SUN' FRAME_-28902_SEC_ABCORR = 'LT+S' FRAME_-28902_SEC_FRAME = 'JUICE_SPACECRAFT' \begintext JUICE Nadir orbit-aligned pointing frame(s) (JUICE__NOA) ------------------------------------------------------------------------ SPICE frame name and literature references: ------------------------------------------- The JUICE Nadir orbit-aligned pointing frame(s) are a family of frames that define the Nadir orbit-aligned pointing profile for the different JUICE targets. Within the JUICE mission, these frames are referred as JUICE_CALLISTO_NOA (for Callisto Nadir orbit-aligned pointing profile), JUICE_EUROPA_NOA (for Europa), JUICE_JUPITER_NOA (for Jupiter), JUICE_GANYMEDE_NOA (for Ganymede), JUICE_MARS_NOA (for Mars), JUICE_VENUS_NOA (for Venus) and JUICE_EARTH_NOA (for Earth) Definition: ----------- The JUICE Nadir orbit-aligned pointing frame is defined as follows (from [3]): - +Z axis is the primary vector and points from JUICE to the center of the target body (Nadir direction); - +Y axis is the secondary vector and is the orthogonal component to the +Z axis of JUICE inertially referenced velocity vector relative to the target body; - +X axis completes the right-handed system; - the origin of this frame is the spacecraft's center of mass. All vectors are geometric: no corrections are used. Required Data: -------------- This frame is defined as a two-vector frame using two different types of specifications for the primary and secondary vectors. The primary vector is defined as an 'observer-target position' vector and the secondary vector is defined as an 'observer-target' velocity, therefore, the ephemeris data required to compute the JUICE-target body state in J2000 frame have to be loaded before using this frame. Remarks: -------- Since the primary and secondary vectors of this frame are defined based on the JUICE-target body state vector, the usage of different ephemerides to compute this state vector may lead to different frame orientation at given time. \begindata FRAME_JUICE_VENUS_NOA = -28903 FRAME_-28903_NAME = 'JUICE_VENUS_NOA' FRAME_-28903_CLASS = 5 FRAME_-28903_CLASS_ID = -28905 FRAME_-28903_CENTER = -28 FRAME_-28903_RELATIVE = 'J2000' FRAME_-28903_DEF_STYLE = 'PARAMETERIZED' FRAME_-28903_FAMILY = 'TWO-VECTOR' FRAME_-28903_PRI_AXIS = 'Z' FRAME_-28903_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28903_PRI_OBSERVER = 'JUICE' FRAME_-28903_PRI_TARGET = 'VENUS' FRAME_-28903_PRI_ABCORR = 'NONE' FRAME_-28903_SEC_AXIS = 'Y' FRAME_-28903_SEC_VECTOR_DEF = 'OBSERVER_TARGET_VELOCITY' FRAME_-28903_SEC_OBSERVER = 'VENUS' FRAME_-28903_SEC_TARGET = 'JUICE' FRAME_-28903_SEC_ABCORR = 'NONE' FRAME_-28903_SEC_FRAME = 'J2000' FRAME_JUICE_MARS_NOA = -28904 FRAME_-28904_NAME = 'JUICE_MARS_NOA' FRAME_-28904_CLASS = 5 FRAME_-28904_CLASS_ID = -28905 FRAME_-28904_CENTER = -28 FRAME_-28904_RELATIVE = 'J2000' FRAME_-28904_DEF_STYLE = 'PARAMETERIZED' FRAME_-28904_FAMILY = 'TWO-VECTOR' FRAME_-28904_PRI_AXIS = 'Z' FRAME_-28904_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28904_PRI_OBSERVER = 'JUICE' FRAME_-28904_PRI_TARGET = 'MARS' FRAME_-28904_PRI_ABCORR = 'NONE' FRAME_-28904_SEC_AXIS = 'Y' FRAME_-28904_SEC_VECTOR_DEF = 'OBSERVER_TARGET_VELOCITY' FRAME_-28904_SEC_OBSERVER = 'MARS' FRAME_-28904_SEC_TARGET = 'JUICE' FRAME_-28904_SEC_ABCORR = 'NONE' FRAME_-28904_SEC_FRAME = 'J2000' FRAME_JUICE_JUPITER_NOA = -28905 FRAME_-28905_NAME = 'JUICE_JUPITER_NOA' FRAME_-28905_CLASS = 5 FRAME_-28905_CLASS_ID = -28905 FRAME_-28905_CENTER = -28 FRAME_-28905_RELATIVE = 'J2000' FRAME_-28905_DEF_STYLE = 'PARAMETERIZED' FRAME_-28905_FAMILY = 'TWO-VECTOR' FRAME_-28905_PRI_AXIS = 'Z' FRAME_-28905_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28905_PRI_OBSERVER = 'JUICE' FRAME_-28905_PRI_TARGET = 'JUPITER' FRAME_-28905_PRI_ABCORR = 'NONE' FRAME_-28905_SEC_AXIS = 'Y' FRAME_-28905_SEC_VECTOR_DEF = 'OBSERVER_TARGET_VELOCITY' FRAME_-28905_SEC_OBSERVER = 'JUPITER' FRAME_-28905_SEC_TARGET = 'JUICE' FRAME_-28905_SEC_ABCORR = 'NONE' FRAME_-28905_SEC_FRAME = 'J2000' FRAME_JUICE_CALLISTO_NOA = -28906 FRAME_-28906_NAME = 'JUICE_CALLISTO_NOA' FRAME_-28906_CLASS = 5 FRAME_-28906_CLASS_ID = -28906 FRAME_-28906_CENTER = -28 FRAME_-28906_RELATIVE = 'J2000' FRAME_-28906_DEF_STYLE = 'PARAMETERIZED' FRAME_-28906_FAMILY = 'TWO-VECTOR' FRAME_-28906_PRI_AXIS = 'Z' FRAME_-28906_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28906_PRI_OBSERVER = 'JUICE' FRAME_-28906_PRI_TARGET = 'CALLISTO' FRAME_-28906_PRI_ABCORR = 'NONE' FRAME_-28906_SEC_AXIS = 'Y' FRAME_-28906_SEC_VECTOR_DEF = 'OBSERVER_TARGET_VELOCITY' FRAME_-28906_SEC_OBSERVER = 'CALLISTO' FRAME_-28906_SEC_TARGET = 'JUICE' FRAME_-28906_SEC_ABCORR = 'NONE' FRAME_-28906_SEC_FRAME = 'J2000' FRAME_JUICE_EUROPA_NOA = -28907 FRAME_-28907_NAME = 'JUICE_EUROPA_NOA' FRAME_-28907_CLASS = 5 FRAME_-28907_CLASS_ID = -28907 FRAME_-28907_CENTER = -28 FRAME_-28907_RELATIVE = 'J2000' FRAME_-28907_DEF_STYLE = 'PARAMETERIZED' FRAME_-28907_FAMILY = 'TWO-VECTOR' FRAME_-28907_PRI_AXIS = 'Z' FRAME_-28907_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28907_PRI_OBSERVER = 'JUICE' FRAME_-28907_PRI_TARGET = 'EUROPA' FRAME_-28907_PRI_ABCORR = 'NONE' FRAME_-28907_SEC_AXIS = 'Y' FRAME_-28907_SEC_VECTOR_DEF = 'OBSERVER_TARGET_VELOCITY' FRAME_-28907_SEC_OBSERVER = 'EUROPA' FRAME_-28907_SEC_TARGET = 'JUICE' FRAME_-28907_SEC_ABCORR = 'NONE' FRAME_-28907_SEC_FRAME = 'J2000' FRAME_JUICE_GANYMEDE_NOA = -28908 FRAME_-28908_NAME = 'JUICE_GANYMEDE_NOA' FRAME_-28908_CLASS = 5 FRAME_-28908_CLASS_ID = -28908 FRAME_-28908_CENTER = -28 FRAME_-28908_RELATIVE = 'J2000' FRAME_-28908_DEF_STYLE = 'PARAMETERIZED' FRAME_-28908_FAMILY = 'TWO-VECTOR' FRAME_-28908_PRI_AXIS = 'Z' FRAME_-28908_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28908_PRI_OBSERVER = 'JUICE' FRAME_-28908_PRI_TARGET = 'GANYMEDE' FRAME_-28908_PRI_ABCORR = 'NONE' FRAME_-28908_SEC_AXIS = 'Y' FRAME_-28908_SEC_VECTOR_DEF = 'OBSERVER_TARGET_VELOCITY' FRAME_-28908_SEC_OBSERVER = 'GANYMEDE' FRAME_-28908_SEC_TARGET = 'JUICE' FRAME_-28908_SEC_ABCORR = 'NONE' FRAME_-28908_SEC_FRAME = 'J2000' FRAME_JUICE_EARTH_NOA = -28909 FRAME_-28909_NAME = 'JUICE_EARTH_NOA' FRAME_-28909_CLASS = 5 FRAME_-28909_CLASS_ID = -28908 FRAME_-28909_CENTER = -28 FRAME_-28909_RELATIVE = 'J2000' FRAME_-28909_DEF_STYLE = 'PARAMETERIZED' FRAME_-28909_FAMILY = 'TWO-VECTOR' FRAME_-28909_PRI_AXIS = 'Z' FRAME_-28909_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28909_PRI_OBSERVER = 'JUICE' FRAME_-28909_PRI_TARGET = 'EARTH' FRAME_-28909_PRI_ABCORR = 'NONE' FRAME_-28909_SEC_AXIS = 'Y' FRAME_-28909_SEC_VECTOR_DEF = 'OBSERVER_TARGET_VELOCITY' FRAME_-28909_SEC_OBSERVER = 'EARTH' FRAME_-28909_SEC_TARGET = 'JUICE' FRAME_-28909_SEC_ABCORR = 'NONE' FRAME_-28909_SEC_FRAME = 'J2000' \begintext JUICE Nadir power-optimized pointing frame(s) (JUICE__NPO) ------------------------------------------------------------------------ SPICE frame name and literature references: ------------------------------------------- The JUICE Nadir power-optimized pointing frame(s) are a family of frames that define the Nadir power-optimized pointing profile for the different JUICE targets. Within the JUICE mission, these frames are referred as JUICE_CALLISTO_NPO (for Callisto Nadir power-optimized pointing profile), JUICE_EUROPA_NPO (for Europa), JUICE_GANYMEDE_NPO (for Ganymede), JUICE_JUPITER_NPO (for Jupiter) and JUICE_IO_NPO (for IO) . Definition: ----------- The JUICE Nadir power-optimized pointing frame is defined as follows (from [3]): - +Z axis is the primary vector and points from JUICE to the center of the target body (Nadir direction); - -X axis is the secondary vector and is the orthogonal component to the +Z axis of the Sun position relative to JUICE; - +Y axis completes the right-handed system; - the original of this frame is the spacecraft's center of mass. All vectors are geometric: no corrections are used. Required Data: -------------- This frame is defined as a two-vector frame using two different types of specifications for the primary and secondary vectors. Both the primary and the secondary vector are defined as an 'observer-target position' vectors, therefore, the ephemeris data required to compute both the JUICE-target body position and the JUICE-Sun position in J2000 frame have to be loaded before using this frame. Remarks: -------- Since the primary and secondary vectors of this frame are defined based on the JUICE-target body position and JUICE-Sun position vectors, the usage of different ephemerides to compute these vectors may lead to different frame orientation at given time. \begindata FRAME_JUICE_JUPITER_NPO = -28910 FRAME_-28910_NAME = 'JUICE_JUPITER_NPO' FRAME_-28910_CLASS = 5 FRAME_-28910_CLASS_ID = -28910 FRAME_-28910_CENTER = -28 FRAME_-28910_RELATIVE = 'J2000' FRAME_-28910_DEF_STYLE = 'PARAMETERIZED' FRAME_-28910_FAMILY = 'TWO-VECTOR' FRAME_-28910_PRI_AXIS = 'Z' FRAME_-28910_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28910_PRI_OBSERVER = 'JUICE' FRAME_-28910_PRI_TARGET = 'JUPITER' FRAME_-28910_PRI_ABCORR = 'NONE' FRAME_-28910_SEC_AXIS = '-X' FRAME_-28910_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28910_SEC_OBSERVER = 'JUICE' FRAME_-28910_SEC_TARGET = 'SUN' FRAME_-28910_SEC_ABCORR = 'NONE' FRAME_-28910_SEC_FRAME = 'J2000' FRAME_JUICE_CALLISTO_NPO = -28911 FRAME_-28911_NAME = 'JUICE_CALLISTO_NPO' FRAME_-28911_CLASS = 5 FRAME_-28911_CLASS_ID = -28911 FRAME_-28911_CENTER = -28 FRAME_-28911_RELATIVE = 'J2000' FRAME_-28911_DEF_STYLE = 'PARAMETERIZED' FRAME_-28911_FAMILY = 'TWO-VECTOR' FRAME_-28911_PRI_AXIS = 'Z' FRAME_-28911_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28911_PRI_OBSERVER = 'JUICE' FRAME_-28911_PRI_TARGET = 'CALLISTO' FRAME_-28911_PRI_ABCORR = 'NONE' FRAME_-28911_SEC_AXIS = '-X' FRAME_-28911_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28911_SEC_OBSERVER = 'JUICE' FRAME_-28911_SEC_TARGET = 'SUN' FRAME_-28911_SEC_ABCORR = 'NONE' FRAME_-28911_SEC_FRAME = 'J2000' FRAME_JUICE_EUROPA_NPO = -28912 FRAME_-28912_NAME = 'JUICE_EUROPA_NPO' FRAME_-28912_CLASS = 5 FRAME_-28912_CLASS_ID = -28912 FRAME_-28912_CENTER = -28 FRAME_-28912_RELATIVE = 'J2000' FRAME_-28912_DEF_STYLE = 'PARAMETERIZED' FRAME_-28912_FAMILY = 'TWO-VECTOR' FRAME_-28912_PRI_AXIS = 'Z' FRAME_-28912_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28912_PRI_OBSERVER = 'JUICE' FRAME_-28912_PRI_TARGET = 'EUROPA' FRAME_-28912_PRI_ABCORR = 'NONE' FRAME_-28912_SEC_AXIS = '-X' FRAME_-28912_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28912_SEC_OBSERVER = 'JUICE' FRAME_-28912_SEC_TARGET = 'SUN' FRAME_-28912_SEC_ABCORR = 'NONE' FRAME_-28912_SEC_FRAME = 'J2000' FRAME_JUICE_GANYMEDE_NPO = -28913 FRAME_-28913_NAME = 'JUICE_GANYMEDE_NPO' FRAME_-28913_CLASS = 5 FRAME_-28913_CLASS_ID = -28913 FRAME_-28913_CENTER = -28 FRAME_-28913_RELATIVE = 'J2000' FRAME_-28913_DEF_STYLE = 'PARAMETERIZED' FRAME_-28913_FAMILY = 'TWO-VECTOR' FRAME_-28913_PRI_AXIS = 'Z' FRAME_-28913_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28913_PRI_OBSERVER = 'JUICE' FRAME_-28913_PRI_TARGET = 'GANYMEDE' FRAME_-28913_PRI_ABCORR = 'NONE' FRAME_-28913_SEC_AXIS = '-X' FRAME_-28913_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28913_SEC_OBSERVER = 'JUICE' FRAME_-28913_SEC_TARGET = 'SUN' FRAME_-28913_SEC_ABCORR = 'NONE' FRAME_-28913_SEC_FRAME = 'J2000' FRAME_JUICE_IO_NPO = -28914 FRAME_-28914_NAME = 'JUICE_IO_NPO' FRAME_-28914_CLASS = 5 FRAME_-28914_CLASS_ID = -28914 FRAME_-28914_CENTER = -28 FRAME_-28914_RELATIVE = 'J2000' FRAME_-28914_DEF_STYLE = 'PARAMETERIZED' FRAME_-28914_FAMILY = 'TWO-VECTOR' FRAME_-28914_PRI_AXIS = 'Z' FRAME_-28914_PRI_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28914_PRI_OBSERVER = 'JUICE' FRAME_-28914_PRI_TARGET = 'IO' FRAME_-28914_PRI_ABCORR = 'NONE' FRAME_-28914_SEC_AXIS = '-X' FRAME_-28914_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28914_SEC_OBSERVER = 'JUICE' FRAME_-28914_SEC_TARGET = 'SUN' FRAME_-28914_SEC_ABCORR = 'NONE' FRAME_-28914_SEC_FRAME = 'J2000' \begintext JUICE RAM pointing frame(s) (JUICE__RAM) ------------------------------------------------------------------------ SPICE frame name and literature references: ------------------------------------------- The JUICE RAM frame(s) are a family of frames that define the RAM pointing profile for the different JUICE targets. RAM pointing stands for a pointing whose primary axis is the velocity direction; the RAM side of the S/C is the side that points in the direction of the satellite's motion. It is called the RAM side because it is the side impacting/ramming into the fluid that the satellite moves through -such as the ionosphere-. Within the JUICE mission, these frames are referred as JUICE_CALLISTO_RAM (for Callisto RAM pointing profile), JUICE_EUROPA_RAM (for Europa), JUICE_JUPITER_RAM (for Jupiter) and JUICE_GANYMEDE_RAM (for Ganymede). Definition: ----------- The JUICE Nadir RAM pointing frame is defined as follows (from [3]): - +Z axis is the primary vector and points from JUICE to the inertially referenced velocity vector relative to the target body; - +Y axis is the secondary vector and is the orthogonal component to the vector from JUICE to the center of the target body (Nadir direction); - +X axis completes the right-handed system; - the origin of this frame is the spacecraft's center of mass. All vectors are geometric: no corrections are used. Required Data: -------------- This frame is defined as a two-vector frame using two different types of specifications for the primary and secondary vectors. The primary vector is defined as an 'observer-target velocity' vector and the secondary vector is defined as an 'observer-target position', therefore, the ephemeris data required to compute the JUICE-target body state in J2000 frame have to be loaded before using this frame. Remarks: -------- Since the primary and secondary vectors of this frame are defined based on the JUICE-target body state vector, the usage of different ephemerides to compute this state vector may lead to different frame orientation at given time. \begindata FRAME_JUICE_JUPITER_RAM = -28915 FRAME_-28915_NAME = 'JUICE_JUPITER_RAM' FRAME_-28915_CLASS = 5 FRAME_-28915_CLASS_ID = -28915 FRAME_-28915_CENTER = -28 FRAME_-28915_RELATIVE = 'J2000' FRAME_-28915_DEF_STYLE = 'PARAMETERIZED' FRAME_-28915_FAMILY = 'TWO-VECTOR' FRAME_-28915_PRI_AXIS = 'Z' FRAME_-28915_PRI_VECTOR_DEF = 'OBSERVER_TARGET_VELOCITY' FRAME_-28915_PRI_OBSERVER = 'JUPITER' FRAME_-28915_PRI_TARGET = 'JUICE' FRAME_-28915_PRI_ABCORR = 'NONE' FRAME_-28915_PRI_FRAME = 'J2000' FRAME_-28915_SEC_AXIS = 'Y' FRAME_-28915_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28915_SEC_OBSERVER = 'JUICE' FRAME_-28915_SEC_TARGET = 'JUPITER' FRAME_-28915_SEC_ABCORR = 'NONE' FRAME_JUICE_CALLISTO_RAM = -28916 FRAME_-28916_NAME = 'JUICE_CALLISTO_RAM' FRAME_-28916_CLASS = 5 FRAME_-28916_CLASS_ID = -28916 FRAME_-28916_CENTER = -28 FRAME_-28916_RELATIVE = 'J2000' FRAME_-28916_DEF_STYLE = 'PARAMETERIZED' FRAME_-28916_FAMILY = 'TWO-VECTOR' FRAME_-28916_PRI_AXIS = 'Z' FRAME_-28916_PRI_VECTOR_DEF = 'OBSERVER_TARGET_VELOCITY' FRAME_-28916_PRI_OBSERVER = 'CALLISTO' FRAME_-28916_PRI_TARGET = 'JUICE' FRAME_-28916_PRI_ABCORR = 'NONE' FRAME_-28916_PRI_FRAME = 'J2000' FRAME_-28916_SEC_AXIS = 'Y' FRAME_-28916_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28916_SEC_OBSERVER = 'JUICE' FRAME_-28916_SEC_TARGET = 'CALLISTO' FRAME_-28916_SEC_ABCORR = 'NONE' FRAME_JUICE_EUROPA_RAM = -28917 FRAME_-28917_NAME = 'JUICE_EUROPA_RAM' FRAME_-28917_CLASS = 5 FRAME_-28917_CLASS_ID = -28917 FRAME_-28917_CENTER = -28 FRAME_-28917_RELATIVE = 'J2000' FRAME_-28917_DEF_STYLE = 'PARAMETERIZED' FRAME_-28917_FAMILY = 'TWO-VECTOR' FRAME_-28917_PRI_AXIS = 'Z' FRAME_-28917_PRI_VECTOR_DEF = 'OBSERVER_TARGET_VELOCITY' FRAME_-28917_PRI_OBSERVER = 'EUROPA' FRAME_-28917_PRI_TARGET = 'JUICE' FRAME_-28917_PRI_ABCORR = 'NONE' FRAME_-28917_PRI_FRAME = 'J2000' FRAME_-28917_SEC_AXIS = 'Y' FRAME_-28917_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION' FRAME_-28917_SEC_OBSERVER = 'JUICE' FRAME_-28917_SEC_TARGET = 'EUROPA' FRAME_-28917_SEC_ABCORR = 'NONE' FRAME_-28917_ANGLE_SEP_TOL = 1e-8 FRAME_JUICE_GANYMEDE_RAM = -28918 FRAME_-28918_NAME = 'JUICE_GANYMEDE_RAM' FRAME_-28918_CLASS = 5 FRAME_-28918_CLASS_ID = -28918 FRAME_-28918_CENTER = -28 FRAME_-28918_RELATIVE = 'J2000' FRAME_-28918_DEF_STYLE = 'PARAMETERIZED' FRAME_-28918_FAMILY = 'TWO-VECTOR' FRAME_-28918_PRI_AXIS = 'Z' FRAME_-28918_PRI_VECTOR_DEF = 'OBSERVER_TARGET_VELOCITY' FRAME_-28918_PRI_OBSERVER = 'GANYMEDE' FRAME_-28918_PRI_TARGET = 'JUICE' FRAME_-28918_PRI_ABCORR = 'NONE' FRAME_-28918_PRI_FRAME = 'J2000' FRAME_-28918_SEC_AXIS = 'Y' FRAME_-28918_SEC_VECTOR_DEF = 'OBSERVER_TARGET_POSITION ' FRAME_-28918_SEC_OBSERVER = 'JUICE' FRAME_-28918_SEC_TARGET = 'GANYMEDE' FRAME_-28918_SEC_ABCORR = 'NONE' \begintext End of FK file.