Skip to content

disslucc

Land Use and Cover Change (LUCC) modeling, raster-only, on top of dissmodel

LuccME's components -- demand, potential and allocation -- in Python: continuous (CLUE-like), discrete (CLUE-S-like), spatial-lag potential and saturation. Agreement with the original TerraME/LuccME is checked in disslucc-benchmark; see Validation.

pip install disslucc                 # from PyPI
pip install "disslucc[examples]"     # + matplotlib, for the examples

From a clone, for development: pip install -e ".[dev]".

from dissmodel.core import Environment
from disslucc import DemandInline, PotentialLinearRegression, AllocationClueLike
from disslucc.schemas import RegressionSpec, AllocationSpec

demand = DemandInline(values=[...], land_use_types=["forest", "urban"])
potential = PotentialLinearRegression(backend=backend, demand=demand, ...)
allocation = AllocationClueLike(backend=backend, demand=demand, potential=potential, ...)

Environment(end_time=7).run()

No ModelExecutor, no TOML, no CLI -- the script is the complete experiment. When automatic provenance matters more (production, CI), disslucc.executors brings ModelExecutor/ExperimentRecord back as a second entry point, with a CLI, same math -- see API Reference.


Where to go next

  • Quickstart -- installing, the first model, ready-made examples
  • API Reference -- reference for every public class and parameter
  • Architecture -- what's faithful to the original repositories, what was simplified, what's new
  • Validation -- where the comparison with TerraME lives (disslucc-benchmark) and what is checked in this repository
  • Decisions -- full history of decisions and tests throughout development
  • Notebooks -- two small, fully synthetic (no shapefiles, no vendored data) examples you can read top to bottom and run cell by cell: continuous (CLUE) and discrete (CLUE-S). Start here if you want to understand the mechanics before running the real, validated examples in examples/.

Part of the DisSModel ecosystem

disslucc is a satellite package built on dissmodel, the core discrete spatial modeling framework. See the dissmodel documentation for the underlying Environment/Model/RasterBackend concepts this package builds on.