Running FCCS & Consume From Command Line

You can run large sets of fuelbeds through the FCCS & Consume calculators by calling their executables from a command prompt.

Prerequisites: Java and Python installed with PATH environment variable updated

Start by downloading and unzipping the FccsConsumeCommandLine.zip file (unzipping to the C:\ drive in this example).

Contents of extracted FccsConsumeCommandLine.zip file

The command line instructions for each tool included in this package will be the most up-to-date and will supersede those given here where different. These instructions assume that Java and Python are installed with environment variables configured for command line use.

Running FCCS

  1. Set up your FCCS environment
    1. Unzip the fccs.zip file contained in the zip file.
    2. Add fuelbed .xml files to the fccs folder that contains the fuelbed.jar file. Copy your custom fuelbeds into their own folder and/or download and unzip FCCS fuelbed packages:
      1. FCCS Reference fuelbeds (base package of original 946 FCCS fuelbeds)
        Download | File documentation
      2. FCCS Disturbance fuelbeds (~15K files)
        Download | File documentation
      3. Region 6 pathway fuelbeds (487 files)
        Download | File documentation
    3. Copy the sample fuel moisture file (sample_fccs_moisture.csv) from the input_files folder to the working fccs directory into newly-created ‘_fuelmoistures’ folder to use as a template for custom moisture scenarios. (Skip this step to accept the benchmark D2L2 moisture profile.)

      FCCS fuel moisture inputs file data dictionary
      This optional file contains a header followed by a single row of values that will apply to all fuelbeds in the given run.
      Column name Definition Example data
      oneHourFM Fuel moisture % of 1-hr fuels (e.g., < 0.25” in diameter) 6
      tenHourFM Fuel moisture % of 1-hr fuels (e.g., 0.25-1” in diameter) 7
      hundredHourFM Fuel moisture % of 1-hr fuels (e.g., 1-3” in diameter) 8
      liveNonWoodyFM Fuel moisture % of live forbs and graminoids 60
      liveShrubFM Fuel moisture % of live shrubs 90
      crownFM Fuel moisture % of live canopy 90

      The sample file is populated with the FCCS default/benchmark fuel moisture percents. (D2L2 in the table below):
      FM Code FM Desc 1,10,100,herb,shrub,crown
      D1L1 Very low dead, fully cured herb 3,4,5,30,60,60
      D1L2 Very low dead, 2/3 cured herb 3,4,5,60,90,90
      D1L3 Very low dead, 1/3 cured herb 3,4,5,90,120,120
      D1L4 Very low dead, fully green herb 3,4,5,120,150,150
      D2L1 Low dead, fully cured herb 6,7,8,30,60,60
      D2L2 Low dead, 2/3 cured herb 6,7,8,60,90,60
      D2L3 Low dead, 1/3 cured herb 6,7,8,90,120,60
      D2L4 Low dead, fully green herb 6,7,8,120,150,90
      D3L1 Moderate dead, fully cured herb 9,10,11,30,60,90
      D3L2 Moderate dead, 2/3 cured herb 9,10,11,60,90,90
      D3L3 Moderate dead, 1/3 cured herb 9,10,11,90,120,120
      D3L4 Moderate dead, fully green herb 9,10,11,120,150,120
      D4L1 High dead, fully cured herb 12,13,14,30,60,120
      D4L2 High dead, 2/3 cured herb 12,13,14,60,90,150
      D4L3 High dead, 1/3 cured herb 12,13,14,90,120,150
      D4L4 High dead, fully green herb 12,13,14,120,150,150

      Edit copies of this file to create custom fuel moisture scenarios. E.g., you could save the csv file with D1L1 values and name it 'D1L1.csv' to get outputs under drier conditions.

      That file would look like:
      oneHourFM,tenHourFM,hundredHourFM,liveNonWoodyFM,liveShrubFM,crownFM
      3,4,5,30,60,60
    4. Assuming you downloaded the base (reference) fuelbeds package, your file structure will now look something like:
  2. Open a command prompt. In Windows, you can type “cmd” in the search box of the Start menu to open a command prompt.
  3. Change directories to the fccs folder that contains the fuelbed.jar file. In our example:
    cd C:\FccsConsumeCommandLine\fccs\fccs
  4. Launch the calculator to get basic usage instructions.
    java –jar fuelbed.jar
  5. To run FCCS for all fuelbeds within a folder (e.g., “custom_fuelbeds”) using benchmark fuel moistures, type:
    java –jar fuelbed.jar custom_fuelbeds\*.xml
  6. To run FCCS for all fuelbeds within a folder (e.g., “custom_fuelbeds”) under a custom fuel moisture scenario, type (using our drier D1L1.csv):
    java –jar fuelbed.jar custom_fuelbeds\*.xml –p moisture_file=D1L1.csv
  7. To convert the output file (fccs_summary.csv) to metric values, type:
    python fccs_post_process.py fccs_summary.csv metric_all.csv metric_output.csv true
  8. For other commands, such as specifying an output filename and location or specifying wind or slope inputs, please refer to basic usage instructions within the command prompt.

