ecl-logo Documentation
ECL`

ExperimentIncubateCells

ExperimentIncubateCells[Samples]Protocol

creates a Protocol object to grow or maintain the provided Samples containing mammalian, yeast, or bacterial cells, with desired incubation conditions.

    
ExperimentIncubateCells is used to grow or maintain cell samples under controlled environmental conditions to promote growth and maintenance of cultures. Environmental parameters including temperature, relative humidity, carbon dioxide, and shaking can be specified or automatically determined from the CellType and CultureAdhesion. For standard incubation conditions, sample(s) can be left in incubators as an ongoing storage condition. For custom incubation conditions, custom incubators are exclusively dedicated to individual users without sharing the environment with others during the experiment, and sample(s) must moved to standard storage conditions by specifying or automatically resolving a SamplesOutStorageCondition. ExperimentIncubateCells processes samples as received without any sample preparation or analysis. Therefore, samples must be prepared in incubator-compatible containers (plates or flasks) before calling ExperimentIncubateCells (see PreferredInputContainers section, and call IncubateCellsDevices[myContainer] to see a list of compatible incubators). This experiment is meant to be used as part of a workflow that includes other experiments such as inoculation, quantification, and more, rather than as a standalone process.
    

Experimental Principles

    Figure 1.1: Procedural overview of cell incubation Step 1: Samples are placed in the instrument under controlled environmental conditions including optional shaking (for suspension cell cultures).
    Figure 1.2: An example workflow using an IncubateCells unit operation in an ExperimentCellPreparation call, which includes the following steps: 1) labeling the source cell sample, 2) inoculating the cell sample into liquid media, 3) incubating the inoculated cells, and 4) freezing the cultured cells for long-term storage.

Instrumentation

    Default Cell Incubators

    Custom Cell Incubators

    Cytomat HERAcell 240i TT 10

    Figure 2.1: Instrument diagram for Cytomat HERAcell 240i TT 10 Incubator for Mammalian Adherent Cell Culture.

    STX44-ICBT with Humidity Control

    Figure 2.2: Instrument diagram for STX44-ICBT with Humidity Control for Mammalian Adherent Cell Culture in Robotic experiment.

    Bactomat HERAcell 240i TT 10 for Yeast

    Figure 2.3: Instrument diagram for Bactomat HERAcell 240i TT 10 for Yeast SolidMedia Cell Culture.

    Bactomat HERAcell 240i TT 10 for Bacteria

    Figure 2.4: Instrument diagram for Bactomat HERAcell 240i TT 10 for Bacteria SolidMedia Cell Culture.

    STX44-ICBT with Shaking

    Figure 2.5: Instrument diagram for STX44-ICBT with Shaking for Bacterial or Yeast Suspension Cell Culture in Robotic experiment.

    Innova 44 for Bacterial Plates

    Figure 2.6: Instrument diagram for Innova 44 for Bacterial Suspension Cell Culture.

    Innova 44 for Bacterial Flasks

    Figure 2.7: Instrument diagram for Innova 44 for Bacterial Suspension Cell Culture.

    Innova 44 for Yeast Plates

    Figure 2.8: Instrument diagram for Innova 44 for Yeast Suspension Cell Culture.

    Innova 44 for Yeast Flasks

    Figure 2.9: Instrument diagram for Innova 44 for Yeast Suspension Cell Culture.

    Multitron Pro with 3mm Orbit

    Figure 2.10: Instrument diagram for Multitron Pro with 3mm Orbit for Custom Cell Culture.

    Multitron Pro with 25mm Orbit

    Figure 2.11: Instrument diagram for Multitron Pro with 25mm Orbit for Custom Cell Culture.

Experiment Options

    General

    Preparation

    Indicates if this unit operation is carried out primarily robotically or manually. Manual unit operations are executed by a laboratory operator and robotic unit operations are executed by a liquid handling work cell.
    Default Value: Automatic
    Pattern Description: Manual or Robotic.
    Programmatic Pattern: PreparationMethodP | Automatic

    WorkCell

    Indicates the work cell that this primitive will be run on if Preparation->Robotic.
    Default Value: Automatic
    Default Calculation: Automatically set to microbioSTAR when all samples' cell types are either Microbial or Null, otherwise set to bioSTAR when all samples' cell types are either Mammalian or Null, if Preparation->Robotic.
    Pattern Description: BioSTAR or microbioSTAR or Null.
    Programmatic Pattern: ((bioSTAR | microbioSTAR) | Automatic) | Null

    Time

    The duration during which the input cells are incubated inside of cell incubators.
    Default Value: Automatic
    Default Calculation: If Preparation is set to Robotic, automatically set to 3 hours. If Preparation is set to Manual, automatically set to the shorter time between 72 hours and 36 times the shortest DoublingTime of the cells in the sample.
    Pattern Description: Greater than or equal to 0 hours and less than or equal to 72 hours.
    Programmatic Pattern: RangeP[0*Hour, $MaxCellIncubationTime] | Automatic

    Incubator

    The instrument used to cultivate cell cultures under specified conditions, including, Temperature, CarbonDioxide, RelativeHumidity, ShakingRate, and ShakingRadius.
    Default Value: Automatic
    Default Calculation: If Preparation is set to Robotic, automatically set to Model[Instrument, Incubator, "STX44-ICBT with Humidity Control"] for Mammalian cell culture, or set to Model[Instrument, Incubator, "STX44-ICBT with Shaking"] for Bacterial and Yeast cell culture. If Preparation is Manual, is automatically set to an incubator that meets the requirements of desired incubation conditions (CellType, Temperature, CarbonDioxide, RelativeHumidity, Shake) and footprint of the container of the input sample. See the helpfile of the function IncubateCellsDevices for more information about operating parameters of all incubators.
    Pattern Description: An object of type or subtype Model[Instrument, Incubator] or Object[Instrument, Incubator]
    Programmatic Pattern: ObjectP[{Model[Instrument, Incubator], Object[Instrument, Incubator]}] | Automatic
    Index Matches to: experiment samples

    Incubation Condition

    Temperature

    Temperature at which the input cells are incubated. 30 Degrees Celsius and 37 Degrees Celsius are supported by default cell culture incubation conditions. Alternatively, a customized temperature can be requested with a dedicated custom incubator between 28 degrees Celsius and 80 degrees Celsius until the protocol is completed. See the IncubationCondition option for more information.
    Figure 3.1: The table indicates how Temperature is set based on IncubationCondition.
    Default Value: Automatic
    Default Calculation: Automatically set to match the Temperature field of specified IncubationCondition, see below table. If IncubationCondition is not provided, automatically set to 37 Celsius if CellType is Bacterial or Mammalian, or 30 Celsius if CellType is Yeast.
    Pattern Description: Custom Temperature or Temperature.
    Programmatic Pattern: (CellIncubationTemperatureP | RangeP[$MinCellIncubationTemperature, $MaxCellIncubationTemperature]) | Automatic
    Index Matches to: experiment samples

    Shake

    Indicates if the input cells are shaken during incubation.
    Default Value: Automatic
    Default Calculation: Automatically set to True if ShakingRate or ShakingRadius are provided, or if IncubationCondition is BacterialShakingIncubation or YeastShakingIncubation. Otherwise, set to False.
    Pattern Description: True or False.
    Programmatic Pattern: BooleanP | Automatic
    Index Matches to: experiment samples

    ShakingRate

    The frequency at which the sample is agitated by movement in a circular motion. Currently, 200 RPM is supported by preset cell culture incubation conditions with shaking. Alternatively, a customized shaking rate can be requested with a dedicated custom incubator until the protocol is completed. See the IncubationCondition option for more information.
    Figure 3.2: The table indicates how ShakingRate is set based on IncubationCondition and container of the input sample.
    Default Value: Automatic
    Default Calculation: If Shake is True, automatically set match the ShakingRate value of specified IncubationCondition if it is provided. If IncubationCondition is not provided, automatically set to 200 RPM.
    Pattern Description: 200 RPM or Custom Shaking Rate or Null.
    Programmatic Pattern: ((CellIncubationShakingRateP | RangeP[$MinCellIncubationShakingRate, $MaxCellIncubationShakingRate]) | Automatic) | Null
    Index Matches to: experiment samples

    ShakingRadius

    The radius of the circle of orbital motion applied to the sample during incubation. The MultitronPro Incubators for plates has a 25 mm shaking radius, and the Innova Incubators have a 25.4 Millimeter shaking radius. See the Instrumentation section of the helpfile for more information.
    Default Value: Automatic
    Default Calculation: If Shake is True, automatically set to match the ShakingRadius value of specified IncubationCondition if it is provided, or set to the shaking radius of incubator.
    Pattern Description: 3 millimeters, 25 millimeters, or 25.4 millimeters or Null.
    Programmatic Pattern: (CellIncubatorShakingRadiusP | Automatic) | Null
    Index Matches to: experiment samples

    IncubationCondition

    The type of incubation that defines the Temperature, Carbon Dioxide Percentage, Relative Humidity, Shaking Rate and Shaking Radius, under which the input cells are incubated. Custom incubation actively selects an incubator in the lab and uses a thread to incubate only the cells from this protocol for the specified Time. Selecting an IncubationCondition, through a symbol or an object, will passively store the cells for the specified time in a shared incubator, potentially with samples from other protocols. However, it will not consume a thread while the cells are inside the incubator. Currently, MammalianIncubation, BacterialIncubation, BacterialShakingIncubation, YeastIncubation, and YeastShakingIncubation are supported cell culture incubation conditions with shared incubators.
    Figure 3.3: This table indicates how the CellType and CultureAdhesion options impact the resolution of IncubationCondition when no other options are specified.
    Default Value: Automatic
    Default Calculation: Automatically set to a storage condition matching specified CellType, CultureAdhesion, Temperature, CarbonDioxide, RelativeHumidity, ShakingRate and ShakingRadius options, or set to Custom if no existing storage conditions can provide specified incubation condition options. If no Temperature, RelativeHumidity, CarbonDioxide, ShakingRate, or ShakingRadius are provided, automatically set based on the CellType and CultureAdhesion as described in the below table.
    Pattern Description: Incubation Model or Incubation Type.
    Programmatic Pattern: ((MammalianIncubation | BacterialIncubation | BacterialShakingIncubation | YeastIncubation | YeastShakingIncubation | Custom) | ObjectP[Model[StorageCondition]]) | Automatic
    Index Matches to: experiment samples

    CellType

    The type of the most abundant cells that are thought to be present in this sample. Options include Bacterial, Mammalian, and Yeast.
    Default Value: Automatic
    Default Calculation: Automatically set to match the value of CellType of the input sample if it is populated, or set to Mammalian if CultureAdhesion is Adherent or if WorkCell is bioSTAR. If the cell type is unknown, automatically set to Bacterial.
    Pattern Description: Bacterial, Mammalian, or Yeast.
    Programmatic Pattern: (Bacterial | Mammalian | Yeast) | Automatic
    Index Matches to: experiment samples

    CultureAdhesion

    The manner of cell growth the cells in the sample are thought to employ. Options include SolidMedia, Suspension, and Adherent. SolidMedia cells grow in colonies on a nutrient rich substrate, suspended cells grow free floating in liquid media, and adherent cells grow attached to a substrate.
    Default Value: Automatic
    Default Calculation: Automatically set to match the CultureAdhesion value of the input sample if it is populated, or set to Adherent if CellType is Mammalian, or set to SolidMedia if the State value of the input sample is Solid. Otherwise set to Suspension.
    Pattern Description: Adherent, Suspension, or SolidMedia.
    Programmatic Pattern: CultureAdhesionP | Automatic
    Index Matches to: experiment samples

    RelativeHumidity

    Percent humidity at which the input cells are incubated. Currently, 93% Relative Humidity is supported by default cell culture incubation conditions. Alternatively, a customized relative humidity can be requested with a dedicated custom incubator until the protocol is completed. See the IncubationCondition option for more information.
    Figure 3.4: The table indicates how RelativeHumidity is set based on IncubationCondition.
    Default Value: Automatic
    Default Calculation: Automatically set to match the RelativeHumidity field of specified IncubationCondition, see below table. If IncubationCondition is not provided, automatically set to 93% if CellType is Mammalian, or Ambient if CellType is Bacterial or Yeast.
    Pattern Description: 93 Percent or Ambient or Custom.
    Programmatic Pattern: (Ambient | CellIncubationRelativeHumidityP | RangeP[0*Percent, 100*Percent]) | Automatic
    Index Matches to: experiment samples

    CarbonDioxide

    Percent CO2 at which the input cells are incubated. Currently, 5% Carbon Dioxide is supported by default cell culture incubation conditions. Alternatively, a customized carbon dioxide percentage can be requested with a dedicated custom incubator until the protocol is completed. See the IncubationCondition option for more information.
    Figure 3.5: The table indicates how CarbonDioxide is set based on IncubationCondition.
    Default Value: Automatic
    Default Calculation: Automatically set to match the CarbonDioxide field of specified IncubationCondition, see below table. If IncubationCondition is not provided, automatically set to 5% if CellType is Mammalian, or Ambient if CellType is Bacterial or Yeast.
    Pattern Description: 5 Percent or Ambient or Custom.
    Programmatic Pattern: (Ambient | CellIncubationCarbonDioxideP | RangeP[0*Percent, $MaxCellIncubationCarbonDioxide]) | Automatic
    Index Matches to: experiment samples

    Post Experiment

    SamplesOutStorageCondition

    The conditions under which samples will be stored after the protocol is completed.
    Default Value: Automatic
    Default Calculation: If IncubationCondition is Custom, automatically set based on the CellType and CultureAdhesion of the cells. If CellType and CultureAdhesion are unknown, automatically set to BacterialIncubation if the container is a shallow plate, or BacterialShakingIncubation otherwise. If IncubationCondition is not Custom, automatically set to the IncubationCondition.
    Pattern Description: {YeastIncubation, YeastShakingIncubation, BacterialIncubation, BacterialShakingIncubation, MammalianIncubation}, AmbientStorage, Refrigerator, or Disposal.
    Programmatic Pattern: (IncubatedCellSampleStorageTypeP | AmbientStorage | Refrigerator | Disposal) | Automatic
    Index Matches to: experiment samples

Protocol Options

    Organizational Information

    Template

    A template protocol whose methodology should be reproduced in running this experiment. Option values will be inherited from the template protocol, but can be individually overridden by directly specifying values for those options to this Experiment function.
    Default Value: Null
    Pattern Description: An object of type or subtype Object[Protocol] or an object of type or subtype of Object[Protocol] with UnresolvedOptions, ResolvedOptions specified or Null.
    Programmatic Pattern: (ObjectP[Object[Protocol]] | FieldReferenceP[Object[Protocol], {UnresolvedOptions, ResolvedOptions}]) | Null

    Name

    A object name which should be used to refer to the output object in lieu of an automatically generated ID number.
    Default Value: Null
    Pattern Description: A string or Null.
    Programmatic Pattern: _String | Null

Example Results

    • Here we are enqueuing a protocol to start an E. coli liquid culture. This protocol performs a manual workflow that inoculates from an E. coli AgarStab stock into a flask containing LB broth, incubates the flask in a bacterial incubator with fully customized parameters, and quantifies the resulting cell density.
    customFlaskProtocol = ExperimentCellPreparation[
        {
            InoculateLiquidMedia[
                Sample -> Model[Sample, "E.coli DH5 Alpha Agar Stab"],
                DestinationMedia -> Model[Sample, Media, "LB (Liquid)"],
                DestinationMediaContainer -> Model[Container, Vessel, "250mL Erlenmeyer Flask"],
                ContainerOutLabel -> "My Flask of Inoculated Cells"
            ],
            IncubateCells[
                Sample -> "My Flask of Inoculated Cells",
                IncubationCondition -> Custom,
                CellType -> Bacterial,
                CultureAdhesion -> Suspension,
                Shake -> True,
                ShakingRate -> 100 RPM,
                Temperature -> 35 Celsius,
                CarbonDioxide -> 7 Percent,
                RelativeHumidity -> 80 Percent,
                Time -> 24 Hour
            ],
            QuantifyCells[
                Sample -> "My Flask of Inoculated Cells",
                SamplesInStorageCondition -> Refrigerator
            ]
        }
    ]
    • Extracting the IncubateCells subprotocol, we will look more closely at this subprotocol.
    • Inspecting the actual environmental data recorded during cell incubation in the custom incubator, which is equipped with sensors for CarbonDioxide, RelativeHumidity, and Temperature.
    • Extracting the data from individual environmental data fields of the subprotocol.
    • The same data is also collectively stored in the IncubatorEnvironmentalData field of the subprotocol
    • Visualizing the sensor data using PlotSensor
    • Extracting the incubated sample from the IncubateCells subprotocol.
    • Here, the sample appears as both SamplesIn and SamplesOut because it is the same sample and container before and after incubation.
    • Inspecting the cell density change of the incubated sample by comparing the Model[Cell] entry before the QuantifyCells unit operation and after completion of the entire protocol.
    • At the beginning of the IncubateCells subprotocol, the samples Composition contains a Model[Cell] entry with the cell concentration estimated based on the amount transferred to the flask during inoculation from the agar stab
    • We got an OD600 update! After the IncubateCells unit operation finishes, the QuantifyCells unit operation measures the concentration of Model[Cell] and updates the Composition of the incubated samples.
    • The OD600 measurement data is also stored as an object in both the Object[Sample] and the QuantifyCells subprotocol
    • Watching the video streams of the InoculateLiquidMedia subprotocol performed in the biosafety cabinet prior to the IncubateCells subprotocol
    • Here we are enqueuing a script to start an E. coli culture on agar plates from freeze-dried powder. This script involves a Robotic unit operation that spreads the resuspended and serial-diluted E Coli cell suspension onto several agar plates, a Manual unit operation that incubates some of the most-diluted agar plates in a shared non-shaking bacterial incubator, and finally another Robotic unit operation that quantifies the colonies grown.
    bacterialIncubationPlateScript = ExperimentCellPreparation[
            {
                LabelSample[
                    Sample -> Model[Sample, "E.coli 10798"],
                    Amount -> 1.5 Gram,
                    ExactAmount -> False,
                    Container -> Model[Container, Vessel, "5mL small glass vial aluminum cap"],
                    Label -> "my Ecoli powder"
                ],
                SpreadCells[
                    Sample -> "my Ecoli powder",
                    InoculationSource -> FreezeDried,
                    ResuspensionMedia -> Model[Sample, Media, "LB (Liquid)"],
                    DilutionType -> Serial,
                    Diluent -> Model[Sample, Media, "LB (Liquid)"],
                    NumberOfDilutions -> 4,
                    SerialDilutionFactor -> 10,
                    ContainerOutLabel -> {"My container 1", "My container 2", "My container 3", "My container 4", "My container 5"}
                ],
                IncubateCells[
                    Sample -> {"My container 4", "My container 5"},
                    IncubationCondition -> BacterialIncubation,
                    CellType -> Bacterial,
                    CultureAdhesion -> SolidMedia,
                    Shake -> False,
                    Time -> 12 Hour
                ],
                QuantifyColonies[
                    Sample -> {"My container 4", "My container 5"}
                ]
            }
        ]
    • Checking what protocols are generated by this script run, along with their OutputUnitOperations and Subprotocols
    • Extracting the IncubateCells subprotocol, which is the only subprotocol of the second ManualCellPreparation protocol in the script. We will be looking more closely at this subprotocol.
    • Inspecting the actual environmental data during cell incubation in this shared bacterial incubator, which is equipped with Temperature and RelativeHumidity sensors.
    • Extracting the data from individual environmental data fields of the IncubateCells subprotocol. Each field contains data whose lengths match the number of input agar plate samples.
    • The same data is also collectively stored in the IncubatorEnvironmentalData field of the subprotocol
    • Visualizing these sensor data, we observed some fluctuations in both Temperature and RelativeHumidty, likely caused by opening/closing the door of the incubator.
    • Extracting the agar plate samples from the IncubateCells subprotocol.
    • Visually checking how well the colonies have grown
    • The images and colony count data are stored in the sample objects, as well as in the QuantifyColonies subprotocol
    • The same data is also stored in the RoboticCellPreparation subprotocol that contains the QuantifyColonies unit operation

Example Calls

    Incubating Cells

    Incubate a plate of tissue culture (mammalian) cells:
    Incubate a flask of microbial (bacteria) cells in suspension:
    Incubate a flask of yeast cells with custom parameters:

Preferred Input Containers

    Omni Tray for Solid Media Samples
    Multi-well SBS Format Plates for Cell Suspension Samples
    Culture Vessels for Cell Suspension Samples

Warnings and Errors

    Messages  (76)

    CellTypeNotSpecified  (1)

    If a sample is provided with no CellType, throws a warning and creates a protocol:

    ConflictingCellType  (2)

    If CellType option is specified as Mammalian but the CellType of the sample(s) specified as microbial, throws an error:

    If CellType options are provided, and they conflict with the CellType of the sample(s) specified, throws a warning if both types are microbial:

    ConflictingCellTypeWithCultureAdhesion  (2)

    If using a bacterial or yeast sample, CultureAdhesion cannot be Adherent:

    If using a mammalian sample, CultureAdhesion cannot be SolidMedia:

    ConflictingCellTypeWithIncubationCondition  (2)

    If CellType for samples and SamplesOutStorageCondition are both microbial but one is Bacterial and the other is Yeast, throw a soft warning and allows for protocol generation:

    If CellType for samples and SamplesOutStorageCondition are both microbial but one is Bacterial and the other is Yeast, throw a soft warning and allows for protocol generation:

    ConflictingCellTypeWithIncubator  (2)

    If CellType for samples and Incubator are both microbial but one is Bacterial and the other is Yeast, throw a soft warning and allows for protocol generation:

    If CellType for samples and Incubator are both microbial but one is Bacterial and the other is Yeast, throw a soft warning and allows for protocol generation:

    ConflictingCellTypeWithStorageCondition  (3)

    If CellType for samples and SamplesOutStorageCondition are both microbial but one is Bacterial and the other is Yeast, throw a soft warning and allows for protocol generation:

    If CellType for samples and SamplesOutStorageCondition are both microbial but one is Bacterial and the other is Yeast, throw a soft warning and allows for protocol generation:

    If samples are Mammalian, can't specify a Bacterial or Yeast SamplesOutStorageCondition (and vice versa):

    ConflictingCultureAdhesion  (2)

    If a sample's state is Liquid but CultureAdhesion is specified as SolidMedia, throws an error and returns $Failed:

    If CultureAdhesion options are provided, and they conflict with the CultureAdhesion of the sample(s) specified, throws an error and returns $Failed:

    ConflictingCultureAdhesionWithContainer  (2)

    A discarded Adherent sample that no longer has a container does not further trigger ConflictingCultureAdhesionWithContainer, or complain about container footprint if thats is the only conflict with the specified Incubator/IncubationCondition, throws DiscardedSample error and returns $Failed:

    If samples are in a flask, CultureAdhesion can't be SolidMedia:

    ConflictingIncubationConditionsForSameContainer  (1)

    If two samples are in the same container, they cannot have different incubation conditions:

    ConflictingIncubationConditionWithSettings  (2)

    If the incubation setting options are not supported by the specified incubation condition, throws an error and returns $Failed:

    If the incubation setting options are not supported by the specified incubators, throws an error and returns $Failed:

    ConflictingIncubationWorkCells  (1)

    If WorkCell is specified, it must not disagree with the sample type or the specified incubator:

    ConflictingIncubatorIncubationCondition  (1)

    If the specified IncubationCondiction is conflicting with the specified incubator, throw an error and return $Failed:

    ConflictingIncubatorWithSettings  (2)

    If the incubation setting options are not supported by the specified incubators, throws an error and returns $Failed:

    If the incubation setting options are not supported by the specified incubator, throws an error and returns $Failed:

    ConflictingShakingConditions  (4)

    If shaking options are provided, but Shake is set to False, throws an error, returns $Failed, and only uses the provided shaking option values to resolve incubator:

    If shaking options are specified to be Null but Shake is set to True, throws an error, returns $Failed, and only uses Shake->True to resolve incubator:

    If the two shaking options are specified to be conflicting with each other, throws an error, returns $Failed, and only uses non-null values to resolve incubator:

    If using a mammalian sample, and any shaking options are specified to be conflicting, throws an error, returns $Failed, and only uses null values or Shake -> False to resolve incubator:

    ConflictingUnitOperationMethodRequirements  (7)

    If incubator specified is a mix of robotic incubator and manual incubator, throw an error:

    If Preparation is set to Robotic but CultureAdhesion is SolidMedia, throw an error:

    If Preparation is set to Robotic but IncubationCondition is specified as non-Custom, throw an error:

    If Preparation is set to Robotic, then Time must not be greater than 3 hours:

    If the CultureAdhesion is detected or specified to be SolidMedia, the preparation is not allowed to be Robotic:

    If the QuantificationInstrument is a colony handler while the preparation is Robotic, an error is thrown:

    If the QuantificationMethod is ColonyCount while the preparation is Robotic, an error is thrown:

    ConflictingWorkCellWithPreparation  (2)

    If Preparation is set to Manual, WorkCell must not be set. If Preparation is set to Robotic, it must be set to the correct work cell, otherwise an error will be thrown:

    If Preparation is set to Manual, WorkCell must not be set. If Preparation is set to Robotic, it must be set to the correct work cell, otherwise an error will be thrown:

    CultureAdhesionNotSpecified  (1)

    If a sample is provided with no CultureAdhesion, throws a warning and creates a protocol:

    CustomIncubationConditionNotSpecified  (1)

    If a sample has IncubationCondition set to Custom, a warning will be thrown for all options not specified:

    DeprecatedModel  (1)

    If the given samples have deprecated models, they cannot be incubated:

    DiscardedSample  (1)

    If the given samples are discarded, they cannot be incubated:

    DuplicatedSamples  (1)

    A sample cannot be specified more than one time in a given experiment call:

    EmptySamples  (4)

    If a sample is liquid but Volume is less than 1% of MaxVolume of container, throws a warning:

    If a sample is liquid but Volume is not populated, throws a warning:

    If a sample is solid but Mass is less than 1% of MaxVolume of container, throws a warning:

    If a sample is solid but Mass is not populated, throws a warning:

    GaseousSamples  (1)

    If the given samples are gaseous, they cannot be incubated:

    IncubationConditionIsIncompatible  (4)

    If multiple samples have the container and/or cell type not supported by the incubation conditions specified, throws an error and returns $Failed:

    If the sample cell type is not supported by the incubation condition specified, throws an error and returns $Failed:

    If the sample container is not supported by the incubation condition specified, throws an error and returns $Failed:

    If the specified cell type is not supported by the incubation condition specified, throws an error and returns $Failed:

    IncubationMaxTemperature  (1)

    If a sample is provided in a container incompatible with the temperature requested, throws an error and returns $Failed:

    IncubatorIsIncompatible  (3)

    If a sample's container is incompatible with the incubator model specified, throws an error and returns $Failed:

    If CellType is Mammalian, a Bacterial incubator cannot be specified:

    If the samples' container, celltype, and/or culture adhesion is not supported by the incubator model specified, throws an error and returns $Failed:

    InvalidCellIncubationContainers  (2)

    If a sample is provided in a container incompatible with all incubators, throws an error and returns $Failed:

    If a sample is provided in a container incompatible with all incubators, throws an error and returns $Failed:

    InvalidIncubationConditions  (1)

    If storage condition object is specified, an error is thrown if it is not a supported cellular incubation storage condition:

    InvalidPlateSamples  (1)

    If a sample is provided that contains other unspecified samples in its own container, an error is thrown:

    NoIncubatorForContainersAndSettings  (2)

    If no incubator can be found to support either the sample (container, cell type, culture adhesion) or the specified incubation settings for multiple samples, throws an error to recommend both transferring the samples and changing options, and returns $Failed:

    If no incubator can be found to support either the sample (container, cell type, culture adhesion) or the specified incubation settings, throws an error to recommend both transferring the samples and changing options, and returns $Failed:

    NoIncubatorForSettings  (2)

    If no incubator can be found to support both the sample (container, cell type, culture adhesion) and the specified incubation settings, throws an error to recommend either changing options or alternatively transferring the samples (if applicable) and returns $Failed:

    If no incubator can be found to support both the sample (container, cell type, culture adhesion) and the specified incubation settings, throws an error to recommend either changing options or alternatively transferring the samples (if applicable) and returns $Failed:

    ObjectDoesNotExist  (6)

    Do NOT throw a message if we have a simulated container but a simulation is specified that indicates that it is simulated:

    Do NOT throw a message if we have a simulated sample but a simulation is specified that indicates that it is simulated:

    Throw a message if we have a container that does not exist (ID form):

    Throw a message if we have a container that does not exist (name form):

    Throw a message if we have a sample that does not exist (ID form):

    Throw a message if we have a sample that does not exist (name form):

    ShakingRecommendedForStorageCondition  (2)

    If samples are Suspension, throw a warning if SamplesOutStorageCondition is an incubation condition without shaking:

    Note that solid media in refrigerator is allowed:

    TooManyCustomIncubationConditions  (2)

    Can only use one custom incubator per protocol:

    If one sample can only be done on the bioSTAR and another on the microbioSTAR, an error is thrown:

    TooManyIncubationSamples  (1)

    If more samples are specified than can fit in an incubator, an error is thrown:

    UnsealedCellCultureVessels  (1)

    If a manual incubation is specified with an open container, a warning is thrown:

    UnsupportedCellCultureType  (1)

    If using a mammalian sample, suspension cell culture cannot be currently supported:

    UnsupportedCellTypes  (1)

    If an unsupported cell type is provided (not Bacterial, Mammalian, or Yeast), an error is thrown:

Possible Issues

    Storing cell samples in incubator

    ExperimentIncubateCells generally starts and ends with samples containing living cells, which are inherently unstable. Excessively long incubation times or storage of SamplesOut in incubators for an extended period of time may lead to cell death. Setting suitable Time and SamplesOutStorageCondition options are essential to maintain cell viability. Unless otherwise specified, samples will be kept in the specified incubator after Time has completed, until they are use in another protocol.

    Incubator compatibility errors

    Errors related to incubator compatibility may occur for your selected combination of options and containers. These errors include, but are not limited to: InvalidCellIncubationContainers, NoIncubatorForSettings, NoIncubatorForContainsAndSettings, IncubatorIsIncompatible, and ConflictingIncubatorWithSettings. Such errors arise because 1) each incubator model is designed with specific decks and racks tailored to fit certain container types, 2) incubators support only particular cell types to prevent contamination, 3) default incubators are set to provide specific incubation settings that are generally suitable for the designated cell type(s), and 4) custom incubators have operating limits in Temperature, CarbonDioxide, RelativeHumidity, and ShakingRadius. Please consult the Instrumentation section for more details about the supported containers and incubation settings for each incubator model. In addition to following the recommended adjustments mentioned in the error messages, you can also use the IncubateCellsDevices function to explore incubator compatibility. By inputting different combinations of desired containers and incubation settings, this tool returns a list of incubators compatible with those parameters.

    Thread Usage During Cell Incubation

    If a protocol uses a custom incubator or the Custom IncubationCondition, it will consume a thread because the cell incubator is exclusively reserved for this protocol's cell samples for the specified Time. In contrast, if a protocol uses a default incubator or any non-custom IncubationCondition, it does not consume a thread while the cells remain inside the cell incubator. In this case, the cell samples are passively stored for the specified Time in a shared incubator, which may contain samples from other protocols.

    Part of a Comprehensive Cell Preparation Workflow

    ExperimentIncubateCells processes samples as received without any sample preparation or analysis. Therefore, samples must be prepared in incubator-compatible containers (plates or flasks) before calling ExperimentIncubateCells (see PreferredInputContainers section, and call IncubateCellsDevices[myContainer] to see a list of compatible incubators). This experiment is intended to be part of a larger workflow that includes other experiments such as inoculation, quantification, and more, rather than as a standalone process. For example, a workflow â illustrated above using an IncubateCells unit operation within an ExperimentCellPreparation call â may include the following steps: 1) labeling the source cell sample, 2) inoculating the cell sample into liquid media, 3) incubating the inoculated cells, and 4) freezing the cultured cells for long-term storage.
Last modified on Thu 21 Aug 2025 15:16:55