Creates a new file with math band(s) based on an input source file with the option to retain source file bands in the new file. |
Example 1 Create only Math Bands
This creates a new file based off an input source file adding math band(s) to it (the bands and masks of the source file are not transferred to the output file).
Command Line Entry
gpt BandMathsGraphEx01.xml -p BandMathsEx01.par -Pifile=A2010283180500.L2_LAC_OC.nc -Pofile=A2010283180500.L2_LAC_OC_BandMathsEx01.dim |
File = BandMathsGraphEx01.xml
<graph id="BandMathsGraphEx01"> <version>1.0</version> <node id="Read"> <operator>Read</operator> <sources/> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>${ifile}</file> <formatName>SeaDAS-L2</formatName> </parameters> </node> <node id="BandMaths"> <operator>BandMaths</operator> <sources> <sourceProduct refid="Read"/> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <targetBands> <targetBand> <name>${band1Name}</name> <type>${band1Type}</type> <expression>${band1Expression}</expression> <description>${band1Description}</description> <unit>${band1Unit}</unit> <validExpression>${band1ValidExpression}</validExpression> <noDataValue>${band1NoDataValue}</noDataValue> <spectralWavelength>${band1SpectralWavelength}</spectralWavelength> <spectralBandwidth>${band1SpectralBandwidth}</spectralBandwidth> </targetBand> </targetBands> </parameters> </node> <node id="Write"> <operator>Write</operator> <sources> <sourceProduct refid="BandMaths"/> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>${ofile}</file> <formatName>BEAM-DIMAP</formatName> </parameters> </node> </graph> |
File = BandMathsEx01.par
band1Name=aod band1Type=float64 band1Expression=if (Kd_490 > 0) then 1.3/Kd_490 else NaN band1Description=apparent optical depth band1Unit=meters band1ValidExpression=aod > (1.3/6.0) and aod < (1.3/0.01) band1NoDataValue=-0.19837031 band1SpectralWavelength=490.0 band1SpectralBandwidth=10.0 |
Here is what example 1 would look like if you use the GUI, in which case there are no variables. The following graph will load into the GUI via the GraphBuilder tool (note: you need to edit the ifile and ofile paths).
Also note that 3 fields of the BandMaths tool are not available within the GUI but are available at the command line: validExpression, spectralWavelength, and spectralBandwidth.
File = BandMathsGraphGUIEx01.xml
<graph id="Graph"> <version>1.0</version> <node id="Read"> <operator>Read</operator> <sources/> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>/Users/seadas/GPT_Cookbook/BandMathsEx01/A2010283180500.L2_LAC_OC.nc</file> <formatName>SeaDAS-L2</formatName> </parameters> </node> <node id="BandMaths"> <operator>BandMaths</operator> <sources> <sourceProduct refid="Read"/> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <targetBands> <targetBand> <name>aod</name> <type>float32</type> <expression>if (Kd_490 > 0) then 1.3/Kd_490 else NaN</expression> <description/> <unit>meters</unit> <noDataValue>-0.19837031</noDataValue> </targetBand> </targetBands> <variables/> </parameters> </node> <node id="Write"> <operator>Write</operator> <sources> <sourceProduct refid="BandMaths"/> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>/Users/seadas/GPT_Cookbook/BandMathsEx01/A2010283180500.L2_LAC_OC.nc_BandMath.dim</file> <formatName>BEAM-DIMAP</formatName> </parameters> </node> <applicationData id="Presentation"> <Description/> <node id="Read"> <displayPosition x="37.0" y="134.0"/> </node> <node id="BandMaths"> <displayPosition x="230.0" y="226.0"/> </node> <node id="Write"> <displayPosition x="455.0" y="135.0"/> </node> </applicationData> </graph> |
Example 2 Create Math Band(s) plus chlor_a and Kd_490
This creates a new file based off an input source file adding to it Chlor_a, Kd_490 and math band(s) (the bands and masks of the source file are not transferred to the output file).
Command Line Entry
gpt BandMathsGraphEx02.xml -p BandMathsEx02.par -Pifile=A2010283180500.L2_LAC_OC.nc -Pofile=A2010283180500.L2_LAC_OC_BandMathsEx02.dim |
File = BandMathsGraphEx02.xml
<graph id="BandMathsGraphEx02"> <version>1.0</version> <node id="Read"> <operator>Read</operator> <sources/> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>${ifile}</file> <formatName>SeaDAS-L2</formatName> </parameters> </node> <node id="BandMaths"> <operator>BandMaths</operator> <sources> <sourceProduct refid="Read"/> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <targetBands> <targetBand> <name>${band1Name}</name> <type>${band1Type}</type> <expression>${band1Expression}</expression> <description>${band1Description}</description> <unit>${band1Unit}</unit> <validExpression>${band1ValidExpression}</validExpression> <noDataValue>${band1NoDataValue}</noDataValue> <spectralWavelength>${band1SpectralWavelength}</spectralWavelength> <spectralBandwidth>${band1SpectralBandwidth}</spectralBandwidth> </targetBand> <targetBand> <name>chlor_a</name> <type>float64</type> <expression>chlor_a</expression> <description>Chlorophyll Concentration, OCI algorithm</description> <unit>mg m^-3</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>0.0</spectralWavelength> </targetBand> <targetBand> <name>Kd_490</name> <type>float64</type> <expression>Kd_490</expression> <description>Diffuse attenuation coefficient at 498 nm, KD2 algorithm</description> <unit>m^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>490.0</spectralWavelength> </targetBand> </targetBands> </parameters> </node> <node id="Write"> <operator>Write</operator> <sources> <sourceProduct refid="BandMaths"/> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>${ofile}</file> <formatName>BEAM-DIMAP</formatName> </parameters> </node> </graph> |
File = BandMathsEx02.par
band1Name=aod band1Type=float64 band1Expression=if (Kd_490 > 0) then 1.3/Kd_490 else NaN band1Description=apparent optical depth band1Unit=meters band1ValidExpression=Kd_490 >= 0.01000 and Kd_490 <= 6.00000 band1NoDataValue=-0.19837031 band1SpectralWavelength=490.0 band1SpectralBandwidth=10.0 |
Example 3 Create Math Band and Retain chlor_a and Kd_490 Bands (Variables Option)
This creates a copy of a file adding math band(s), chlor_a and Kd_490 bands to it.
This is exactly the same as example 2 except it illustrates the use of the variable options.
Note: variables only apply to parameter "expression" and not to parameter "validExpression".
Command Line Entry
gpt BandMathsGraphEx03.xml -p BandMathsEx03.par -Pifile=A2010283180500.L2_LAC_OC.nc -Pofile=A2010283180500.L2_LAC_OC_BandMathsEx03.dim |
File = BandMathsGraphEx03.xml
<graph id="BandMathsGraphEx03"> <version>1.0</version> <node id="Read"> <operator>Read</operator> <sources/> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>${ifile}</file> <formatName>SeaDAS-L2</formatName> </parameters> </node> <node id="BandMaths"> <operator>BandMaths</operator> <sources> <sourceProduct refid="Read"/> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <targetBands> <targetBand> <name>${band1Name}</name> <type>${band1Type}</type> <expression>${band1Expression}</expression> <description>${band1Description}</description> <unit>${band1Unit}</unit> <validExpression>${band1ValidExpression}</validExpression> <noDataValue>${band1NoDataValue}</noDataValue> <spectralWavelength>${band1SpectralWavelength}</spectralWavelength> <spectralBandwidth>${band1SpectralBandwidth}</spectralBandwidth> </targetBand> <targetBand> <name>chlor_a</name> <type>float64</type> <expression>chlor_a</expression> <description>Chlorophyll Concentration, OCI algorithm</description> <unit>mg m^-3</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>0.0</spectralWavelength> </targetBand> <targetBand> <name>Kd_490</name> <type>float64</type> <expression>Kd_490</expression> <description>Diffuse attenuation coefficient at 498 nm, KD2 algorithm</description> <unit>m^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>490.0</spectralWavelength> </targetBand> </targetBands> <variables> <variable> <name>${var1Name}</name> <type>${var1Type}</type> <value>${var1Value}</value> </variable> </variables> </parameters> </node> <node id="Write"> <operator>Write</operator> <sources> <sourceProduct refid="BandMaths"/> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>${ofile}</file> <formatName>BEAM-DIMAP</formatName> </parameters> </node> </graph> |
File = BandMathsEx03.par
copySourceFile=true band1Name=aod band1Type=float64 band1Expression=if (Kd_490 > 0) then (AOD_KD490_FACTOR/Kd_490) else NaN band1Description=apparent optical depth band1Unit=meters band1ValidExpression=Kd_490 >= 0.01000 and Kd_490 <= 6.00000 band1NoDataValue=-0.19837031 band1SpectralWavelength=490.0 band1SpectralBandwidth=10.0 var1Name=AOD_KD490_FACTOR var1Type=float64 var1Value=1.3 |
Example 4 Remove the "_count" Bands from a Mosaic File (OC Level2)
For each band in a Mosaic file there is a corresponding "count" band used in its validPixelExpression (for instance the chlor_a band sets it's validPixelExpression based on the chlor_a_count band: expr= chlor_a_count > 0). In this example we take a Mosaic file and by using the BandMaths operator to apply the validPixelExpression, we create a new file which does not contain these "count" bands.
This example is doing the full set of 20 bands in the OC suite (Note: this example has been prepared during the SeaDAS 7.5 release, so any product changes in the future for the OC suite are not accounted for here).
The source file A2017023193500_MosaicEx05.dim used here was produced by Mosaic Example 5
Command Line Entry
gpt BandMathsGraphEx04.xml -p BandMathsEx04.par -Pifile=A2017023193500_MosaicEx05.dim -Pofile=A2017023193500_BandMathsEx04.dim |
File = BandMathsGraphEx04.xml
<graph id="BandMathsGraphEx04"> <version>1.0</version> <node id="Read"> <operator>Read</operator> <sources/> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>${ifile}</file> <formatName>BEAM-DIMAP</formatName> </parameters> </node> <node id="BandMaths"> <operator>BandMaths</operator> <sources> <sourceProduct refid="Read"> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <targetBands> <targetBand> <name>${band1Name}</name> <type>float64</type> <expression>if (${band1Name}_count > 0) then ${band1Name} else ${noDataValue}</expression> <description>${band1Description}</description> <unit>${band1Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band1SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band2Name}</name> <type>float64</type> <expression>if (${band2Name}_count > 0) then ${band2Name} else ${noDataValue}</expression> <description>${band2Description}</description> <unit>${band2Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band2SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band3Name}</name> <type>float64</type> <expression>if (${band3Name}_count > 0) then ${band3Name} else ${noDataValue}</expression> <description>${band3Description}</description> <unit>${band3Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band3SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band4Name}</name> <type>float64</type> <expression>if (${band4Name}_count > 0) then ${band4Name} else ${noDataValue}</expression> <description>${band4Description}</description> <unit>${band4Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band4SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band5Name}</name> <type>float64</type> <expression>if (${band5Name}_count > 0) then ${band5Name} else ${noDataValue}</expression> <description>${band5Description}</description> <unit>${band5Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band5SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band6Name}</name> <type>float64</type> <expression>if (${band6Name}_count > 0) then ${band6Name} else ${noDataValue}</expression> <description>${band6Description}</description> <unit>${band6Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band6SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band7Name}</name> <type>float64</type> <expression>if (${band7Name}_count > 0) then ${band7Name} else ${noDataValue}</expression> <description>${band7Description}</description> <unit>${band7Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band7SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band8Name}</name> <type>float64</type> <expression>if (${band8Name}_count > 0) then ${band8Name} else ${noDataValue}</expression> <description>${band8Description}</description> <unit>${band8Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band8SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band9Name}</name> <type>float64</type> <expression>if (${band9Name}_count > 0) then ${band9Name} else ${noDataValue}</expression> <description>${band9Description}</description> <unit>${band9Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band9SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band10Name}</name> <type>float64</type> <expression>if (${band10Name}_count > 0) then ${band10Name} else ${noDataValue}</expression> <description>${band10Description}</description> <unit>${band10Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band10SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band11Name}</name> <type>float64</type> <expression>if (${band11Name}_count > 0) then ${band11Name} else ${noDataValue}</expression> <description>${band11Description}</description> <unit>${band11Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band11SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band12Name}</name> <type>float64</type> <expression>if (${band12Name}_count > 0) then ${band12Name} else ${noDataValue}</expression> <description>${band12Description}</description> <unit>${band12Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band12SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band13Name}</name> <type>float64</type> <expression>if (${band13Name}_count > 0) then ${band13Name} else ${noDataValue}</expression> <description>${band13Description}</description> <unit>${band13Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band13SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band14Name}</name> <type>float64</type> <expression>if (${band14Name}_count > 0) then ${band14Name} else ${noDataValue}</expression> <description>${band14Description}</description> <unit>${band14Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band14SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band15Name}</name> <type>float64</type> <expression>if (${band15Name}_count > 0) then ${band15Name} else ${noDataValue}</expression> <description>${band15Description}</description> <unit>${band15Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band15SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band16Name}</name> <type>float64</type> <expression>if (${band16Name}_count > 0) then ${band16Name} else ${noDataValue}</expression> <description>${band16Description}</description> <unit>${band16Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band16SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band17Name}</name> <type>float64</type> <expression>if (${band17Name}_count > 0) then ${band17Name} else ${noDataValue}</expression> <description>${band17Description}</description> <unit>${band17Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band17SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band18Name}</name> <type>float64</type> <expression>if (${band18Name}_count > 0) then ${band18Name} else ${noDataValue}</expression> <description>${band18Description}</description> <unit>${band18Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band18SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band19Name}</name> <type>float64</type> <expression>if (${band19Name}_count > 0) then ${band19Name} else ${noDataValue}</expression> <description>${band19Description}</description> <unit>${band19Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band19SpectralWavelength}</spectralWavelength> </targetBand> <targetBand> <name>${band20Name}</name> <type>float64</type> <expression>if (${band20Name}_count > 0) then ${band20Name} else ${noDataValue}</expression> <description>${band20Description}</description> <unit>${band20Unit}</unit> <noDataValue>${noDataValue}</noDataValue> <spectralWavelength>${band20SpectralWavelength}</spectralWavelength> </targetBand> </targetBands> </parameters> </node> <node id="Write"> <operator>Write</operator> <sources> <sourceProduct refid="BandMaths"/> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>${ofile}</file> <formatName>BEAM-DIMAP</formatName> </parameters> </node> </graph> |
File = BandMathsEx04.par
noDataValue=NaN band1Name=aot_869 band1Description=Aerosol optical thickness at 869 nm band1Unit= band1SpectralWavelength=869 band2Name=angstrom band2Description=Aerosol Angstrom exponent, 443 to 865 nm band2Unit= band2SpectralWavelength=0.0 band3Name=chlor_a band3Description=Chlorophyll Concentration, OCI Algorithm band3Unit=mg m^-3 band3SpectralWavelength=0.0 band4Name=chl_ocx band4Description=Chlorophyll Concentration, OC3 Algorithm band4Unit=mg m^-3 band4SpectralWavelength=0.0 band5Name=ipar band5Description=Instantaneous Photosynthetically Available Radiation band5Unit=einstein m^-2 s^-1 band5SpectralWavelength=0.0 band6Name=Kd_490 band6Description=Diffuse attenuation coefficient at 490 nm, KD2 algorithm band6Unit=m^-1 band6SpectralWavelength=490.0 band7Name=nflh band7Description=Normalized Fluorescence Line Height band7Unit=W m^-2 um^-1 sr^-1 band7SpectralWavelength=0.0 band8Name=Rrs_412 band8Description=Remote sensing reflectance at 412 nm band8Unit=sr^-1 band8SpectralWavelength=412 band9Name=Rrs_443 band9Description=Remote sensing reflectance at 443 nm band9Unit=sr^-1 band9SpectralWavelength=443 band10Name=Rrs_469 band10Description=Remote sensing reflectance at 469 nm band10Unit=sr^-1 band10SpectralWavelength=469 band11Name=Rrs_488 band11Description=Remote sensing reflectance at 488 nm band11Unit=sr^-1 band11SpectralWavelength=488 band12Name=Rrs_531 band12Description=Remote sensing reflectance at 531 nm band12Unit=sr^-1 band12SpectralWavelength=531 band13Name=Rrs_547 band13Description=Remote sensing reflectance at 547 nm band13Unit=sr^-1 band13SpectralWavelength=547 band14Name=Rrs_555 band14Description=Remote sensing reflectance at 555 nm band14Unit=sr^-1 band14SpectralWavelength=555 band15Name=Rrs_645 band15Description=Remote sensing reflectance at 645 nm band15Unit=sr^-1 band15SpectralWavelength=645 band16Name=Rrs_667 band16Description=Remote sensing reflectance at 667 nm band16Unit=sr^-1 band16SpectralWavelength=667 band17Name=Rrs_678 band17Description=Remote sensing reflectance at 678 nm band17Unit=sr^-1 band17SpectralWavelength=678 band18Name=par band18Description=Photosynthetically Available Radiation, R. Frouin band18Unit=einstein m^-2 day^-1 band18SpectralWavelength=0.0 band19Name=pic band19Description=Calcite Concentration, Balch and Gordon band19Unit=mol m^-3 band19SpectralWavelength=0.0 band20Name=poc band20Description=Particulate Organic Carbon, D. Stramski, 2007 (443/555 version) band20Unit=mg m^-3 band20SpectralWavelength=0.0 |
Example 5 Create Math Band(s) and Retain all OC Bands
This creates a new file based off an input source file adding to it math band(s) and the 20 OC bands(the masks of the source file are not transferred to the output file).
Command Line Entry
gpt BandMathsGraphEx05.xml -p BandMathsEx05.par -Pifile=A2010283180500.L2_LAC_OC.nc -Pofile=A2010283180500.L2_LAC_OC_BandMathsEx05.dim |
File = BandMathsGraphEx05.xml
<graph id="BandMathsGraphEx05"> <version>1.0</version> <node id="Read"> <operator>Read</operator> <sources/> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>${ifile}</file> <formatName>SeaDAS-L2</formatName> </parameters> </node> <node id="BandMaths"> <operator>BandMaths</operator> <sources> <sourceProduct refid="Read"/> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <targetBands> <targetBand> <name>${band1Name}</name> <type>${band1Type}</type> <expression>${band1Expression}</expression> <description>${band1Description}</description> <unit>${band1Unit}</unit> <validExpression>${band1ValidExpression}</validExpression> <noDataValue>${band1NoDataValue}</noDataValue> <spectralWavelength>${band1SpectralWavelength}</spectralWavelength> <spectralBandwidth>${band1SpectralBandwidth}</spectralBandwidth> </targetBand> <targetBand> <name>aot_869</name> <type>float64</type> <expression>aot_869</expression> <description>Aerosol optical thickness at 869 nm</description> <unit/> <noDataValue>NaN</noDataValue> <spectralWavelength>869</spectralWavelength> </targetBand> <targetBand> <name>angstrom</name> <type>float64</type> <expression>angstrom</expression> <description>Aerosol Angstrom exponent, 443 to 865 nm</description> <unit/> <noDataValue>NaN</noDataValue> <spectralWavelength>0.0</spectralWavelength> </targetBand> <targetBand> <name>chlor_a</name> <type>float64</type> <expression>chlor_a</expression> <description>Chlorophyll Concentration, OCI algorithm</description> <unit>mg m^-3</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>0.0</spectralWavelength> </targetBand> <targetBand> <name>chl_ocx</name> <type>float64</type> <expression>chl_ocx</expression> <description>Chlorophyll Concentration, OC3 algorithm</description> <unit>mg m^-3</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>0.0</spectralWavelength> </targetBand> <targetBand> <name>ipar</name> <type>float64</type> <expression>ipar</expression> <description>Instantaneous Photosynthetically Available Radiation</description> <unit>einstein m^-2 s^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>0.0</spectralWavelength> </targetBand> <targetBand> <name>Kd_490</name> <type>float64</type> <expression>Kd_490</expression> <description>Diffuse attenuation coefficient at 498 nm, KD2 algorithm</description> <unit>m^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>490.0</spectralWavelength> </targetBand> <targetBand> <name>nflh</name> <type>float64</type> <expression>nflh</expression> <description>Normalized Fluorescence Line Height</description> <unit>W m^-2 um^-1 sr^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>0.0</spectralWavelength> </targetBand> <targetBand> <name>Rrs_412</name> <type>float64</type> <expression>Rrs_412</expression> <description>Remote sensing reflectance at 412 nm</description> <unit>sr^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>412</spectralWavelength> </targetBand> <targetBand> <name>Rrs_443</name> <type>float64</type> <expression>Rrs_443</expression> <description>Remote sensing reflectance at 443 nm</description> <unit>sr^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>443</spectralWavelength> </targetBand> <targetBand> <name>Rrs_469</name> <type>float64</type> <expression>Rrs_469</expression> <description>Remote sensing reflectance at 469 nm</description> <unit>sr^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>469</spectralWavelength> </targetBand> <targetBand> <name>Rrs_488</name> <type>float64</type> <expression>Rrs_488</expression> <description>Remote sensing reflectance at 488 nm</description> <unit>sr^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>488</spectralWavelength> </targetBand> <targetBand> <name>Rrs_531</name> <type>float64</type> <expression>Rrs_531</expression> <description>Remote sensing reflectance at 531 nm</description> <unit>sr^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>531</spectralWavelength> </targetBand> <targetBand> <name>Rrs_547</name> <type>float64</type> <expression>Rrs_547</expression> <description>Remote sensing reflectance at 547 nm</description> <unit>sr^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>547</spectralWavelength> </targetBand> <targetBand> <name>Rrs_555</name> <type>float64</type> <expression>Rrs_555</expression> <description>Remote sensing reflectance at 555 nm</description> <unit>sr^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>555</spectralWavelength> </targetBand> <targetBand> <name>Rrs_645</name> <type>float64</type> <expression>Rrs_645</expression> <description>Remote sensing reflectance at 645 nm</description> <unit>sr^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>645</spectralWavelength> </targetBand> <targetBand> <name>Rrs_667</name> <type>float64</type> <expression>Rrs_667</expression> <description>Remote sensing reflectance at 667 nm</description> <unit>sr^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>667</spectralWavelength> </targetBand> <targetBand> <name>Rrs_678</name> <type>float64</type> <expression>Rrs_678</expression> <description>Remote sensing reflectance at 678 nm</description> <unit>sr^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>678</spectralWavelength> </targetBand> <targetBand> <name>par</name> <type>float64</type> <expression>par</expression> <description>Photosynthetically Available Radiation, R. Frouin</description> <unit>einstein m^-2 day^-1</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>0.0</spectralWavelength> </targetBand> <targetBand> <name>pic</name> <type>float64</type> <expression>pic</expression> <description>Calcite Concentration, Balch and Gordon</description> <unit>mol m^-3</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>0.0</spectralWavelength> </targetBand> <targetBand> <name>poc</name> <type>float64</type> <expression>poc</expression> <description>Particulate Organic Carbon, D. Stramski, 2007 (443/555 version)</description> <unit>mg m^-3</unit> <noDataValue>NaN</noDataValue> <spectralWavelength>0.0</spectralWavelength> </targetBand> </targetBands> </parameters> </node> <node id="Write"> <operator>Write</operator> <sources> <sourceProduct refid="BandMaths"/> </sources> <parameters class="com.bc.ceres.binding.dom.XppDomElement"> <file>${ofile}</file> <formatName>BEAM-DIMAP</formatName> </parameters> </node> </graph> |
File = BandMathsEx05.par
band1Name=aod band1Type=float64 band1Expression=if (Kd_490 > 0) then 1.3/Kd_490 else NaN band1Description=apparent optical depth band1Unit=meters band1ValidExpression=Kd_490 >= 0.01000 and Kd_490 <= 6.00000 band1NoDataValue=-0.19837031 band1SpectralWavelength=490.0 band1SpectralBandwidth=10.0 |