Running Consume (building from above instructions)

The Consume 5 calculator module contains the consumption equations published in:
Prichard et al. 2017. Predicting forest floor and woody fuel consumption from prescribed burns in southern and western pine ecosystems of the United States. Forest Ecology and Management 405:328-338. The Consume source code was written in Python and can be cloned from GitHub repository https://github.com/pnwairfire/fera-apps-consume.

  1. Set up your Consume environment by unzipping the consume.zip file contained in the zip file.
  2. Open a command prompt and change into the consume working directory (the folder that contains the consume_batch.py file). In our example:
    cd C:\FccsConsumeCommandLine\consume
  3. Consume requires python 3.10+. Check your python installation by typing:
    python –version

    If you get a ‘Python was not found’ message, you may either need to install (or reinstall) python, or add the executable to your computer’s PATH variable.
  1. Summary of commands to run Consume outside of FFT:
    python -m venv my310env
    source my310env/bin/activate
    pip install -r requirements.txt
  1. To run the Consume python calculator, you must already have a loadings file (consume_loadings.csv). This is an FCCS output file that is generated whenever the FCCS calculator is run and is written to the same folder as the executable (fuelbed.jar) when you use the command line version of FCCS. It would probably be easiest to copy the consume_loadings.csv file to the consume working directory.

    You are also required to specify the following arguments:
    1. Burn type (activity or natural)
      Activity refers to a burn in recent logging slash and Natural refers to a burn in natural fuels that have not been influenced by recent logging or other disturbances (e.g., wind throw)
    2. Environmental inputs file (e.g., sample_consume_input.csv).
      See data dictionaries for natural/activity input files below.
      Note: each fuelbed has to have a corresponding input line.
    3. Consume loadings file (e.g., consume_loadings.csv file – an FCCS output) designated with the -f option.
      Example command line entries: 
      python consume_batch.py natural sample_natural_input.csv –f consume_loadings.csv
      python consume_batch.py activity sample_activity_input.csv –f consume_loadings.csv

    Consume command line arguments:
    Variable Sample arguments Definitions
    Burn type activity
    natural
    Activity refers to a burn in recent logging slash and Natural refers to a burn in natural fuels that have not been influenced by recent logging or other disturbances (e.g., wind throw)
    Environmental inputs file input_western.csv, sample_activity_inputs.csv,
    sample_natural_inputs.csv
    The environmental input file specifies environmental variables listed in the table below for each fuelbed listed in the fccs_loadings.csv file.
    Consume loadings file -f fccs_loadings.csv Consume loadings by fuelbed stratum.  This file is a standard output of FCCS calculations (either batch or within the FFT).
     
    Consume environmental inputs file data dictionary
    This optional file should have the same number of records as the fccs_loadings.csv.
    Field Definition (units) Sample data
    fuelbeds Fuelbed number in fccs_loadings.csv (one per row) 220u1
    area Area (acres) 1
    fm_duff Fuel moisture content of duff (%) 40
    fm_1000hr Fuel moisture content of 1000-hr fuels (%) 15
    can_con_pct Percent of canopy stratum blackened by fire (%) 0
    shrub_black_pct Percent of shrub stratum blackened by fire (%) 50
    pile_black_pct Percent consumption of piles (%) 90
    units Tons or Mg/ha tons
    ecoregion Region applicable to natural burn types (boreal, southern, or western) western
    fm_litter Fuel moisture content of litter (%) 10
    season Winter, spring, summer, or fall fall
    duff_pct_available % duff available for consumption, 0-100% 55
    sound_cwd_pct_available % sound coarse woody debris available for consumption, 0-100% 55
    rotten_cwd_pct_available % rotten coarse woody debris available for consumption, 0-100% 70
    Activity fuels only:
    slope Slope gradient (%) 0
    windspeed Windspeed (mph) 4
    days_since_rain Number of days since significant rainfall (> ¼ inch) 7
    length_of_ignition Time to ignite burn unit (min.) 30
    fm_type Type of fuel moisture (MEAS-Th or NFDRS-Th) MEAS-Th
    fm_10hr Fuel moisture of 10-hr wood 10

Fuelbed generator spreadsheet tool

csvAndScript.zip April 1, 2025 (19KB)

.zip file includes an Excel spreadsheet template (fuelbedInputTemplate.xslx) and Python script (generateFuelbeds.py). generateFuelbeds.py will create fuelbeds based on fuelbedInputTemplate.xslx. (No validation support re fuelbed structure and values).