torchcell.datamodels.identity.environment_identity
- environment_identity(environment: Environment) dict[str, Any][source]
Project an environment onto medium, temperature, edits, oxygen, duration and rate.
dilution_rate_per_houris projected because it is a CONTROLLED variable, not a protocol detail: in a chemostat it sets the specific growth rate and the residual concentration of the growth-limiting substrate, so two cultures differing only in it are two environments and must be two environment nodes. Measured on Ishii 2007, which is the reason the field exists: its recovered wild-type series holds four records differing ONLY here, and without this line all four collapse onto one environment node (#753).provenance_gapsis dropped, but what a gap MEANS is kept: the gapped field isNone, and aNonetemperature projects asNone, so a record that never carried a temperature does not merge with one measured at 30 C. ACultureEnvironment’s protocol fields (ENVIRONMENT_OPTIONAL_IDENTITY_FIELDS) are added only when set, and so isgrowth_phase, which the base class carries (lane X): a culture HELD in stationary phase is a different condition from the same medium in exponential growth, and before this a store could serve both as one environment node.