Instrument Trajectory#

If you are interested in a specific instrument and you want to study its boresight intersection with the target’s surface (rather than the sub-spacecraft point), you need to use a InstrumentTrajectory.

When the orbiter is in a nadir viewing geometry, its instrument trajectory properties correspond (or at least almost equal) to the values retrieved with the SpacecraftTrajectory groundtrack. However in the general case, the spacecraft can be pointing in any direction and only the points intersecting the surface are considered.

To get an InstrumentTrajectory, you can either change the trajectory observer:

Tip

From an InstrumentTrajectory you can get its parent SpacecraftTrajectory with the spacecraft name:

inst_traj.new_traj(
    spacraft='JUICE'
)
# or
inst_traj.new_traj(
    instrument='none'
)

You can also use the same technique to switch between different targets:

sc_traj.new_traj(
    target='Callisto'
)
inst_traj = sc_traj.new_traj(instrument='JANUS')

inst_traj
<InstrumentTrajectory> Observer: JUICE_JANUS | Target: GANYMEDE
 - UTC start time: 2035-06-01T00:00:00.000
 - UTC stop time: 2035-06-02T00:00:00.000
 - Nb of pts: 1,441

or you can explicit add an instrument argument to the TourConfig:

TourConfig(
    mk='5.1 150lb_23_1',
    spacecraft='JUICE',
    instrument='JANUS',
    target='Ganymede',
    version='v422_20230130_002',
)['2035-06-01':'2035-06-02']
<InstrumentTrajectory> Observer: JUICE_JANUS | Target: GANYMEDE
 - UTC start time: 2035-06-01T00:00:00.000
 - UTC stop time: 2035-06-02T00:00:00.000
 - Nb of pts: 1,441

In both cases, you will get an InstrumentTrajectory (rather than an SpacecraftTrajectory).