| | from pydantic import BaseModel, Field |
| |
|
| | class NPCalcInput(BaseModel): |
| | cathode_name: str |
| | Q_anode_raw: float = Field(..., description="Specific capacity of anode (mAh/g)") |
| | m_anode: float = Field(..., description="Anode active mass (g or mg/cm²)") |
| | SEI_loss_fraction: float = Field(..., description="Fractional SEI loss (e.g. 0.1 for 10%)") |
| | Q_cathode_raw: float = Field(..., description="Specific capacity of cathode (mAh/g)") |
| | m_cathode: float = Field(..., description="Cathode active mass (g or mg/cm²)") |
| | vacancy_loss_fraction: float = Field(..., description="Fractional vacancy loss in cathode") |
| |
|
| | |
| | Q_areal: float = Field(..., description="Target full‑cell areal capacity (mAh/cm²)") |
| |
|
| | |
| | Q_charge_anode: float = Field(..., description="Anode charge capacity (mAh)") |
| | Q_discharge_anode: float = Field(..., description="Anode discharge capacity (mAh)") |
| | Q_charge_cathode: float = Field(..., description="Cathode charge capacity (mAh)") |
| | Q_discharge_cathode: float = Field(..., description="Cathode discharge capacity (mAh)") |
| | Q_charge_full: float = Field(..., description="Full‑cell charge capacity (mAh)") |
| | Q_discharge_full: float = Field(..., description="Full‑cell discharge capacity (mAh)") |
| |
|