from dataclasses import dataclass, field from typing import Dict, List @dataclass class LocalProblem: neighborhood_id: str demand_kw: float # total demand in kW pv_kw: float # available PV generation in kW storage_kwh: float evs: int = 0 metadata: Dict[str, float] = field(default_factory=dict) def net_load(self) -> float: # Simple net load: demand - pv return max(self.demand_kw - self.pv_kw, 0.0)