Inheritance diagram for javawrapper::LightBehaviors:
Public Member Functions | |
LightBehaviors (GUIManager oManager) throws ModelException | |
Constructor. | |
void | AddGLIPointsFile (String sFileName) throws ModelException |
Adds the points from a tab-delimited text GLI points file. | |
void | DoSetup (TreePopulation oPop) throws ModelException |
Resets the points list. | |
boolean | SetVectorValueByXMLTag (String sXMLTag, String sXMLParentTag, java.util.Vector p_oData, String[] p_sChildXMLTags, boolean[] p_bAppliesTo, Attributes oParentAttributes, Attributes[] p_oAttributes) throws ModelException |
Overridden to make sure that only light values that apply to light behaviors are set. | |
void | WriteXML (BufferedWriter jOut, TreePopulation oPop) throws ModelException |
Writes the settings in XML to a parameter file. | |
void | ValidateData (TreePopulation oPop) throws ModelException |
Validates the data prior to its use in, for instance, a parameter file. | |
void | ReadXMLParentTag (String sXMLTag, Attributes oAttributes) throws ModelException |
Accepts an XML parent tag (empty, no data) from the parser. | |
boolean | SetSingleValueByXMLTag (String sXMLTag, String sXMLParentTag, Attributes oAttributes, Object oData) throws ModelException |
Makes sure values go to the correct behavior. | |
Static Public Attributes | |
static final int | MID_CROWN = 0 |
Value for fisheye photo taken at mid-crown - MUST match the enum value from the C++ code. | |
static final int | CROWN_TOP = 1 |
Value for fisheye photo taken at crown top - MUST match the enum value from the C++ code. | |
static final int | ALL_HEIGHT = 0 |
Value for sail light shading neighbor crown depths being approximated as extending the full height of the tree - MUST match the enum value from the C++ code. | |
static final int | FRAC_HEIGHT = 1 |
Value for sail light shading neighbor crown depths having their normal depth - MUST match the enum value from the C++ code. | |
Protected Attributes | |
ModelVector | mp_fLightTransmissionCoefficient |
Species-specific - light transmission coefficient. | |
ModelVector | mp_fSnagClass1LightTransmissionCoefficient |
Species-specific - snag age class 1 light transmission coefficient. | |
ModelVector | mp_fSnagClass2LightTransmissionCoefficient |
Species-specific - snag age class 2 light transmission coefficient. | |
ModelVector | mp_fSnagClass3LightTransmissionCoefficient |
Species-specific - snag age class 3 light transmission coefficient. | |
ModelVector | mp_iBasalAreaLightWhatType |
Basal area light - tree type: angiosperm (0) or conifer (1). | |
ModelFloat | m_fBeamFractionOfGlobalRadiation |
Beam fraction of global radiation. | |
ModelFloat | m_fClearSkyTransmissionCoefficient |
Clear sky transmission coefficient. | |
ModelFloat | m_fGLIMinSunAngle |
Minimum sun angle in radians. | |
ModelFloat | m_fQuadratMinSunAngle |
Minimum sun angle in radians for quadrat, if different from GLI. | |
ModelFloat | m_fMapMinSunAngle |
Minimum sun angle in radians for GLI map, if different from others. | |
ModelFloat | m_fPointsMinSunAngle |
Minimum sun angle in radians for GLI points, if different from others. | |
ModelFloat | m_fQuadratLightHeight |
Height at which GLI is calculated in quadrats. | |
ModelFloat | m_fMapLightHeight |
Height at which GLI is calculated for GLI Map Creator. | |
ModelFloat | m_fSailLightMaxShadingRadius |
Maximum shading radius for sail light. | |
ModelFloat | m_fSailLightMaskAngle |
Minimum sun angle in degrees. | |
ModelFloat | m_fFilterLightTransmissionCoefficient |
Light transmission coefficient for the light filter. | |
ModelFloat | m_fFilterHeight |
Height of light filter, in meters. | |
ModelFloat | m_fStmLightMaxRadius |
Storm light - max radius of storm neighbors, in meters. | |
ModelFloat | m_fStmLightSlope |
Storm light - slope of light function. | |
ModelFloat | m_fStmLightIntercept |
Storm light - intercept of light function. | |
ModelFloat | m_fStmLightMinCanopyTrees |
Storm light - minimum number of trees for full canopy. | |
ModelFloat | m_fStmLightRandPar |
Storm light - standard deviation or clumping parameter. | |
ModelFloat | m_fBasalAreaLightA |
Basal area light "a" parameter for calculating mean GLI from basal area. | |
ModelFloat | m_fBasalAreaLightConiferB |
Basal area light conifer "b" parameter for calculating mean GLI from basal area. | |
ModelFloat | m_fBasalAreaLightConiferC |
Basal area light conifer "c" parameter for calculating mean GLI from basal area. | |
ModelFloat | m_fBasalAreaLightAngiospermB |
Basal area light angiosperm "b" parameter for calculating mean GLI from basal area. | |
ModelFloat | m_fBasalAreaLightAngiospermC |
Basal area light angiosperm "c" parameter for calculating mean GLI from basal area. | |
ModelFloat | m_fBasalAreaLightSigma |
Basal area light sigma parameter for lognormal PDF. | |
ModelFloat | m_fBasalAreaLightMinDBH |
Basal area light minimum DBH (cm) for a tree counting towards the basal area. | |
ModelFloat | m_fBasalAreaLightChangeThreshold |
Basal area light basal threshold, in square meters, for new trees in grid cell for recalculating GLI. | |
ModelString | m_sGLIPointsInFile = new ModelString("", "GLI Points Input File", "") |
GLI points creator - filename of points input file. | |
ModelString | m_sGLIPointsOutFile = new ModelString("", "GLI Points Output File", "li_GLIPointsFilename") |
GLI points creator - filename of points output file. | |
ModelInt | m_iStmLightMaxDmgTime |
Storm light - max time (years) for damaged trees to influence. | |
ModelInt | m_iStmLightMaxSnagDmgTime |
Storm light - max time (years) for snags to influence. | |
ModelInt | m_iNumGLIAziDiv |
Number of azimuth divisions in sky hemisphere for GLI light calculations. | |
ModelInt | m_iNumGLIAltDiv |
Number of altitude divisions in sky hemisphere for GLI light calculations. | |
ModelInt | m_iNumQuadratAziDiv |
Number of azimuth divisions for quadrat, if different from GLI. | |
ModelInt | m_iNumMapAziDiv |
Number of azimuth divisions for GLI Map Creator, if different from GLI. | |
ModelInt | m_iNumPointsAziDiv |
Number of azimuth divisions for GLI Points Creator, if different from GLI. | |
ModelInt | m_iNumQuadratAltDiv |
Number of altitude divisions for quadrat, if different from GLI. | |
ModelInt | m_iNumMapAltDiv |
Number of altitude divisions for GLI Map Creator, if different from GLI. | |
ModelInt | m_iNumPointsAltDiv |
Number of altitude divisions for GLI Points Creator, if different from GLI. | |
ModelInt | m_iJulianDayGrowthStarts |
Start of growing season as Julian day. | |
ModelInt | m_iJulianDayGrowthEnds |
End of growing season as Julian day. | |
ModelInt | m_iSnagAgeClass1 |
Upper age limit of snag size class 1. | |
ModelInt | m_iSnagAgeClass2 |
Upper age limit of snag size class 2. | |
ModelEnum | m_iHeightOfFishEyePhoto |
Height of fisheye photo - valid values are MID_CROWN and CROWN_TOP. | |
ModelEnum | m_iCrownFractionOfHeight |
What fraction of the height of a shading neighbor its crown covers - valid values are ALL_HEIGHT or FRAC_HEIGHT. | |
Vector | mp_oPoints = new Vector(0) |
Points objects, for GLI points. | |
Private Attributes | |
ModelEnum | m_iStmLightStochasticity |
Storm light - stochasticity. |
Copyright: Copyright (c) 2003 Charles D. Canham
Company: Institute of Ecosystem Studies
|
Constructor.
Edit history: ------------------ April 28, 2004: Submitted in beta version (LEM) |
|
Adds the points from a tab-delimited text GLI points file. Any existing points are overwritten.
Edit history: ------------------ May 11, 2005: Created (LEM) |
|
Resets the points list.
Edit history: ------------------ April 28, 2004: Submitted in beta version (LEM) Implements javawrapper::WorkerBase. |
|
Accepts an XML parent tag (empty, no data) from the parser. This function watches for tag li_GLIPoint.
Edit history: ------------------ May 11, 2005: Submitted in beta version (LEM) Reimplemented from javawrapper::BehaviorTypeBase. |
|
Makes sure values go to the correct behavior. We override this function because some values (number of azimuth angles, number of altitude angles, and minimum sun angle) can apply to any of three behaviors, so we want to make sure they are assigned to the correct one.
Edit history: ------------------ April 28, 2004: Submitted in beta version (LEM) May 11, 2005: Added GLI points stuff (LEM) Reimplemented from javawrapper::BehaviorTypeBase. |
|
Overridden to make sure that only light values that apply to light behaviors are set. There are other behaviors with light values (like Puerto Rico establishment), and this will make sure that those parameters are not "stolen" by light.
Edit history: ------------------ January 7, 2005: Created (LEM) |
|
Validates the data prior to its use in, for instance, a parameter file.
Edit history: ------------------ April 28, 2004: Submitted in beta version (LEM) January 10, 2005: Added GLI Map Creator parameters (LEM) December 8, 2005: Added Density Light parameters (LEM) Implements javawrapper::WorkerBase. |
|
Writes the settings in XML to a parameter file. Overridden because light is special.
Edit history: ------------------ April 28, 2004: Submitted in beta version (LEM) January 10, 2005: Added GLI map settings (LEM) May 11, 2005: Added special stuff for GLI points (LEM) Reimplemented from javawrapper::BehaviorTypeBase. |
|
Initial value: new ModelFloat(0, "Basal Area Light - Mean GLI \"a\" Parameter", "li_baLightA")
|
|
Initial value: new ModelFloat(0, "Basal Area Light - Angiosperm \"b\" Parameter", "li_baAngiospermLightB")
|
|
Initial value: new ModelFloat(0, "Basal Area Light - Angiosperm \"c\" Parameter", "li_baAngiospermLightC")
|
|
Initial value: new ModelFloat(0, "Basal Area Light - Minimum BA Change for New GLI (m2)", "li_baLightChangeThreshold")
|
|
Initial value: new ModelFloat(0, "Basal Area Light - Conifer \"b\" Parameter", "li_baConiferLightB")
|
|
Initial value: new ModelFloat(0, "Basal Area Light - Conifer \"c\" Parameter", "li_baConiferLightC")
|
|
Initial value: new ModelFloat(0, "Basal Area Light - Minimum DBH for Trees", "li_baLightMinDBH")
|
|
Initial value: new ModelFloat(0, "Basal Area Light - Lognormal PDF Sigma", "li_baLightSigma")
|
|
Initial value: new ModelFloat(0, "Beam Fraction of Global Radiation", "li_beamFractGlobalRad")
|
|
Initial value: new ModelFloat(0, "Clear Sky Transmission Coefficient", "li_clearSkyTransCoeff")
|
|
Initial value: new ModelFloat(0, "Height of Light Filter, in m", "lf_heightOfFilter")
|
|
Initial value: new ModelFloat(0, "Light Filter Light Transmission Coefficient", "lf_lightExtinctionCoefficient")
|
|
Initial value: new ModelFloat(0, "Minimum Solar Angle for GLI Light, in rad", "li_minSunAngle")
|
|
Initial value: new ModelFloat( 0, "Height at Which GLI is Calculated for GLI Map, in meters", "li_mapLightHeight")
|
|
Initial value: new ModelFloat(0, "Minimum Solar Angle for GLI Map Creator, in rad", "li_minSunAngle")
|
|
Initial value: new ModelFloat(0, "Minimum Solar Angle for GLI Points Creator, in rad", "li_minSunAngle")
|
|
Initial value: new ModelFloat( (float) 0.675, //default "Height at Which GLI is Calculated for Quadrats, in meters", "li_quadratLightHeight")
|
|
Initial value: new ModelFloat(0, "Minimum Solar Angle for Quadrat Light, in rad", "li_minSunAngle")
|
|
Initial value: new ModelFloat(0, "Sail Light Minimum Solar Angle, in degrees", "li_skyMaskAngle")
|
|
Initial value: new ModelFloat(0, "Sail Light Maximum Shading Neighbor Distance, in meters", "li_maxShadingRadius")
|
|
Initial value: new ModelFloat(0, "Storm Light - Intercept of Light Function", "li_stormLightIntercept")
|
|
Initial value: new ModelFloat(0, "Storm Light - Max Radius (m) for Damaged Neighbors", "li_stormLightRadius")
|
|
Initial value: new ModelFloat(0, "Storm Light - Minimum Trees For Full Canopy", "li_stormLightMinFullCanopy")
|
|
Initial value: new ModelFloat(0, "Storm Light - Std. Dev. or Clump Parameter", "li_stormLightRandPar")
|
|
Initial value: new ModelFloat(0, "Storm Light - Slope of Light Function", "li_stormLightSlope")
|
|
Initial value: new ModelEnum( new int[] {ALL_HEIGHT, FRAC_HEIGHT}, new String[] {"All height", "Part of height"}, "Calculated Crown Depth", "li_crownFracOfHeight")
|
|
Initial value: new ModelEnum(new int[] {MID_CROWN, CROWN_TOP} , new String[] {"Mid-crown", "Crown top"} , "Height of Fisheye Photo", "li_heightOfFishEyePhoto")
|
|
Initial value: new ModelInt(0, "Last Day of Growing Season", "li_julianDayGrowthEnds")
|
|
Initial value: new ModelInt(0, "First Day of Growing Season", "li_julianDayGrowthStarts")
|
|
Initial value: new ModelInt(0, "Number of Altitude Sky Divisions for GLI Light Calculations", "li_numAltGrids")
|
|
Initial value: new ModelInt(0, "Number of Azimuth Sky Divisions for GLI Light Calculations", "li_numAziGrids")
|
|
Initial value: new ModelInt(0, "Number of Altitude Sky Divisions for GLI Map Creator Calculations", "li_numAltGrids")
|
|
Initial value: new ModelInt(0, "Number of Azimuth Sky Divisions for GLI Map Creator Calculations", "li_numAziGrids")
|
|
Initial value: new ModelInt(0, "Number of Altitude Sky Divisions for GLI Points Creator", "li_numAltGrids")
|
|
Initial value: new ModelInt(0, "Number of Azimuth Sky Divisions for GLI Points Creator", "li_numAziGrids")
|
|
Initial value: new ModelInt(0, "Number of Altitude Sky Divisions for Quadrat Light Calculations", "li_numAltGrids")
|
|
Initial value: new ModelInt(0, "Number of Azimuth Sky Divisions for Quadrat Light Calculations", "li_numAziGrids")
|
|
Initial value: new ModelInt(0, "Upper Age (Yrs) of Snag Light Transmission Class 1", "li_snagAgeClass1")
|
|
Initial value: new ModelInt(0, "Upper Age (Yrs) of Snag Light Transmission Class 2", "li_snagAgeClass2")
|
|
Initial value: new ModelInt(0, "Storm Light - Max Years Damaged Trees Affect Light", "li_stormLightMaxDmgTime")
|
|
Initial value: new ModelInt(0, "Storm Light - Max Years Snags Affect Light", "li_stormLightSnagMaxDmgTime")
|
|
Initial value: new ModelEnum(new int[] {0, 1, 2, 3}, new String[] {"Deterministic", "Lognormal", "Normal", "Negative binomial"}, "Storm Light - Stochasticity", "li_stormLightStoch")
|
|
Initial value: new ModelVector( "Light Transmission Coefficient (0-1)", "li_lightExtinctionCoefficient", "li_lecVal", 0, ModelVector.FLOAT, true)
|
|
Initial value: new ModelVector("Snag Age Class 1 Light Transmission Coefficient (0-1)", "li_snag1LightExtinctionCoefficient", "li_s1lecVal", 0, ModelVector.FLOAT, true)
|
|
Initial value: new ModelVector("Snag Age Class 2 Light Transmission Coefficient (0-1)", "li_snag2LightExtinctionCoefficient", "li_s2lecVal", 0, ModelVector.FLOAT, true)
|
|
Initial value: new ModelVector("Snag Age Class 3 Light Transmission Coefficient (0-1)", "li_snag3LightExtinctionCoefficient", "li_s3lecVal", 0, ModelVector.FLOAT, true)
|
|
Initial value: new ModelVector( "Basal Area Light - Species Type", "li_baTreeType", "li_bttVal", 0, ModelVector.MODEL_ENUM, true)
|