torchcell.datamodels.schema.Concentration

class Concentration(*, value: float | None = None, unit: ConcentrationUnit | None = None, basis: DoseBasis | None = None)[source]

Bases: ModelStrict

A dose of an environmental agent: a numeric value+unit and/or a target-basis.

Used for both a small-molecule concentration and a physical-factor magnitude (a generic value+unit record). Either a numeric value (with a typed unit) or a basis (how the dose was set, e.g. an IC30 target) must be present – screens routinely fix a compound at its IC30 without releasing the per-compound molar value, so value may be None while basis=IC30.

model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'frozen': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].