Back to Tools
Open Source Python MIT License

pyFVS

Python implementation of the USDA Forest Vegetation Simulator

What It Does

pyFVS is a modern Python replacement for the legacy Fortran-based USDA Forest Vegetation Simulator. It simulates the growth and yield of forest stands using individual tree models, supporting 10 regional variants across the United States with taper-based volume calculations and 500+ species configurations.

Whether you're planning timber harvests, modeling carbon sequestration, or projecting stand development over decades, pyFVS provides the same trusted FVS methodology in an accessible Python API.

Key Features

10 Regional Variants

Southern, Lake States, Pacific Northwest, West Cascades, Northeast, Central States, and more -- covering 18 to 108 species per variant.

Taper-Based Volume

Uses Clark (Eastern) and Flewelling (Western) taper models for accurate timber volume estimation at any merchantable height.

Individual Tree Growth

Models diameter, height, crown ratio, and mortality for each tree using Chapman-Richards growth equations.

Stand Management

Supports thinning, selection harvest, clearcut simulation, and FIA plot data integration with multiple export formats.

Quick Start

Installation
pip install fvs-python
Basic Usage
from pyfvs import Stand

# Initialize a planted pine stand
stand = Stand.initialize_planted(
    trees_per_acre=500,
    site_index=70,
    species="LP",
    ecounit="M231"
)

# Grow for 50 years
stand.grow(years=50)

# Get stand metrics
metrics = stand.get_metrics()
print(f"TPA: {metrics['tpa']:.0f}")
print(f"Basal Area: {metrics['basal_area']:.0f} ft2/ac")
print(f"Volume: {metrics['volume']:.0f} ft3/ac")

Use Cases

  • Forecasting timber yield and stand development for forest management planning
  • Simulating silvicultural treatments to optimize timber production and carbon sequestration
  • Integrating FIA plot data for research-grade growth projections
  • Generating yield tables for financial analysis and forest investment planning

Get Started

Check out the documentation for tutorials, API reference, and examples.