DEMOS Configuration Structure

class demos.config.DEMOSConfig(*args, **kwargs)[source]

Bases: BaseModel

Global configuration for DEMOS. Individual fields in this class control the configuration of each module.

random_seed: int
base_year: int

Year represented in synthetic population input

forecast_year: int = 2020

Last year of simulation

output_dir: str = '../data/output'

Path to DEMOS outputs

output_fname: str = None

Name of output HDF5 file. Defaults to demos_output_{forecast_year}.h5.

output_tables: list[str] = None

List of orca tables to include in output

calibrated_models_dir: str = None

Path to directory with calibration models

inconsistent_persons_table_behavior: Literal['error', 'fix', 'ignore'] = 'error'

Behavior of inconsistent persons input table

initialize_empty_tables: list[str] = None

Name of tables to be initialized as empty

tables: Optional[list[Annotated[H5TableSource | CSVTableSource]]] = None

List of tables to be loaded into orca

modules: Optional[list[str]] = None

List of modules to be run

require_lcm_county_column()

Individual Modules configuration

class demos.config.HHRebalancingModuleConfig(*args, **kwargs)[source]

Bases: BaseModel

Configuration for Household Rebalancing module

control_table: str
control_col: str
geoid_col: str
class demos.config.EmploymentModuleConfig(*args, **kwargs)[source]

Bases: BaseModel

simultaneous_calibration_config: Optional[SimultaneousCalibrationConfig] = None
enter_model_calibration_procedure: Optional[CalibrationConfig] = None
exit_model_calibration_procedure: Optional[CalibrationConfig] = None
check_calibration_config_exclusivity()
class demos.config.HHReorgModuleConfig(*args, **kwargs)[source]

Bases: BaseModel

simultaneous_calibration_config: Optional[SimultaneousCalibrationConfig] = None
geoid_col: Optional[str] = None
class demos.config.MortalityModuleConfig(*args, **kwargs)[source]

Bases: BaseModel

calibration_procedure: Optional[CalibrationConfig] = None
class demos.config.BirthModuleConfig(*args, **kwargs)[source]

Bases: BaseModel

calibration_procedure: Optional[CalibrationConfig] = None
class demos.config.KidsMovingModuleConfig(*args, **kwargs)[source]

Bases: BaseModel

geoid_col: str
calibration_target_share: float = 0.12
calibration_tolerance: float = 0.001
max_iter: int = 100
class demos.config.AgingModuleConfig(*args, **kwargs)[source]

Bases: BaseModel

senior_age: int = 65

Age at which a person qualifies as senior