File size: 1,198 Bytes
78fefe8 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
from typing import List
from pydantic import BaseModel, Field
class CapacityFadeInput(BaseModel):
cathode_name: str
cycle_numbers: List[int] = Field(..., description="List of cycle numbers")
Q_discharge_list: List[float] = Field(..., description="List of discharge capacities (mAh/g)")
# New impedance growth inputs:
cycle_numbers_imp: List[int] = Field(..., description="List of cycle numbers for impedance growth plot")
impedance_list: List[float] = Field(..., description="List of impedance values (Ω)")
parameter_name: str = Field("Rct", description="Parameter name for impedance (e.g., 'Rct')")
# Calendar ageing inputs
temperature_C: float = Field(..., description="Storage temperature in °C")
SOC_fraction: float = Field(..., description="State of charge (0–1)")
storage_time_hours: float = Field(..., description="Storage time in hours")
initial_capacity_mAh: float = Field(..., description="Initial full‑cell capacity (mAh)")
k_fade: float = Field(..., description="Capacity fade constant k for cycle-life estimation")
b_fade: float = Field(..., description="Exponent b for cycle-life estimation (0.3–0.7)")
|