To run the model for your
plots or stands, you need two input tables (OSM_StandList
& OSM_TreeList) in an Access database.
The following provides
guidance on how to properly setup these tables for use in New Brunswick.
For detailed input table
guidance, see NL Input Tables.
Important columns for
correct calibration of OSM-ACD in NB:
§ SurveyID [CLI plot number; numeric or text]
§ SurveyYear [year of field collection; optional; integer]
§ SurveyAge [years post stand
establishment (clearcut); required for all stands; integer]
§ District [integer]
·
Newfoundland and Labrador
Forest Management unit or District ID code (2, 4-26)
§ IsGoodSite [boolean]
·
This is a productivity site call made visually by field crews
in NL inventory plots, known as ‘Actual Site’ in NL
inventories.
·
High and Good sites should be set to True, and Moderate and
Poor site calls as False.
§ IsBarren [boolean]
·
If the NL ecoregion is considered barren, set to true; e.g., Coastal Barrens Eco-Region.
§ MAT [number]
·
NL mean annual temperature for plot locations, with
consideration of elevation.
§ Management [five management types; text]
·
“None” – no recent
management
·
“PartialCut”
– recently partial cut (<20 years ago)
·
“Clearcut” – recently
clearcut or overstory removal (< 20 years ago)
·
“PCT” – has been
pre-commercially thinned.
·
“Plant” – has been planted.
·
Commercially thinned “PCT”
or “Planted” stands are still considered “PCT” or “Planted”, respectively.
See additional optional OSM_StandList columns
in NL Input Tables
Important columns for
correct calibration of OSM-ACD in NB:
§ SurveyID [CLI plot number; text or integer]
§ TreeID [Optional; integer]
§ Species [USDA Plant Code - see species lookup table in OSM-NL documentation; text]
§ DBH [diameter in centimeters outside-bark at 1.3 m from ground]
§ HT [total tree height; meters; null if not available]
§ CR [tree crown ratio; 0-1; null if not available]
§ Stems [tree expansion factor; # trees/ha this individual represents]
§ Weight [tree height subsample relative weight for local height model
calibration; null if no height sampled]
See additional optional OSM_TreeList columns
in NL Input Tables
Weights used in OSM_TreeList to properly calculate estimates of Lorey’s height for alternative plot designs (fixed area vs.
angle gauge), which is used during height predication. Weights are also used to
‘weight’ self-calibration of the height model with height observation samples,
if present in the tree list. See weight column in NL Input Tables and also additional
guidance on how to set weight values in OSM.Simualtion.Model.HeightModel.
See OSM download package
for DOS examples and HTML help files on running the software.
OSM uses a custom command language that is written by the user into a
text file to tell OSM what you want it to do. The text file is submitted as a
file path argument to the OSM executable (OSM.ConsoleApp.exe) through a DOS
batch file. The command language uses indenting (similar to
python) to access OSM command objects and properties hierarchically.
The example below demonstrates all the commands needed to load
OSM_STANDLIST and OSM_TREELIST, run the first simulation cycle (which includes
prediction of missing tree heights at the start of the simulation cycle), and
output of the resulting tree lists for every plot into a CSV text file. It is
very important to respect the number of TAB characters when indenting commands.
You can also use a single space instead of a TAB, but you cannot mix tabs and spaces.
SIMULATION
YEARS 1
YPC 1
INPUTS.Source “C:\...\Plots.accdb”
OUTPUTS
TreeList
FilePath
"C:\...\TreeListReport.csv"
SetStandColumns SurveyID Cycle Year
SetTreeColumns TreeID Species DBH HT Stems
SIMULATE
Copy the OSM code above
into a new text file (MyOSM.osmc).
In a Windows DOS batch file
(OSM.bat) call the OSM executable (OSM.ConsoleApp.exe) with the following two
arguments: 1) the Variant code (in this case ‘NL’) and 2) the command
file with the file path as shown below:
Call C:\...\OSM.ConsoleApp.exe NL
C:\...\MyOSM.osmc
Pause
Avoid spaces in your
directory names, or surround path names with double quotes.
Change
command YPC to 5 and YEARS to 100 and the simulation will run for 100 years in
iterations of 5 years per simulation cycle. Tree lists for each cycle will be
append to TreeListReport.csv.
Once you master above, start to learn other OSM commands to simulate
harvest, disturbances, climate change, customize outputs, and even locally
calibrate the model.
The basic execution procedure described above can be automated to allow
for thousands of stands to be simulated. A good example of this the FORUS
Simulation Framework application developed by FORUS Research. It can automatically
write OSM commands, oversee execution and database management, and calculate a
massive range of alternative stand-level yield outputs from OSM tree list
outputs.