Class Trim_Values

  extended by HiRISE.HiPlan.HOGG.Trim_Values

public class Trim_Values
extends Object

The trim values for the HiRISE CCDs. The HiRISE focal plane array is arranged such that the CCDs are offset from one another in both the cross-track and along-track directions. The HiRISE flight software, however, starts the exposures of each CCD simultaneously, which results in some CCDs exposing lines that will not overlap with others in the same CCD column.

For example, BG13, RED5, and IR11 are in the same exposure column. A feature that appears in RED5's field of view will appear in that of BG13 and IR11 as well. They are, however, offset from each other in the along-track direction, with BG13 being the definition of the origin of the along-track axis. BG13 is offset at 0 lines. RED5 is offset 1214 lines. IR11 is offset 2396 lines. When HiRISE begins an exposure that uses all three CCDs, each CCD starts exposing at the same time. Because of the along-track offset, however, IR11 will expose 2396 lines of image that BG13 cannot expose.

These excess lines are thrown away by the HiRISE flight software; they are "trimmed" from the image data. This class contains a set of static methods that access the HiRISE trim values.

Note: There's some confusion about the nature of trim. It is sometimes referred to as "commanded trim lines," particularly in the canonical "HiRISE Observation Timeline for a CCD" diagram. There is no trim command for HiRISE. The trim values are stored as patchable constants, so they can theoretically be changed, but there is no reason to do so: The trim values represent a constant physical property of the instrument - the along-track offset of each of the CCDs. The offset cannot be changed, so the trim values should never be changed.

Trim Lines:

        RED0    1789
        RED1    1214
        RED2    1836
        RED3    1214
        RED4    1797
        RED5    1214
        RED6    1812
        RED7    1214
        RED8    1789
        RED9    1182
        IR10    3003
        IR11    2396
        BG12    607
        BG13    0

Christian Schaller - UA/PIRL

Field Summary
static String ID
          Class identification name with source code version and date.
static int[] TRIM_BY_CPMM
          The trim values ordered by CPMM number.
Method Summary
static int getBG12Trim()
          Gets the trim for BG12.
static int getBG13Trim()
          Gets the trim for BG13.
static int getIR10Trim()
          Gets the trim for IR10.
static int getIR11Trim()
          Gets the trim for IR11.
static int getRED0Trim()
          Gets the trim for RED0.
static int getRED1Trim()
          Gets the trim for RED1.
static int getRED2Trim()
          Gets the trim for RED2.
static int getRED3Trim()
          Gets the trim for RED3.
static int getRED4Trim()
          Gets the trim for RED4.
static int getRED5Trim()
          Gets the trim for RED5.
static int getRED6Trim()
          Gets the trim for RED6.
static int getRED7Trim()
          Gets the trim for RED7.
static int getRED8Trim()
          Gets the trim for RED8.
static int getRED9Trim()
          Gets the trim for RED9.
static int getTrim(int cpmm)
          Gets the trim value for the indicated CPMM.
static int getTrim(String ccd)
          Gets the trim value for the indicated CCD.
static void main(String[] args)
          Prints the HiRISE trim values to the standard output and exits.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Detail


public static final String ID
Class identification name with source code version and date.

See Also:
Constant Field Values


public static final int[] TRIM_BY_CPMM
The trim values ordered by CPMM number. Use Utilities.getCcdNameIndex(String) to map the CCD name to the CPMM number.

Method Detail


public static int getTrim(String ccd)
Gets the trim value for the indicated CCD.

If ccd is not a valid CCD name, this method returns a -1.

ccd - the name of the CCD in question.
the trim value for the indicated CCD, or -1 if the CCD name is not valid.


public static int getTrim(int cpmm)
Gets the trim value for the indicated CPMM. Note that CPMM number is not the same as the index in a CCD's name.

If the CPMM number is not valid, a -1 is returned instead. There are 14 CPMMs; the CPMM number must be between 0 and 13, inclusive.

cpmm - the CPMM number in question.
the trim value for the indicated CPMM, or -1 if the CPMM number is not valid.


public static int getRED0Trim()
Gets the trim for RED0. Return the trim for RED0 (1789 lines).


public static int getRED1Trim()
Gets the trim for RED1. Return the trim for RED1 (1214 lines).


public static int getRED2Trim()
Gets the trim for RED2. Return the trim for RED2 (1836 lines).


public static int getRED3Trim()
Gets the trim for RED3. Return the trim for RED3 (1214 lines).


public static int getRED4Trim()
Gets the trim for RED4. Return the trim for RED4 (1797 lines).


public static int getRED5Trim()
Gets the trim for RED5. Return the trim for RED5 (1214 lines).


public static int getRED6Trim()
Gets the trim for RED6. Return the trim for RED6 (1812 lines).


public static int getRED7Trim()
Gets the trim for RED7. Return the trim for RED7 (1214 lines).


public static int getRED8Trim()
Gets the trim for RED8. Return the trim for RED8 (1789 lines).


public static int getRED9Trim()
Gets the trim for RED9. Return the trim for RED9 (1182 lines).


public static int getIR10Trim()
Gets the trim for IR10. Return the trim for IR10 (3003 lines).


public static int getIR11Trim()
Gets the trim for IR11. Return the trim for IR11 (2396 lines).


public static int getBG12Trim()
Gets the trim for BG12. Return the trim for BG12 (607 lines).


public static int getBG13Trim()
Gets the trim for BG13. Return the trim for BG13 (0 lines).


public static void main(String[] args)
Prints the HiRISE trim values to the standard output and exits. This method prints them first in CPMM order and then in CCD order. Finally, it prints them in CCD order using the getXXXXTrim methods.

args - unused.


Copyright (C) Arizona Board of Regents on behalf of the Planetary Image Research Laboratory, Lunar and Planetary Laboratory at the University of Arizona