Skip to content

API Reference

Complete API documentation for all PyFDS classes and functions.

Overview

The API Reference provides detailed technical documentation auto-generated from the source code docstrings. All public APIs are documented with parameters, return values, examples, and type information.

Modules

Most Used Classes

Class Description
Simulation Main class for building FDS simulations
Results Container for simulation results
FDSRunner Execute FDS simulations
Job Manage running simulations
validate_simulation() Validate simulation configuration

Namelist Classes

Namelist Class Purpose
HEAD Head Simulation metadata
TIME Time Time parameters
MESH Mesh Computational domain
SURF Surface Surface properties
OBST Obstruction Solid obstructions
VENT Vent Boundaries and vents
HOLE Hole Openings in obstructions
MULT Multiplier Array replication
GEOM Geometry Unstructured geometry (beta)
MOVE Move Geometry transformations
DEVC Device Measurement devices
MATL Material Material definitions
RAMP Ramp Time-varying properties
REAC Reaction Combustion reactions
PART Particle Particle definitions
PROP Property Device properties
CTRL Control Control logic
INIT Initialization Initial conditions
SPEC Species Chemical species
COMB Combustion Combustion parameters
HVAC Hvac HVAC systems
MISC Misc Global settings

Usage Examples

Importing Classes

# Import main simulation class
from pyfds import Simulation

# Import specific namelist classes
from pyfds import Mesh, Surface, Device, Time

# Import execution classes
from pyfds.execution import FDSRunner, Job
from pyfds.analysis import Results

# Import validation
from pyfds.validation import validate_simulation, SimulationValidator
from pyfds.exceptions import ValidationError, DuplicateIdError

# Import builders
from pyfds import RampBuilder, MaterialBuilder, SurfaceBuilder
from pyfds.builders.libraries import CommonMaterials, CommonRamps

Type Hints

All classes have full type hints for IDE support:

from pyfds import Simulation
from pyfds.core.namelists import Mesh, Surface

def create_simulation(name: str) -> Simulation:
    """Create a simulation with type safety."""
    sim = Simulation(chid=name)
    sim.add(Time(t_end=600.0))
    return sim

# IDE will autocomplete and type-check
sim: Simulation = create_simulation("test")

Documentation Conventions

Parameters

Parameters are documented with their type and description:

def time(
    self,
    t_end: float,
    t_begin: float = 0.0,
    dt: float | None = None
) -> Simulation:
    """
    Set time parameters for the simulation.

    Parameters
    ----------
    t_end : float
        End time in seconds
    t_begin : float, optional
        Start time in seconds (default: 0.0)
    dt : float, optional
        Initial time step in seconds (default: auto)

    Returns
    -------
    Simulation
        Self for method chaining
    """

Return Values

Return values include type and description:

Returns
-------
Simulation
    Self for method chaining

Examples

Executable code examples:

Examples
--------
>>> sim = Simulation(chid='test')
>>> sim.add(Time(t_end=600.0, dt=0.1))
>>> sim.write('test.fds')

See Also

Related functions and classes:

See Also
--------
mesh : Define computational domain
surface : Create surface properties

By Module

Browse by module organization:

By Task

Find what you need based on what you want to do:

Task See
Create a simulation Simulation
Add a mesh sim.add(Mesh())
Create fire sim.add(Surface())
Add geometry sim.add(Obstruction())
Add vent sim.add(Vent())
Add device sim.add(Device())
Build complex objects MaterialBuilder, RampBuilder
Use pre-configured objects CommonMaterials, CommonRamps
Validate validate_simulation()
Run simulation run_fds() or sim.run()
Load results Results
Plot data Results.plot_hrr()

Source Code

All API documentation is generated from the source code. To view the source:

import inspect
from pyfds import Simulation

# View source code
print(inspect.getsource(Simulation.add))

# View docstring
print(Simulation.add.__doc__)

Or browse the source on GitHub.


Simulation Class → All Namelists →