ecl-logo Documentation
ECL`

ExperimentGrowCrystal

ExperimentGrowCrystal[Samples]Protocol

creates a Protocol object to prepare crystallization plate designed to grow crystals of the provided input Samples. Once the crystallization plate is constructed by pipetting, it is placed in crystal incubator which takes daily images of Samples using visible light, ultraviolet light and polarized light. The best crystals which grow can be passed along to ExperimentXRD to obtain diffraction patterns.

    
ExperimentGrowCrystal prepares crystallization plate designed to grow crystals of the provided input 'Samples'. Once the crystallization plate is constructed by pipetting, it is placed in crystal incubator which takes daily images of 'Samples' using visible light, ultraviolet light and polarized light. The best crystals which grow can be passed along to ExperimentXRD to obtain diffraction patterns.
    

Experimental Principles

    Figure 1.1: Input/Output diagram of a GrowCrystal experiment.
    Figure 1.2: Procedural overview of a GrowCrystal experiment for a prepared plate. If PreparedPlate option is set as True, sample preparation steps will be skipped. Store the prepared CrystallizationPlate in crystal incubator and schedule imaging daily.

Instrumentation

    Crystal Incubator with built-in Imager

    Formulatrix Rock Imager

    Figure 2.1.1: Instrument diagram for the crystal incubator storage system.
    Figure 2.1.2: Instrument diagram for ZStackingImaging.
    Figure 2.1.3: Instrument diagram for crystal Incubator imaging system.

Experiment Options

    General

    PreparedPlate

    Indicates if the plate containing the samples for crystallization experiment has been previously transferred with samples and reagents and does not need to run sample preparation step to construct the crystallization plate. Once PreparedPlate is set to True, the provided plate is put into crystal incubator directly without sample preparation step and scheduled for daily imaging.
    Default Value: Automatic
    Default Calculation: Automatically set PreparedPlate to True if all samples are in one crystallization plate.
    Pattern Description: True or False.
    Programmatic Pattern: BooleanP | Automatic

    CrystallizationTechnique

    The technique that is used to construct crystallization plate and promote the sample solution to nucleate and grow during the incubation. For a crystal to nucleate and grow, the solution needs to reach the nucleation zone first, after which it can continue to grow. There are two common techniques: Vapor Diffusion and Microbatch. Both techniques are set up by a drop composed of a mixture of sample and reagents (such as precipitants, salts, additives) in the attempt to form the crystals of the input sample in the drop. In the Vapor Diffusion technique, two separate wells are connected by headspace for vapor: a drop well and a reservoir well. Water vapor leaves the drop during the incubation step and ends up in the reservoir containing higher concentration of precipitant, thus the change in concentration may lead to crystallization. In Microbatch technique, only the drop well is filled. Overtime, the droplet begins to evaporate causing the concentration of the drop to increase. Alternatively, some oil, like paraffin oil, can be added on top of the drop to seal the vapors in so that no significant concentration of the sample nor the reagents change overtime. See Figure 3.1 for more information about the set up for different Crystallization techniques and their courses on phase diagram.
    Figure 3.1: The technique that is used to construct crystallization plate and promote the sample solution to nucleate and grow during the incubation. For a crystal to nucleate and grow, the solution needs to reach the nucleation zone first, after which it can continue to grow. There are two common techniques: Vapor Diffusion and Microbatch. Both techniques are set up by a drop composed of a mixture of sample and reagents (such as precipitants, salts, additives) in the attempt to form the crystals of the input sample in the drop. In the Vapor Diffusion technique, two separate wells are connected by headspace for vapor: a drop well and a reservoir well. Water vapor leaves the drop during the incubation step and ends up in the reservoir containing higher concentration of precipitant, thus the change in concentration may lead to crystallization. In Microbatch technique, only the drop well is filled. Overtime, the droplet begins to evaporate causing the concentration of the drop to increase. Alternatively, some oil, like paraffin oil, can be added on top of the drop to seal the vapors in so that no significant concentration of the sample nor the reagents change overtime.
    Default Value: Automatic
    Default Calculation: Automatically set CrystallizationTechnique to a technique that matches with CrystallizationPlate and technique-specific options. If CrystallizationPlate is set to a model which is only compatible with one technique, then set CrystallizationTechnique to that technique. If ReservoirDispensingInstrument or ReservoirBufferVolume is specified, automatically set CrystallizationTechnique to SittingDropVaporDiffusion. Likewise, if Oil or OilVolume is specified, automatically set CrystallizationTechnique to MicrobatchUnderOil. If none of these options are specified, set to CrystallizationTechnique default to SittingDropVaporDiffusion.
    Pattern Description: SittingDropVaporDiffusion, MicrobatchWithoutOil, or MicrobatchUnderOil.
    Programmatic Pattern: CrystallizationTechniqueP | Automatic

    CrystallizationStrategy

    The end goal for setting up the crystallization plate, either Screening, Optimization, or Preparation. Screening is a multi-dimensional search for crystallization conditions by varying sample concentration, pH, ionic strengths, precipitants, additives to see which combination of variables produces crystals. While Optimization is after finding a set or multiple sets of factors that held some low-quality crystals, to fine-tune the conditions to obtain the best possible crystal for diffraction. Both Screening and Optimization provide multiple conditions for the same input sample. Preparation is preparing the crystallization plate with a fixed set of factors. See Figure 3.2 for more information about suggested options for different strategies.
    Figure 3.2: The end goal for setting up the crystallization plate, either Screening, Optimization, or Preparation. Screening is a multi-dimensional search for crystallization conditions by varying sample concentration, pH, ionic strengths, precipitants, additives to see which combination of variables produces crystals. While Optimization is after finding a set or multiple sets of factors that held some low-quality crystals, to fine-tune the conditions to obtain the best possible crystal for diffraction. Both Screening and Optimization provide multiple conditions for the same input sample. Preparation is preparing the crystallization plate with a fixed set of factors. For SittingDropVaporDiffusion CrystallizationTechnique, please see recommended settings in the table.
    Default Value: Automatic
    Default Calculation: Automatically set to Null if PreparedPlate is True, set to Preparation if there is only one set of options for the input sample, set to Screening if there are multiple sets of options and SampleVolumes are all less than 1 Microliter, and set to Optimization if there are multiple sets of options and SampleVolumes is equal to or larger than 1 Microliter.
    Pattern Description: Screening, Optimization, or Preparation or Null.
    Programmatic Pattern: (CrystallizationStrategyP | Automatic) | Null

    CrystallizationPlate

    The container that the input sample and other reagents that are transferred into. After the container is constructed by pipetting, it is incubated and imaged to monitor the growth of crystals of the input sample.
    Default Value: Automatic
    Default Calculation: If PreparedPlate is True, automatically set CrystallizationPlate to the input container. If PreparedPlate is False and CrystallizationTechnique is MicrobatchUnderOil, set CrystallizationPlate to Model[Container, Plate, Irregular, Crystallization, "MRC UnderOil 96 Well Plate"]. For other crystallization techniques, set CrystallizationPlate to Model[Container, Plate, Irregular, Crystallization, "MiTeGen 1 Drop Plate"] if CrystallizationStrategy is Screening, or set CrystallizationPlate to Model[Container, Plate, Irregular, Crystallization, "MRC Maxi 48 Well Plate"] if CrystallizationStrategy is Optimization or Preparation.
    Pattern Description: An object of type or subtype Model[Container, Plate] or Object[Container, Plate] or a prepared sample.
    Programmatic Pattern: (ObjectP[{Model[Container, Plate], Object[Container, Plate]}] | _String) | Automatic

    CrystallizationCover

    The thin film that is placed over the top of the CrystallizationPlate after the container is constructed by pipetting. The sealed CrystallizationPlate is then incubated and imaged to monitor the growth of crystals of the input sample. CrystallizationCover separates the contents inside of CrystallizationPlate from environment and each other to prevent contamination, evaporation and cross-contamination.
    Default Value: Model[Item, PlateSeal, Crystal Clear Sealing Film]
    Pattern Description: An object of type or subtype Model[Item, PlateSeal] or Object[Item, PlateSeal]
    Programmatic Pattern: ObjectP[{Model[Item, PlateSeal], Object[Item, PlateSeal]}]

    ReservoirDispensingInstrument

    The instrument for transferring reservoir buffers to the reservoir wells of crystallization plate during the sample preparation step of the crystallization experiment if CrystallizationTechnique is SittingDropVaporDiffusion.
    Default Value: Automatic
    Default Calculation: Automatically set to Model[Instrument, LiquidHandler, "Super STAR"] if CrystallizationTechnique is SittingDropVaporDiffusion and PreparedPlate is False.
    Pattern Description: An object of type or subtype Model[Instrument, LiquidHandler] or Object[Instrument, LiquidHandler] or Null.
    Programmatic Pattern: (ObjectP[{Model[Instrument, LiquidHandler], Object[Instrument, LiquidHandler]}] | Automatic) | Null

    DropSetterInstrument

    The instrument which transfers the input sample and other reagents to the drop wells of crystallization plate during the sample preparation step of the crystallization experiment. The instrument is often an acoustic liquid handler that transfers very small volumes of liquid in nanoliter range accurately via acoustic ejection. Alternatively, a robotic liquid handler that transfers larger volumes of liquid in microliter range using micropipettes can be used.
    Default Value: Automatic
    Default Calculation: Automatically set to Model[Instrument, LiquidHandler, "Super STAR"] if CrystallizationStrategy is Optimization or Preparation, or set to Model[Instrument, LiquidHandler, AcousticLiquidHandler, "Labcyte Echo 650"] if CrystallizationStrategy is Screening.
    Pattern Description: An object of type or subtype Model[Instrument, LiquidHandler], Object[Instrument, LiquidHandler], Model[Instrument, LiquidHandler, AcousticLiquidHandler], or Object[Instrument, LiquidHandler, AcousticLiquidHandler] or Null.
    Programmatic Pattern: (ObjectP[{Model[Instrument, LiquidHandler], Object[Instrument, LiquidHandler], Model[Instrument, LiquidHandler, AcousticLiquidHandler], Object[Instrument, LiquidHandler, AcousticLiquidHandler]}] | Automatic) | Null

    ImagingInstrument

    The instrument for monitoring the growth of crystals of an input sample, which is placed in a crystallization plate. This is achieved by capturing daily images of the drop that contains the sample, using visible light, ultraviolet light and cross polarized light.
    Default Value: Model[Instrument, CrystalIncubator, Formulatrix Rock Imager]
    Pattern Description: An object of type or subtype Model[Instrument, CrystalIncubator] or Object[Instrument, CrystalIncubator]
    Programmatic Pattern: ObjectP[{Model[Instrument, CrystalIncubator], Object[Instrument, CrystalIncubator]}]

    Sample Preparation

    CrystallizationScreeningMethod

    The file containing a set of reagents is used to construct a crystallization plate for screening crystal conditions of the input sample. One set of screening reagents, consisting of ReservoirBuffers, Additives or CoCrystallizationReagents, is used to construct the crystal conditions for one input sample to limit the dimensions of uncertainty. Other options including DilutionBuffer and SeedingSolution can be provided and combined with the sets of reagents in CrystallizationScreeningMethod. These combinations are then transferred in a multiplexed manner to create a unique drop composition for each well.
    Default Value: Automatic
    Default Calculation: Automatically set CrystallizationScreeningMethod to a screening method varying ReservoirBuffers based on the analytes of sample properties (i.e., protein and organic small molecule) if CrystallizationStrategy is Screening or Optimization and the options (such as ReservoirBuffers, Additives, CoCrystallizationReagents) required to construct the plate are not specified in sample preparation options, set CrystallizationScreeningMethod to None if CrystallizationStrategy is Preparation, or set CrystallizationScreeningMethod to Custom if no existing methods have desired ReservoirBuffers, Additives, or CoCrystallizationReagents and those options are to be specified directly.
    Pattern Description: Existing Screening Method or None or Custom or Null.
    Programmatic Pattern: ((ObjectP[{Object[Method, CrystallizationScreening]}] | (None | Custom)) | Automatic) | Null
    Index Matches to: experiment samples

    SampleVolumes

    The amount(s) of the input sample that is transferred into the drop well of CrystallizationPlate as part of the drop setting step in sample preparation. When there are multiple SampleVolumes provided, each input sample is combined with other buffers such as DilutionBuffer, ReservoirBuffers, Additives, CoCrystallizationReagents, and SeedingSolution. These combinations are then transferred in a multiplexed manner to create a unique drop composition for each well. Please use ExperimentGrowCrystalPreview to check if the combinations are as you expected.
    Default Value: Automatic
    Default Calculation: If CrystallizationStrategy is set to Screening, SampleVolumes is automatically set to 200 Nanoliters. Otherwise, SampleVolumes is automatically set to 2 Microliters.
    Pattern Description: Condition screening or Fixed conditions or Null.
    Programmatic Pattern: (({RangeP[0*Nanoliter, $MaxCrystallizationPlateDropVolume]..} | {RangeP[0*Nanoliter, $MaxCrystallizationPlateDropVolume] ;; RangeP[0*Nanoliter, $MaxCrystallizationPlateDropVolume], RangeP[0*Nanoliter, $MaxCrystallizationPlateDropVolume]}) | Automatic) | Null
    Index Matches to: experiment samples

    ReservoirBuffers

    The cocktail solution which contains high concentration of precipitants, salts and pH buffers. The ReservoirBuffer provides a specific combination of reagents that are designed to facilitate the crystallization of the input sample. Please use ExperimentGrowCrystalPreview to check if the combinations are as you expected.
    Default Value: Automatic
    Default Calculation: Automatically set to match the ReservoirBuffers field in the CrystallizationScreeningMethod, or set to Model[Sample, StockSolution, "300mM Sodium Chloride"] if CrystallizationScreeningMethod is Custom or None.
    Pattern Description: Buffers or None or Null.
    Programmatic Pattern: (({(ObjectP[{Model[Sample], Object[Sample]}] | _String)..} | None) | Automatic) | Null
    Index Matches to: experiment samples

    ReservoirBufferVolume

    The amount of ReservoirBuffers that is transferred into the reservoir well of CrystallizationPlate, during the reservoir filling step of sample preparation before any drop well is set if CrystallizationTechnique is SittingDropVaporDiffusion. In such a plate configuration, the drops sharing headspace with each reservoir well have the same precipitant composition. The reservoir buffer placed in the reservoir well is designed to drive the supersaturation of samples in the drop wells that share the same headspace with the reservoir.
    Default Value: Automatic
    Default Calculation: Automatically set to 20 Microliters if CrystallizationStrategy is Screening and CrystallizationTechnique is SittingDropVaporDiffusion, or set to 200 Microliters if CrystallizationStrategy is Optimization or Preparation and CrystallizationTechnique is SittingDropVaporDiffusion.
    Pattern Description: Greater than or equal to 0.5 microliters and less than or equal to 300 microliters or Null.
    Programmatic Pattern: (RangeP[$MinRoboticTransferVolume, $MaxCrystallizationPlateReservoirVolume] | Automatic) | Null
    Index Matches to: experiment samples

    ReservoirDropVolume

    The amount of ReservoirBuffers that is transferred into the drop well of CrystallizationPlate as part of the drop setting step of sample preparation. The reservoir buffer provides a specific combination of reagents that are designed to facilitate the crystallization of the input sample when mixed together.
    Default Value: Automatic
    Default Calculation: Automatically set to 200 Nanoliters if CrystallizationStrategy is Screening, or set to 2 Microliters if CrystallizationStrategy is Optimization or Preparation.
    Pattern Description: Greater than or equal to 0 nanoliters and less than or equal to 20 microliters or Null.
    Programmatic Pattern: (RangeP[0*Nanoliter, $MaxCrystallizationPlateDropVolume] | Automatic) | Null
    Index Matches to: experiment samples

    DilutionBuffer

    The solution to bring the concentration of the input sample down by mixing with the input sample as part of the drop setting step of sample preparation.
    Default Value: Automatic
    Default Calculation: Automatically set to None if PreparedPlate is False.
    Pattern Description: Buffer or None or Null.
    Programmatic Pattern: (((ObjectP[{Model[Sample], Object[Sample]}] | _String) | None) | Automatic) | Null
    Index Matches to: experiment samples

    DilutionBufferVolume

    The amount of DilutionBuffer that is transferred into the drop well of CrystallizationPlate to bring down the concentration of the input sample as part of the drop setting step of sample preparation.
    Default Value: Automatic
    Default Calculation: If DilutionBuffer is specified, automatically set DilutionBufferVolume to 100 Nanoliters if CrystallizationStrategy is Screening, or set DilutionBufferVolume to 1 Microliters if CrystallizationStrategy is Optimization or Preparation.
    Pattern Description: Greater than or equal to 0 nanoliters and less than or equal to 20 microliters or Null.
    Programmatic Pattern: (RangeP[0*Nanoliter, $MaxCrystallizationPlateDropVolume] | Automatic) | Null
    Index Matches to: experiment samples

    Additives

    The solution that is transferred into the drop well of CrystallizationPlate to change the solubility of the input sample with the objective of improving crystal quality as part of the drop setting step of sample preparation. Additives can include a wide range of compounds, such as organic solvents, salts, amino acids, and polymers. When there are multiple Additives provided, each additive is combined with the input sample and other buffers such as DilutionBuffer, ReservoirBuffers, CoCrystallizationReagents, and SeedingSolution. These combinations are then transferred in a multiplexed manner to create a unique drop composition for each well. Please use ExperimentGrowCrystalPreview to check if the combinations are as you expected.
    Default Value: Automatic
    Default Calculation: Additives is automatically set to match the Additives field in the CrystallizationScreeningMethod if a method is specified, otherwise Additives is automatically set to None.
    Pattern Description: Additives or None or Null.
    Programmatic Pattern: (({(ObjectP[{Model[Sample], Object[Sample]}] | _String)..} | None) | Automatic) | Null
    Index Matches to: experiment samples

    AdditiveVolume

    The amount of Additives that is transferred into the drop well of CrystallizationPlate with the objective of improving crystal quality as part of the drop setting step of sample preparation.
    Default Value: Automatic
    Default Calculation: If Additives is specified, automatically set AdditiveVolume to 50 Nanoliters if CrystallizationStrategy is Screening, or set AdditiveVolume to 500 Nanoliters if CrystallizationStrategy is Optimization or Preparation.
    Pattern Description: Greater than or equal to 0 nanoliters and less than or equal to 20 microliters or Null.
    Programmatic Pattern: (RangeP[0*Nanoliter, $MaxCrystallizationPlateDropVolume] | Automatic) | Null
    Index Matches to: experiment samples

    CoCrystallizationReagents

    The solution that is transferred into the drop well of CrystallizationPlate containing compounds such as small molecule drugs, metal salts, antibodies or other ligands that solidify together with the input sample. If CoCrystallizationAirDry is False, CoCrystallizationReagents are added to the drop during the drop setting step of sample preparation. Alternatively, CoCrystallizationReagents are added before the reservoir filling step of sample preparation when CoCrystallizationAirDry is True. Please use ExperimentGrowCrystalPreview to check if the combinations are as you expected.
    Default Value: Automatic
    Default Calculation: Automatically set CoCrystallizationReagents to match the CoCrystallizationReagents field in the CrystallizationScreeningMethod if a method is specified, otherwise set CoCrystallizationReagents to None.
    Pattern Description: Buffers or None or Null.
    Programmatic Pattern: (({(ObjectP[{Model[Sample], Object[Sample]}] | _String)..} | None) | Automatic) | Null
    Index Matches to: experiment samples

    CoCrystallizationReagentVolume

    The amount of CoCrystallizationReagents that is transferred into the drop well of CrystallizationPlate containing small molecule drugs, metal salts, antibodies or other ligands with the objective of solidifying together with the input sample in a crystal form during the drop setting step of sample preparation if CoCrystallizationAirDry is False or before the reservoir filling step of sample preparation if CoCrystallizationAirDry is True.
    Default Value: Automatic
    Default Calculation: If CoCrystallizationReagents is specified, CoCrystallizationReagentVolume is automatically set to 50 Nanoliters when CrystallizationStrategy is Screening, or CoCrystallizationReagentVolume is set to 500 Nanoliters when CrystallizationStrategy is Optimization or Preparation.
    Pattern Description: Greater than or equal to 0 nanoliters and less than or equal to 20 microliters or Null.
    Programmatic Pattern: (RangeP[0*Nanoliter, $MaxCrystallizationPlateDropVolume] | Automatic) | Null
    Index Matches to: experiment samples

    CoCrystallizationAirDry

    Indicates if the CoCrystallizationReagents are added to an empty crystallization plate and fully evaporated prior to filling the reservoir well and drop well of the crystallization plate.
    Default Value: Automatic
    Default Calculation: Automatically set to the False if CoCrystallizationReagents if specified.
    Pattern Description: True or False or Null.
    Programmatic Pattern: (BooleanP | Automatic) | Null
    Index Matches to: experiment samples

    CoCrystallizationAirDryTime

    The length of time for which the CoCrystallizationReagents are held inside the FumeHood or LiquidHandler enclosure with blower to allow the solvent to be fully evaporated from the crystallization plate prior to filling the reservoir well and drop well of the crystallization plate.
    Default Value: Automatic
    Default Calculation: Automatically set to half an hour if CoCrystallizationAirDry is True.
    Pattern Description: Greater than or equal to 0 hours and less than or equal to 72 hours or Null.
    Programmatic Pattern: (RangeP[0*Hour, $MaxExperimentTime] | Automatic) | Null

    CoCrystallizationAirDryTemperature

    The temperature for which the CoCrystallizationReagents are held inside the FumeHood or on HeatBlock of LiquidHandler to allow the solvent to be fully evaporated from the crystallization plate prior to filling the reservoir well and drop well of the crystallization plate.
    Default Value: Automatic
    Default Calculation: Automatically set to $AmbientTemperature if CoCrystallizationAirDryTime is longer than an hour, or 40 degrees Celsius if CoCrystallizationAirDryTime is within an hour.
    Pattern Description: Ambient Room Temperature or Set Heater Temperature or Null.
    Programmatic Pattern: ((Ambient | RangeP[$AmbientTemperature, $MaxRoboticIncubationTemperature]) | Automatic) | Null

    SeedingSolution

    The solution that is transferred into the drop well of CrystallizationPlate containing micro crystals of the input sample as part of drop setting step. The micro crystals serve as nucleates to facilitate crystallization process.
    Default Value: Automatic
    Default Calculation: Automatically set to None if PreparedPlate is False.
    Pattern Description: None or SeedingSolution or Null.
    Programmatic Pattern: (((ObjectP[{Model[Sample], Object[Sample]}] | _String) | None) | Automatic) | Null
    Index Matches to: experiment samples

    SeedingSolutionVolume

    The amount of SeedingSolution that is transferred into the drop well of CrystallizationPlate containing micro crystals of the input sample that serves as templates for the growth of larger crystals to facilitate crystallization during the drop setting step of sample preparation.
    Default Value: Automatic
    Default Calculation: If SeedingSolution is specified, SeedingSolutionVolume is automatically set to 50 Nanoliters if CrystallizationStrategy is Screening, or SeedingSolutionVolume is set to 500 Nanoliters if CrystallizationStrategy is Optimization or Preparation.
    Pattern Description: Greater than or equal to 0 nanoliters and less than or equal to 20 microliters or Null.
    Programmatic Pattern: (RangeP[0*Nanoliter, $MaxCrystallizationPlateDropVolume] | Automatic) | Null
    Index Matches to: experiment samples

    Oil

    The fluid that is dispensed to cover the droplet containing sample and other reagents (DilutionBuffer, Additives, ReservoirBuffers, CoCrystallizationReagents) to control the evaporation of water after the drop setting step of sample preparation if CrystallizationTechnique is MicrobatchUnderOil.
    Default Value: Automatic
    Default Calculation: Automatically set to Model[Sample, "Mineral Oil"] if CrystallizationTechnique is MicrobatchUnderOil.
    Pattern Description: An object of type or subtype Model[Sample] or Object[Sample] or a prepared sample or Null.
    Programmatic Pattern: ((ObjectP[{Model[Sample], Object[Sample]}] | _String) | Automatic) | Null
    Index Matches to: experiment samples

    OilVolume

    The amount of Oil that is dispensed to cover the droplet containing sample and other reagents (DilutionBuffer, Additives, ReservoirBuffers, CoCrystallizationReagents) to control the evaporation of water after the drop setting step of sample preparation if CrystallizationTechnique is MicrobatchUnderOil.
    Default Value: Automatic
    Default Calculation: Automatically set to 16 Microliter if Oil is specified.
    Pattern Description: Greater than or equal to 0.5 microliters and less than or equal to 300 microliters or Null.
    Programmatic Pattern: (RangeP[$MinRoboticTransferVolume, $MaxCrystallizationPlateReservoirVolume] | Automatic) | Null
    Index Matches to: experiment samples

    DropDestination

    The desired well content location for DropSamplesOut. See Figure 3.3 for more information.
    Default Value: Automatic
    Default Calculation: If PreparedPlate is True, automatically set DropDestination to the well locations of samples. If PreparedPlate is False, set DropDestination based on the configuration of CrystallizationPlate, CrystallizationTechnique and the total number of unique drop compositions.
    Pattern Description: List of one or more Drop1, Drop2, Drop3, Drop4, Drop5, Drop6, or Reservoir entries or Null.
    Programmatic Pattern: ({CrystallizationWellContentsP..} | Automatic) | Null
    Index Matches to: experiment samples

    PreMixBuffer

    Indicates if various type of buffers (including DilutionBuffer, ReservoirBuffers, unevaporated CoCrystallizationReagents, Additives, SeedingSolution) should be premixed before being added to the drop wells of a CrystallizationPlate. When PreMixBuffer is set to True, these buffers are combined to generate mixtures that share components as DropSamplesOut, except no input samples included. The buffer mixtures are then transferred to the drop wells of CrystallizationPlate, followed by the direct transfer of input samples directly to the drop wells. This process ensures that unique drop compositions for DropSamplesOut are prepared. However, in some cases where the total volume of all the buffer components is below 1 Microliter while the volume of the input Sample component is equal to or greater than 1 Microliter, a different transfer approach is taken after the buffer mixtures are prepared. Instead of adding the buffer mixtures and input samples directly to the drop wells, they are first mixed together and then transferred to drop wells of CrystallizationPlate. The purpose of premixing the buffers is to reduce the sample preparation time for CrystallizationPlate during drop setting step of sample preparation. By premixing, the overall transfer time is minimized, improving the efficiency of the process. See Figure 3.4 for more information about PreMixBuffer.
    Default Value: Automatic
    Default Calculation: Automatically set PreMixBuffer to the Null if PreparedPlate is True or when there are less than two buffer components in DropSamplesOut, otherwise automatically set PreMixBuffer to True.
    Pattern Description: True or False or Null.
    Programmatic Pattern: (BooleanP | Automatic) | Null

    Incubation

    MaxCrystallizationTime

    The max length of time for which the sample is held inside the crystal incubator to allow the growth of the crystals.
    Default Value: 11 days
    Pattern Description: Greater than or equal to 0 days and less than or equal to 6 months.
    Programmatic Pattern: RangeP[0*Day, 6*Month]

    Imaging

    UVImaging

    Indicates if UV fluorescence images are scheduled to be captured. UV Imaging harnesses the intrinsic fluorescence of tryptophan excited by UV light at 280nm and emitted at 350nm to signify the presence of a protein, reducing false positive and false negative identification of protein crystals.
    Default Value: Automatic
    Default Calculation: Automatically set to True if the range of transparent wavelength of CrystallizationPlate covers 280nm-350nm and ImagingInstrument is cable of taking images at UVImaging mode.
    Pattern Description: True or False.
    Programmatic Pattern: BooleanP | Automatic

    CrossPolarizedImaging

    Indicates if images by cross polarized light of crystallization plate are scheduled to be captured. The polarizers aid in the identification of crystals by harnessing a crystal's natural birefringence properties, providing a kaleidoscope of colors on the crystal's planes to differentiate a crystal from the plate surface and mother liquor.
    Default Value: Automatic
    Default Calculation: Automatically set to True if the ImagingInstrument is cable of taking images at CrossPolarizedImaging mode.
    Pattern Description: True or False.
    Programmatic Pattern: BooleanP | Automatic

    Model Input

    PreparedModelAmount

    Indicates the amount of a Model[Sample] specified as input to the experiment function that will be prepared in the PreparedModelContainer. When set to All and the input model sample is not preparable, the entire amount of the input model sample that comes from one of the Products is prepared. The selected product must have both Amount and DefaultContainerModel populated, and it must not be a KitProduct. When set to All and the input model is preparable such as water, 1 Milliliter of the input model sample is prepared.
    Default Value: Automatic
    Default Calculation: Automatically set to 10 Microliter.
    Pattern Description: All or Count or Count or Mass or Volume or Null.
    Programmatic Pattern: ((Null | (RangeP[1*Microliter, 20*Liter] | RangeP[1*Milligram, 20*Kilogram] | GreaterP[0*Unit, 1*Unit] | GreaterP[0., 1.] | All)) | Automatic) | Null
    Index Matches to: experiment samples

    PreparedModelContainer

    Indicates the container in which a Model[Sample] specified as input to the experiment function will be prepared.
    Default Value: Automatic
    Default Calculation: If PreparedModelAmount is set to All and the input model has a product associated with both Amount and DefaultContainerModel populated, automatically set to the DefaultContainerModel value in the product. Otherwise, automatically set to Model[Container, Plate, Irregular, Crystallization, "96 MRC Under Oil Plate"].
    Pattern Description: An object of type or subtype Model[Container] or Null.
    Programmatic Pattern: ((Null | ObjectP[Model[Container]]) | Automatic) | Null
    Index Matches to: experiment samples

    Post Experiment

    SamplesInStorageCondition

    The non-default conditions under which the SamplesIn of this experiment should be stored after the protocol is completed. If left unset, SamplesIn will be stored according to their current StorageCondition.
    Default Value: Null
    Pattern Description: {AmbientStorage, EnclosedAmbientStorage, Refrigerator, Freezer, DeepFreezer, CryogenicStorage, YeastIncubation, YeastShakingIncubation, BacterialIncubation, BacterialShakingIncubation, MammalianIncubation, ViralIncubation, CrystalIncubation, AcceleratedTesting, IntermediateTesting, LongTermTesting, UVVisLightTesting} or Disposal or Null.
    Programmatic Pattern: (Alternatives[SampleStorageTypeP | Disposal]) | Null
    Index Matches to: experiment samples

Sample Prep Options

    Sample Preparation

    PreparatoryUnitOperations

    Specifies a sequence of transferring, aliquoting, consolidating, or mixing of new or existing samples before the main experiment. These prepared samples can be used in the main experiment by referencing their defined name. For more information, please reference the documentation for ExperimentSamplePreparation.
    Default Value: Null
    Pattern Description: List of one or more unit Operation ManualSamplePreparation or RoboticSamplePreparation or unit Operation must match SamplePreparationP entries or Null.
    Programmatic Pattern: {((ManualSamplePreparationMethodP | RoboticSamplePreparationMethodP) | SamplePreparationP)..} | Null

    Preparatory Incubation

    Incubate

    Indicates if the SamplesIn should be incubated at a fixed temperature prior to starting the experiment or any aliquoting. Sample Preparation occurs in the order of Incubation, Centrifugation, Filtration, and then Aliquoting (if specified).
    Default Value: Automatic
    Default Calculation: Resolves to True if any of the corresponding Incubation options are set. Otherwise, resolves to False.
    Pattern Description: True or False.
    Programmatic Pattern: BooleanP | Automatic
    Index Matches to: experiment samples

    IncubationTemperature

    Temperature at which the SamplesIn should be incubated for the duration of the IncubationTime prior to starting the experiment.
    Default Value: Automatic
    Pattern Description: Ambient or greater than or equal to -20 degrees Celsius and less than or equal to 500 degrees Celsius or Null.
    Programmatic Pattern: ((Ambient | RangeP[$MinIncubationTemperature, $MaxIncubationTemperature]) | Automatic) | Null
    Index Matches to: experiment samples

    IncubationTime

    Duration for which SamplesIn should be incubated at the IncubationTemperature, prior to starting the experiment.
    Default Value: Automatic
    Pattern Description: Greater than or equal to 1 minute and less than or equal to 72 hours or Null.
    Programmatic Pattern: (RangeP[1*Minute, $MaxExperimentTime] | Automatic) | Null
    Index Matches to: experiment samples

    Mix

    Indicates if this sample should be mixed while incubated, prior to starting the experiment.
    Default Value: Automatic
    Default Calculation: Automatically resolves to True if any Mix related options are set. Otherwise, resolves to False.
    Pattern Description: True or False or Null.
    Programmatic Pattern: (BooleanP | Automatic) | Null
    Index Matches to: experiment samples

    MixType

    Indicates the style of motion used to mix the sample, prior to starting the experiment.
    Default Value: Automatic
    Default Calculation: Automatically resolves based on the container of the sample and the Mix option.
    Pattern Description: Roll, Vortex, Sonicate, Pipette, Invert, Stir, Shake, Homogenize, Swirl, Disrupt, or Nutate or Null.
    Programmatic Pattern: (MixTypeP | Automatic) | Null
    Index Matches to: experiment samples

    MixUntilDissolved

    Indicates if the mix should be continued up to the MaxIncubationTime or MaxNumberOfMixes (chosen according to the mix Type), in an attempt dissolve any solute. Any mixing/incubation will occur prior to starting the experiment.
    Default Value: Automatic
    Default Calculation: Automatically resolves to True if MaxIncubationTime or MaxNumberOfMixes is set.
    Pattern Description: True or False or Null.
    Programmatic Pattern: (BooleanP | Automatic) | Null
    Index Matches to: experiment samples

    MaxIncubationTime

    Maximum duration of time for which the samples will be mixed while incubated in an attempt to dissolve any solute, if the MixUntilDissolved option is chosen. This occurs prior to starting the experiment.
    Default Value: Automatic
    Default Calculation: Automatically resolves based on MixType, MixUntilDissolved, and the container of the given sample.
    Pattern Description: Greater than or equal to 1 minute and less than or equal to 72 hours or Null.
    Programmatic Pattern: (RangeP[1*Minute, $MaxExperimentTime] | Automatic) | Null
    Index Matches to: experiment samples

    IncubationInstrument

    The instrument used to perform the Mix and/or Incubation, prior to starting the experiment.
    Default Value: Automatic
    Default Calculation: Automatically resolves based on the options Mix, Temperature, MixType and container of the sample.
    Pattern Description: An object of type or subtype Model[Instrument, Roller], Model[Instrument, OverheadStirrer], Model[Instrument, Vortex], Model[Instrument, Shaker], Model[Instrument, BottleRoller], Model[Instrument, Roller], Model[Instrument, Sonicator], Model[Instrument, HeatBlock], Model[Instrument, Homogenizer], Model[Instrument, Disruptor], Model[Instrument, Nutator], Model[Instrument, Thermocycler], Model[Instrument, EnvironmentalChamber], Model[Instrument, Pipette], Object[Instrument, Roller], Object[Instrument, OverheadStirrer], Object[Instrument, Vortex], Object[Instrument, Shaker], Object[Instrument, BottleRoller], Object[Instrument, Roller], Object[Instrument, Sonicator], Object[Instrument, HeatBlock], Object[Instrument, Homogenizer], Object[Instrument, Disruptor], Object[Instrument, Nutator], Object[Instrument, Thermocycler], Object[Instrument, EnvironmentalChamber], or Object[Instrument, Pipette] or Null.
    Programmatic Pattern: (ObjectP[Join[MixInstrumentModels, MixInstrumentObjects]] | Automatic) | Null
    Index Matches to: experiment samples

    AnnealingTime

    Minimum duration for which the SamplesIn should remain in the incubator allowing the system to settle to room temperature after the IncubationTime has passed but prior to starting the experiment.
    Default Value: Automatic
    Pattern Description: Greater than or equal to 0 minutes and less than or equal to 72 hours or Null.
    Programmatic Pattern: (RangeP[0*Minute, $MaxExperimentTime] | Automatic) | Null
    Index Matches to: experiment samples

    IncubateAliquotContainer

    The desired type of container that should be used to prepare and house the incubation samples which should be used in lieu of the SamplesIn for the experiment.
    Default Value: Automatic
    Pattern Description: An object of type or subtype Model[Container] or {Index, Container} or Null.
    Programmatic Pattern: ((ObjectP[Model[Container]] | {GreaterEqualP[1, 1] | (Automatic | Null), (ObjectP[{Model[Container], Object[Container]}] | _String) | Automatic}) | Automatic) | Null
    Index Matches to: experiment samples

    IncubateAliquotDestinationWell

    The desired position in the corresponding IncubateAliquotContainer in which the aliquot samples will be placed.
    Default Value: Automatic
    Default Calculation: Automatically resolves to A1 in containers with only one position. For plates, fills wells in the order provided by the function AllWells.
    Pattern Description: Any well from A1 to H12 or Null.
    Programmatic Pattern: (WellPositionP | Automatic) | Null
    Index Matches to: experiment samples

    IncubateAliquot

    The amount of each sample that should be transferred from the SamplesIn into the IncubateAliquotContainer when performing an aliquot before incubation.
    Default Value: Automatic
    Default Calculation: Automatically set as the smaller between the current sample volume and the maximum volume of the destination container.
    Pattern Description: All or greater than or equal to 1 microliter and less than or equal to 20 liters or Null.
    Programmatic Pattern: ((RangeP[1*Microliter, 20*Liter] | All) | Automatic) | Null
    Index Matches to: experiment samples

    Preparatory Centrifugation

    Centrifuge

    Indicates if the SamplesIn should be centrifuged prior to starting the experiment or any aliquoting. Sample Preparation occurs in the order of Incubation, Centrifugation, Filtration, and then Aliquoting (if specified).
    Default Value: Automatic
    Default Calculation: Resolves to True if any of the corresponding Centrifuge options are set. Otherwise, resolves to False.
    Pattern Description: True or False.
    Programmatic Pattern: BooleanP | Automatic
    Index Matches to: experiment samples

    CentrifugeInstrument

    The centrifuge that will be used to spin the provided samples prior to starting the experiment.
    Default Value: Automatic
    Pattern Description: An object of type or subtype Model[Instrument, Centrifuge] or Object[Instrument, Centrifuge] or Null.
    Programmatic Pattern: (ObjectP[{Model[Instrument, Centrifuge], Object[Instrument, Centrifuge]}] | Automatic) | Null
    Index Matches to: experiment samples

    CentrifugeIntensity

    The rotational speed or the force that will be applied to the samples by centrifugation prior to starting the experiment.
    Default Value: Automatic
    Pattern Description: Greater than 0 revolutions per minute or greater than 0 standard accelerations due to gravity on the surface of the earth or Null.
    Programmatic Pattern: ((GreaterP[0*RPM] | GreaterP[0*GravitationalAcceleration]) | Automatic) | Null
    Index Matches to: experiment samples

    CentrifugeTime

    The amount of time for which the SamplesIn should be centrifuged prior to starting the experiment.
    Default Value: Automatic
    Pattern Description: Greater than 0 minutes or Null.
    Programmatic Pattern: (GreaterP[0*Minute] | Automatic) | Null
    Index Matches to: experiment samples

    CentrifugeTemperature

    The temperature at which the centrifuge chamber should be held while the samples are being centrifuged prior to starting the experiment.
    Default Value: Automatic
    Pattern Description: Ambient or greater than or equal to -10 degrees Celsius and less than or equal to 40 degrees Celsius or Null.
    Programmatic Pattern: ((Ambient | RangeP[-10*Celsius, 40*Celsius]) | Automatic) | Null
    Index Matches to: experiment samples

    CentrifugeAliquotContainer

    The desired type of container that should be used to prepare and house the centrifuge samples which should be used in lieu of the SamplesIn for the experiment.
    Default Value: Automatic
    Pattern Description: An object of type or subtype Model[Container] or {Index, Container} or Null.
    Programmatic Pattern: ((ObjectP[Model[Container]] | {GreaterEqualP[1, 1] | (Automatic | Null), (ObjectP[{Model[Container], Object[Container]}] | _String) | Automatic}) | Automatic) | Null
    Index Matches to: experiment samples

    CentrifugeAliquotDestinationWell

    The desired position in the corresponding AliquotContainer in which the aliquot samples will be placed.
    Default Value: Automatic
    Default Calculation: Automatically resolves to A1 in containers with only one position. For plates, fills wells in the order provided by the function AllWells.
    Pattern Description: Any well from A1 to H12 or Null.
    Programmatic Pattern: (WellPositionP | Automatic) | Null
    Index Matches to: experiment samples

    CentrifugeAliquot

    The amount of each sample that should be transferred from the SamplesIn into the CentrifugeAliquotContainer when performing an aliquot before centrifugation.
    Default Value: Automatic
    Default Calculation: Automatically set as the smaller between the current sample volume and the maximum volume of the destination container.
    Pattern Description: All or greater than or equal to 1 microliter and less than or equal to 20 liters or Null.
    Programmatic Pattern: ((RangeP[1*Microliter, 20*Liter] | All) | Automatic) | Null
    Index Matches to: experiment samples

    Preparatory Filtering

    Filtration

    Indicates if the SamplesIn should be filter prior to starting the experiment or any aliquoting. Sample Preparation occurs in the order of Incubation, Centrifugation, Filtration, and then Aliquoting (if specified).
    Default Value: Automatic
    Default Calculation: Resolves to True if any of the corresponding Filter options are set. Otherwise, resolves to False.
    Pattern Description: True or False.
    Programmatic Pattern: BooleanP | Automatic
    Index Matches to: experiment samples

    FiltrationType

    The type of filtration method that should be used to perform the filtration.
    Default Value: Automatic
    Default Calculation: Will automatically resolve to a filtration type appropriate for the volume of sample being filtered.
    Pattern Description: PeristalticPump, Centrifuge, Vacuum, Syringe, or AirPressure or Null.
    Programmatic Pattern: (FiltrationTypeP | Automatic) | Null
    Index Matches to: experiment samples

    FilterInstrument

    The instrument that should be used to perform the filtration.
    Default Value: Automatic
    Default Calculation: Will automatically resolved to an instrument appropriate for the filtration type.
    Pattern Description: An object of type or subtype Model[Instrument, FilterBlock], Object[Instrument, FilterBlock], Model[Instrument, PeristalticPump], Object[Instrument, PeristalticPump], Model[Instrument, VacuumPump], Object[Instrument, VacuumPump], Model[Instrument, Centrifuge], Object[Instrument, Centrifuge], Model[Instrument, SyringePump], or Object[Instrument, SyringePump] or Null.
    Programmatic Pattern: (ObjectP[{Model[Instrument, FilterBlock], Object[Instrument, FilterBlock], Model[Instrument, PeristalticPump], Object[Instrument, PeristalticPump], Model[Instrument, VacuumPump], Object[Instrument, VacuumPump], Model[Instrument, Centrifuge], Object[Instrument, Centrifuge], Model[Instrument, SyringePump], Object[Instrument, SyringePump]}] | Automatic) | Null
    Index Matches to: experiment samples

    Filter

    The filter that should be used to remove impurities from the SamplesIn prior to starting the experiment.
    Default Value: Automatic
    Default Calculation: Will automatically resolve to a filter appropriate for the filtration type and instrument.
    Pattern Description: An object of type or subtype Model[Container, Plate, Filter], Model[Container, Vessel, Filter], or Model[Item, Filter] or Null.
    Programmatic Pattern: (ObjectP[{Model[Container, Plate, Filter], Model[Container, Vessel, Filter], Model[Item, Filter]}] | Automatic) | Null
    Index Matches to: experiment samples

    FilterMaterial

    The membrane material of the filter that should be used to remove impurities from the SamplesIn prior to starting the experiment.
    Default Value: Automatic
    Default Calculation: Resolves to an appropriate filter material for the given sample is Filtration is set to True.
    Pattern Description: Cellulose, Cotton, Polyethylene, Polypropylene, PTFE, Nylon, PES, PLUS, PVDF, GlassFiber, GHP, UHMWPE, EPDM, DuraporePVDF, GxF, ZebaDesaltingResin, NickelResin, AgaroseResin, CobaltResin, Silica, HLB, or AnoporeAlumina or Null.
    Programmatic Pattern: (FilterMembraneMaterialP | Automatic) | Null
    Index Matches to: experiment samples

    PrefilterMaterial

    The material from which the prefilter filtration membrane should be made of to remove impurities from the SamplesIn prior to starting the experiment.
    Default Value: Automatic
    Default Calculation: By default, no prefiltration is performed on samples, even when Filter->True.
    Pattern Description: Cellulose, Cotton, Polyethylene, Polypropylene, PTFE, Nylon, PES, PLUS, PVDF, GlassFiber, GHP, UHMWPE, EPDM, DuraporePVDF, GxF, ZebaDesaltingResin, NickelResin, AgaroseResin, CobaltResin, Silica, HLB, or AnoporeAlumina or Null.
    Programmatic Pattern: (FilterMembraneMaterialP | Automatic) | Null
    Index Matches to: experiment samples

    FilterPoreSize

    The pore size of the filter that should be used when removing impurities from the SamplesIn prior to starting the experiment.
    Default Value: Automatic
    Default Calculation: Resolves to an appropriate filter pore size for the given sample is Filtration is set to True.
    Pattern Description: 0.008 micrometers, 0.02 micrometers, 0.1 micrometers, 0.2 micrometers, 0.22 micrometers, 0.45 micrometers, 1. micrometer, 1.1 micrometers, 2.5 micrometers, 6. micrometers, 20. micrometers, 30. micrometers, or 100. micrometers or Null.
    Programmatic Pattern: (FilterSizeP | Automatic) | Null
    Index Matches to: experiment samples

    PrefilterPoreSize

    The pore size of the filter; all particles larger than this should be removed during the filtration.
    Default Value: Automatic
    Default Calculation: By default, no prefiltration is performed on samples, even when Filter->True.
    Pattern Description: 0.008 micrometers, 0.02 micrometers, 0.1 micrometers, 0.2 micrometers, 0.22 micrometers, 0.45 micrometers, 1. micrometer, 1.1 micrometers, 2.5 micrometers, 6. micrometers, 20. micrometers, 30. micrometers, or 100. micrometers or Null.
    Programmatic Pattern: (FilterSizeP | Automatic) | Null
    Index Matches to: experiment samples

    FilterSyringe

    The syringe used to force that sample through a filter.
    Default Value: Automatic
    Default Calculation: Resolves to an syringe appropriate to the volume of sample being filtered, if Filtration is set to True.
    Pattern Description: An object of type or subtype Model[Container, Syringe] or Object[Container, Syringe] or a prepared sample or Null.
    Programmatic Pattern: ((ObjectP[{Model[Container, Syringe], Object[Container, Syringe]}] | _String) | Automatic) | Null
    Index Matches to: experiment samples

    FilterHousing

    The filter housing that should be used to hold the filter membrane when filtration is performed using a standalone filter membrane.
    Default Value: Automatic
    Default Calculation: Resolve to an housing capable of holding the size of the membrane being used, if filter with Membrane FilterType is being used and Filtration is set to True.
    Pattern Description: An object of type or subtype Model[Instrument, FilterHousing], Object[Instrument, FilterHousing], Model[Instrument, FilterBlock], or Object[Instrument, FilterBlock] or Null.
    Programmatic Pattern: (ObjectP[{Model[Instrument, FilterHousing], Object[Instrument, FilterHousing], Model[Instrument, FilterBlock], Object[Instrument, FilterBlock]}] | Automatic) | Null
    Index Matches to: experiment samples

    FilterIntensity

    The rotational speed or force at which the samples will be centrifuged during filtration.
    Default Value: Automatic
    Default Calculation: Will automatically resolve to 2000 GravitationalAcceleration if FiltrationType is Centrifuge and Filtration is True.
    Pattern Description: Greater than 0 revolutions per minute or greater than 0 standard accelerations due to gravity on the surface of the earth or Null.
    Programmatic Pattern: ((GreaterP[0*RPM] | GreaterP[0*GravitationalAcceleration]) | Automatic) | Null
    Index Matches to: experiment samples

    FilterTime

    The amount of time for which the samples will be centrifuged during filtration.
    Default Value: Automatic
    Default Calculation: Will automatically resolve to 5 Minute if FiltrationType is Centrifuge and Filtration is True.
    Pattern Description: Greater than 0 minutes or Null.
    Programmatic Pattern: (GreaterP[0*Minute] | Automatic) | Null
    Index Matches to: experiment samples

    FilterTemperature

    The temperature at which the centrifuge chamber will be held while the samples are being centrifuged during filtration.
    Default Value: Automatic
    Default Calculation: Will automatically resolve to 22 Celsius if FiltrationType is Centrifuge and Filtration is True.
    Pattern Description: Greater than or equal to 4 degrees Celsius or Null.
    Programmatic Pattern: ((Alternatives[GreaterEqualP[4*Celsius]]) | Automatic) | Null
    Index Matches to: experiment samples

    FilterContainerOut

    The desired container filtered samples should be produced in or transferred into by the end of filtration, with indices indicating grouping of samples in the same plates, if desired.
    Default Value: Automatic
    Default Calculation: Automatically set as the PreferredContainer for the Volume of the sample. For plates, attempts to fill all wells of a single plate with the same model before using another one.
    Pattern Description: An object of type or subtype Model[Container] or Object[Container] or a prepared sample or {Index, Container} or Null.
    Programmatic Pattern: (((ObjectP[{Model[Container], Object[Container]}] | _String) | {GreaterEqualP[1, 1] | Automatic, (ObjectP[{Model[Container], Object[Container]}] | _String) | Automatic}) | Automatic) | Null
    Index Matches to: experiment samples

    FilterAliquotDestinationWell

    The desired position in the corresponding AliquotContainer in which the aliquot samples will be placed.
    Default Value: Automatic
    Default Calculation: Automatically resolves to A1 in containers with only one position. For plates, fills wells in the order provided by the function AllWells.
    Pattern Description: Any well from A1 to H12 or Null.
    Programmatic Pattern: (WellPositionP | Automatic) | Null
    Index Matches to: experiment samples

    FilterAliquotContainer

    The desired type of container that should be used to prepare and house the filter samples which should be used in lieu of the SamplesIn for the experiment.
    Default Value: Automatic
    Pattern Description: An object of type or subtype Model[Container] or {Index, Container} or Null.
    Programmatic Pattern: ((ObjectP[Model[Container]] | {GreaterEqualP[1, 1] | (Automatic | Null), (ObjectP[{Model[Container], Object[Container]}] | _String) | Automatic}) | Automatic) | Null
    Index Matches to: experiment samples

    FilterAliquot

    The amount of each sample that should be transferred from the SamplesIn into the FilterAliquotContainer when performing an aliquot before filtration.
    Default Value: Automatic
    Default Calculation: Automatically set as the smaller between the current sample volume and the maximum volume of the destination container.
    Pattern Description: All or greater than or equal to 1 microliter and less than or equal to 20 liters or Null.
    Programmatic Pattern: ((RangeP[1*Microliter, 20*Liter] | All) | Automatic) | Null
    Index Matches to: experiment samples

    FilterSterile

    Indicates if the filtration of the samples should be done in a sterile environment.
    Default Value: Automatic
    Default Calculation: Resolve to False if Filtration is indicated. If sterile filtration is desired, this option must manually be set to True.
    Pattern Description: True or False or Null.
    Programmatic Pattern: (BooleanP | Automatic) | Null
    Index Matches to: experiment samples

    Aliquoting

    Aliquot

    Indicates if aliquots should be taken from the SamplesIn and transferred into new AliquotSamples used in lieu of the SamplesIn for the experiment. Note that if NumberOfReplicates is specified this indicates that the input samples will also be aliquoted that number of times. Note that Aliquoting (if specified) occurs after any Sample Preparation (if specified).
    Default Value: Automatic
    Pattern Description: True or False.
    Programmatic Pattern: BooleanP | Automatic
    Index Matches to: experiment samples

    AliquotAmount

    The amount of a sample that should be transferred from the input samples into aliquots.
    Default Value: Automatic
    Default Calculation: Automatically set as the smaller between the current sample volume and the maximum volume of the destination container if a liquid, or the current Mass or Count if a solid or counted item, respectively.
    Pattern Description: All or Count or Count or Mass or Volume or Null.
    Programmatic Pattern: ((RangeP[1*Microliter, 20*Liter] | RangeP[1*Milligram, 20*Kilogram] | GreaterP[0*Unit, 1*Unit] | GreaterP[0., 1.] | All) | Automatic) | Null
    Index Matches to: experiment samples

    TargetConcentration

    The desired final concentration of analyte in the AliquotSamples after dilution of aliquots of SamplesIn with the ConcentratedBuffer and BufferDiluent which should be used in lieu of the SamplesIn for the experiment.
    Default Value: Automatic
    Default Calculation: Automatically calculated based on aliquot and buffer volumes.
    Pattern Description: Greater than 0 molar or greater than 0 grams per liter or Null.
    Programmatic Pattern: ((GreaterP[0*Molar] | GreaterP[0*(Gram/Liter)]) | Automatic) | Null
    Index Matches to: experiment samples

    TargetConcentrationAnalyte

    The substance whose final concentration is attained with the TargetConcentration option.
    Default Value: Automatic
    Default Calculation: Automatically set to the first value in the Analytes field of the input sample, or, if not populated, to the first analyte in the Composition field of the input sample, or if none exist, the first identity model of any kind in the Composition field.
    Pattern Description: An object of type or subtype Model[Molecule], Model[Molecule, cDNA], Model[Molecule, Oligomer], Model[Molecule, Transcript], Model[Molecule, Protein], Model[Molecule, Protein, Antibody], Model[Molecule, Carbohydrate], Model[Molecule, Polymer], Model[Resin], Model[Resin, SolidPhaseSupport], Model[Lysate], Model[ProprietaryFormulation], Model[Virus], Model[Cell], Model[Cell, Mammalian], Model[Cell, Bacteria], Model[Cell, Yeast], Model[Tissue], Model[Material], or Model[Species] or Null.
    Programmatic Pattern: (ObjectP[IdentityModelTypes] | Automatic) | Null
    Index Matches to: experiment samples

    AssayVolume

    The desired total volume of the aliquoted sample plus dilution buffer.
    Default Value: Automatic
    Default Calculation: Automatically determined based on Volume and TargetConcentration option values.
    Pattern Description: Greater than or equal to 1 microliter and less than or equal to 20 liters or Null.
    Programmatic Pattern: (RangeP[1*Microliter, 20*Liter] | Automatic) | Null
    Index Matches to: experiment samples

    ConcentratedBuffer

    The concentrated buffer which should be diluted by the BufferDilutionFactor in the final solution (i.e., the combination of the sample, ConcentratedBuffer, and BufferDiluent). The ConcentratedBuffer and BufferDiluent will be combined and then mixed with the sample, where the combined volume of these buffers is the difference between the AliquotAmount and the total AssayVolume.
    Default Value: Automatic
    Pattern Description: An object of type or subtype Model[Sample] or Object[Sample] or a prepared sample or Null.
    Programmatic Pattern: ((ObjectP[{Model[Sample], Object[Sample]}] | _String) | Automatic) | Null
    Index Matches to: experiment samples

    BufferDilutionFactor

    The dilution factor by which the concentrated buffer should be diluted in the final solution (i.e., the combination of the sample, ConcentratedBuffer, and BufferDiluent). The ConcentratedBuffer and BufferDiluent will be combined and then mixed with the sample, where the combined volume of these buffers is the difference between the AliquotAmount and the total AssayVolume.
    Default Value: Automatic
    Default Calculation: If ConcentratedBuffer is specified, automatically set to the ConcentratedBufferDilutionFactor of that sample; otherwise, set to Null.
    Pattern Description: Greater than or equal to 1 or Null.
    Programmatic Pattern: (GreaterEqualP[1] | Automatic) | Null
    Index Matches to: experiment samples

    BufferDiluent

    The buffer used to dilute the aliquot sample such that ConcentratedBuffer is diluted by BufferDilutionFactor in the final solution. The ConcentratedBuffer and BufferDiluent will be combined and then mixed with the sample, where the combined volume of these buffers is the difference between the AliquotAmount and the total AssayVolume.
    Default Value: Automatic
    Default Calculation: Automatically resolves to Model[Sample, "Milli-Q water"] if ConcentratedBuffer is specified; otherwise, resolves to Null.
    Pattern Description: An object of type or subtype Model[Sample] or Object[Sample] or a prepared sample or Null.
    Programmatic Pattern: ((ObjectP[{Model[Sample], Object[Sample]}] | _String) | Automatic) | Null
    Index Matches to: experiment samples

    AssayBuffer

    The buffer that should be added to any aliquots requiring dilution, where the volume of this buffer added is the difference between the AliquotAmount and the total AssayVolume.
    Default Value: Automatic
    Default Calculation: Automatically resolves to Model[Sample, "Milli-Q water"] if ConcentratedBuffer is not specified; otherwise, resolves to Null.
    Pattern Description: An object of type or subtype Model[Sample] or Object[Sample] or a prepared sample or Null.
    Programmatic Pattern: ((ObjectP[{Model[Sample], Object[Sample]}] | _String) | Automatic) | Null
    Index Matches to: experiment samples

    AliquotSampleStorageCondition

    The non-default conditions under which any aliquot samples generated by this experiment should be stored after the protocol is completed.
    Default Value: Automatic
    Pattern Description: {AmbientStorage, EnclosedAmbientStorage, Refrigerator, Freezer, DeepFreezer, CryogenicStorage, YeastIncubation, YeastShakingIncubation, BacterialIncubation, BacterialShakingIncubation, MammalianIncubation, ViralIncubation, CrystalIncubation, AcceleratedTesting, IntermediateTesting, LongTermTesting, UVVisLightTesting} or Disposal or Null.
    Programmatic Pattern: ((SampleStorageTypeP | Disposal) | Automatic) | Null
    Index Matches to: experiment samples

    DestinationWell

    The desired position in the corresponding AliquotContainer in which the aliquot samples will be placed.
    Default Value: Automatic
    Default Calculation: Automatically resolves to A1 in containers with only one position. For plates, fills wells in the order provided by the function AllWells.
    Pattern Description: Any well from A1 to H12 or list of one or more any well from A1 to H12 or any well from A1 to H12 entries or Null.
    Programmatic Pattern: ((WellPositionP | {((Automatic | Null) | WellPositionP)..}) | Automatic) | Null

    AliquotContainer

    The desired type of container that should be used to prepare and house the aliquot samples, with indices indicating grouping of samples in the same plates, if desired. This option will resolve to be the length of the SamplesIn * NumberOfReplicates.
    Default Value: Automatic
    Default Calculation: Automatically set as the PreferredContainer for the AssayVolume of the sample. For plates, attempts to fill all wells of a single plate with the same model before aliquoting into the next.
    Pattern Description: An object of type or subtype Model[Container] or Object[Container] or a prepared sample or Automatic or Null or {Index, Container} or list of one or more an object of type or subtype Model[Container] or Object[Container] or a prepared sample or Automatic or Null entries or list of one or more Automatic or Null or {Index, Container} entries.
    Programmatic Pattern: (((ObjectP[{Model[Container], Object[Container]}] | _String) | (Automatic | Null) | {GreaterEqualP[1, 1] | (Automatic | Null), (ObjectP[{Model[Container], Object[Container]}] | _String) | (Automatic | Null)} | {((ObjectP[{Model[Container], Object[Container]}] | _String) | (Automatic | Null))..} | {({GreaterEqualP[1, 1] | (Automatic | Null), (ObjectP[{Model[Container], Object[Container]}] | _String) | (Automatic | Null)} | (Automatic | Null))..}) | Automatic) | Null

    AliquotPreparation

    Indicates the desired scale at which liquid handling used to generate aliquots will occur.
    Default Value: Automatic
    Default Calculation: Automatic resolution will occur based on manipulation volumes and container types.
    Pattern Description: Manual or Robotic or Null.
    Programmatic Pattern: (PreparationMethodP | Automatic) | Null

    ConsolidateAliquots

    Indicates if identical aliquots should be prepared in the same container/position.
    Default Value: Automatic
    Pattern Description: True or False or Null.
    Programmatic Pattern: (BooleanP | Automatic) | Null

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

    • For a prepared plate with lysozyme, set up a 3-day imaging schedule with CrossPolarizedImaging and UVImaging (VisibleLightImaging is default):
    ExperimentGrowCrystal[
        Object[Container,Plate,Irregular,Crystallization,"Example plate"],
        CrystallizationCover->Model[Item,PlateSeal,"Crystal Clear Sealing Film"],
        MaxCrystallizationTime->3Day,
        UVImaging->True,
        CrossPolarizedImaging->True,
        Name->"Example protocol"
    ]
    • This is the protocol that we have generated:
    • We will monitor the following samples that are present in our prepared plate:
    • Verify that the parameters we really care about in the experiment are properly set up and that the first drop sample has expected composition:
    • In both samples the crystals are growing over time:

Example Calls

    Basic Examples:

    Prepared crystallization plate may be accepted as input:

Preferred Input Containers

    For prepared plate, SBS Plates designed for Crystallization can be used.

Warnings and Errors

    Messages  (70)

    AliquotRequired  (1)

    Throws a warning if input sample requires aliquoting:

    CoCrystallizationReagentsAliquotedBeforeAirDry  (1)

    Throws a warning if CoCrystallizationReagents that need to be air dried have been aliquoted:

    ConflictingCoCrystallizationAirDry  (6)

    Throws an error if CoCrystallizationAirDryTemperature has value but CoCrystallizationAirDry is all False:

    Throws an error if CoCrystallizationAirDryTemperature is higher than MaxTemperature of CrystallizationPlate:

    Throws an error if CoCrystallizationAirDryTime has value while CoCrystallizationAirDry is specified as False:

    Throws an error if CoCrystallizationAirDryTime has value while no CoCrystallizationReagents is specified:

    Throws an error if CoCrystallizationAirDryTime is longer than an hour but CoCrystallizationAirDryTemperature is set at high temperature:

    Throws an error if CoCrystallizationReagentVolume is not in the same transfer model when air dry:

    ConflictingCoCrystallizationReagents  (1)

    Throws an error if CoCrystallizationReagentVolume is more than the MaxVolume of the plate:

    ConflictingCrossPolarizedImaging  (1)

    Throws an error if Imager is not capable of ConflictingCrossPolarizedImaging when ConflictingCrossPolarizedImaging is specified as True:

    ConflictingCrystallizationCoverWithContainer  (1)

    Throws an error if CrystallizationCover is not the same FootPrint as the CrystallizationPlate:

    ConflictingCrystallizationPlateWithInstrument  (2)

    Throws an error if CrystallizationPlate is bigger than MaxPlateDimensions of crystal incubator:

    Throws an error if CrystallizationPlate is taller than MaxPlateHeight of DropSetterInstrument:

    ConflictingCrystallizationPlateWithTechnique  (1)

    Throws an error if specified CrystallizationTechnique is not compatible with specified CrystallizationPlate:

    ConflictingCrystallizationTechniqueWithPreparation  (1)

    Throws an error if specified CrystallizationTechnique and specified sample preparation options do not match:

    ConflictingDilutionBuffer  (1)

    Throws an error if DilutionBuffer is None while DilutionBufferVolume is specified:

    ConflictingDropDestination  (2)

    Throws an error if specified DropDestination is not found on the plate:

    Throws an error if specified DropDestination mismatched the number of crystallization conditions:

    ConflictingDropSetterWithReservoirDispenser  (1)

    Throws an error if DropSetterInstrument and ReservoirDispensingInstrument are specified as different robotic LiquidHandler:

    ConflictingDropSetterWithStrategy  (1)

    Throws an error if DropSetterInstrument is specified does not match with specified CrystallizationStrategy:

    ConflictingDropVolume  (1)

    Throws an error if total drop volume exceeds the MaxVolume of the plate:

    ConflictingOilOption  (2)

    Throws an error if Oil is Null while OilVolume is specified:

    Throws an error if OilVolume is not 3 times larger than the total aqueous drop sample:

    ConflictingPreMixBuffer  (2)

    Throws an error if PreMixBuffer is False but PreMix with Sample is required:

    Throws an error if PreMixBuffer is not Null but PreparedPlate is True:

    ConflictingPreparedPlateWithCrystallizationPlate  (1)

    Throws an error if CrystallizationPlate is not the same container of input when PreparedPlate is True:

    ConflictingPreparedPlateWithInstrument  (1)

    Throws an error if DropSetterInstrument is specified for PreparedPlate:

    ConflictingPreparedPlateWithPreparation  (2)

    Throws an error if any of sample preparation related options other than SampleVolumes is specified for PreparedPlate:

    Throws an error if SampleVolumes is not specified when PreparedPlate is set to False:

    ConflictingReservoirDispenserWithTechnique  (1)

    Throws an error if specified CrystallizationTechnique and specified ReservoirDispensingInstrument do not match:

    ConflictingReservoirOptions  (2)

    Throws an error if specified ReservoirBuffers is None while specified ReservoirDropVolume is not Null:

    Throws an error if specified ReservoirBufferVolume exceeds the MaxVolume of reservoir well:

    ConflictingSamplesOutLabel  (3)

    Throws an error if ReservoirSamplesOutLabel has been specified but CrystallizationTechnique is Microbatch:

    Throws an error if specified DropSamplesOutLabel exceeds the number of DropSamplesOut:

    Throws an error if specified DropSamplesOutLabel is Null for an unprepared plate:

    ConflictingSampleVolumes  (1)

    Throws an error if SampleVolumes is outside of the volume range:

    ConflictingScreeningMethodWithBuffers  (1)

    Throws an error if specified CrystallizationScreeningMethod is not the same as specified buffer options:

    ConflictingScreeningMethodWithStrategy  (1)

    Throws an error if specified CrystallizationScreeningMethod is not compatible with specified CrystallizationStrategy:

    ConflictingSeedingSolution  (1)

    Throws an error if SeedingSolution is None while SeedingSolutionVolume is specified:

    ConflictingUVImaging  (2)

    Throws an error if CrystallizationCover is not transparent for UV:

    Throws an error if Imager is not capable of UVImaging when UVImaging is specified as True:

    ConflictingVisibleLightImaging  (1)

    Throws an error if CrystallizationCover is not opaque:

    DeprecatedBufferModels  (1)

    Throws an error if the model of specified Buffer has been deprecated:

    DiscardedBuffers  (1)

    Throws an error if specified Buffer has been discarded:

    DropVolumePrecision  (3)

    Throws a warning if CoCrystallizationReagents is rounded to either nearest 10 or 100 Nanoliter based on Air Dry:

    Throws a warning if SampleVolumes is rounded when using Echo:

    Throws a warning if SampleVolumes is rounded when using Hamilton:

    DuplicatedBuffers  (2)

    Throws an error if specified Buffers for the ReservoirBuffers and DilutionBuffer are duplicated:

    Throws an error if specified Buffers for the ReservoirBuffers are duplicated:

    GrowCrystalPreparationNotSupported  (1)

    Don't allow sample preparation for the time being:

    GrowCrystalTooManyConditions  (1)

    Throws an error if specified combination of SamplesOut exceeds the number of wells:

    GrowCrystalTooManySamples  (1)

    Throws an error if specified number of SamplesIn exceeds the number of wells of a single plate:

    InstrumentPrecision  (1)

    Throws a warning if option is rounded:

    InvalidInstrumentModels  (2)

    Throws an error if specified DropSetterInstrument can not handle liquid:

    Throws an error if specified ReservoirDispensingInstrument can not handle liquid:

    InvalidPlateSample  (2)

    Throws an error if CrystallizationPlate is not empty:

    Throws an error not all contents on prepared plate are not input samples:

    InvalidPreparedPlateModel  (1)

    Throws an error if the container model of prepared plate is not a crystallization plate:

    InvalidPreparedPlateVolume  (1)

    Throws an error if any samples from a prepared plate is not within the volume range of the container:

    NoAvailableStoragePosition  (1)

    If there is no available storage slot, return a warning message:

    NonLiquidBuffer  (1)

    Throws an error if specified Buffer is not liquid:

    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):

    RiskOfEvaporation  (1)

    Throws a warning if transfers for SetDrop step if more than 5 minutes on Echo:

    SolidSamplesUnsupported  (1)

    Throws an error if the input sample is not liquid:

    Warning::DropSamplePreMixed  (1)

    Throws a warning if premixing with samples occurs:

Last modified on Mon 18 Aug 2025 17:48:22