Terrenus HRPT v2.2

terrenus.instrument
Class MVISRCalibrator

java.lang.Object
  extended by terrenus.instrument.AbstractRadiometerCalibrator
      extended by terrenus.instrument.MVISRCalibrator
All Implemented Interfaces:
RadiometerCalibrator

public class MVISRCalibrator
extends AbstractRadiometerCalibrator

The MVISRCalibrator class uses a CHRPTDecoder to compute MVISR calibration coefficients for a CMA CHRPT data file. A new set of calibration coefficients may be generated for a user-specified number of consecutive MVISR scan lines. Calibration data is generated using the methods described in the NOAA KLM User's Guide, http://www2.ncdc.noaa.gov/docs/klm/index.htm.

The Record class holds calibration data for one set of consecutive MVISR scan lines. For visible channels 1, 2, 6, 7, 8, 9, and 10, five coefficients are supplied as: [slope, intercept]. Visible albedo in percent may be computed from count value using the equation: albedo = count*slope + intercept. For thermal channels 3, 4, and 5, three coefficients are supplied as follows: [a0, a1, a2]. Thermal radiance in mW/(m2.sr.cm-1) may be computed from count value using the equation: radiance = a0 + a1*count + a2*count^2.


Nested Class Summary
 
Nested classes/interfaces inherited from interface terrenus.instrument.RadiometerCalibrator
RadiometerCalibrator.CalibrationType, RadiometerCalibrator.Record
 
Constructor Summary
MVISRCalibrator(CHRPTDecoder decoder)
          Creates a new calibrator.
 
Method Summary
 void calibrate(int[] countData, double[] calData, int channel, RadiometerCalibrator.CalibrationType calType, RadiometerCalibrator.Record record)
          Calibrates radiometer data from raw count data to scientific units.
 RadiometerCalibrator.Record getCalibration(int startLine, int endLine)
          Gets the calibration record for the specified scan line range.
static void main(java.lang.String[] argv)
          Tests this class.
 
Methods inherited from class terrenus.instrument.AbstractRadiometerCalibrator
getCalibration
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MVISRCalibrator

public MVISRCalibrator(CHRPTDecoder decoder)
Creates a new calibrator.

Parameters:
decoder - the decoder to use for data calibration.
Method Detail

calibrate

public void calibrate(int[] countData,
                      double[] calData,
                      int channel,
                      RadiometerCalibrator.CalibrationType calType,
                      RadiometerCalibrator.Record record)
Description copied from interface: RadiometerCalibrator
Calibrates radiometer data from raw count data to scientific units.

Parameters:
countData - the raw radiometer count data.
calData - the output calibrated data.
channel - the channel to calibrate in the range [1..CHANNELS].
calType - the calibration type to apply.
record - the calibration record to use.

getCalibration

public RadiometerCalibrator.Record getCalibration(int startLine,
                                                  int endLine)
                                           throws java.io.IOException
Description copied from interface: RadiometerCalibrator
Gets the calibration record for the specified scan line range. Only scan lines in the specified range are used to compute the calibration record.

Parameters:
startLine - the starting scan line for calibration.
endLine - the ending scan line for calibration.
Returns:
the calibration record or null if one could not be computed.
Throws:
java.io.IOException - if a problem occurred accessing the data.

main

public static void main(java.lang.String[] argv)
                 throws java.lang.Exception
Tests this class.

Throws:
java.lang.Exception

Terrenus HRPT v2.2