ecl-logo Documentation
ECL`

ExperimentDesiccate

ExperimentDesiccate[Samples]Protocol

generates a Protocol object to dry by removing water from the solid input Samples using a Desiccator. The solid samples are exposed to a chemical desiccant in a bell jar desiccator (at atmospheric pressure or in Vacuum). Desiccant absorbs water molecules from the input samples. Unlike desiccated storage, ExperimentDesiccate leaves the container open to a dedicated bell jar with only the input samples present during the course of the experiment.

    
ExperimentDesiccate is a method for drying solid samples by extracting water molecules using a desiccator. This experiment exposes the solid samples to the specified chemical desiccant within a bell jar desiccator. In contrast to desiccated storage, ExperimentDesiccate keeps the sample container open within a dedicated bell jar, with only the input samples present throughout the duration of the experiment.
    

Experimental Principles

    Figure 1.1: Procedural outline for ExperimentDesiccate. Step 1: Select a desiccator. The desiccator can be selected using "Desiccator" option. Refer to Table 1 for available desiccators and their specifications. The default desiccant is Indicating Drierite, Model[Sample, "Indicating Drierite"], with the flexibility to choose any solid or liquid chemical via "Desiccant" option. Step 2: Input sample specifications. "Amount" specifies the quantity of the input sample(s) for the experiment. Samples may either remain in their original container (for full sample usage) or be moved to a new container using "SampleContainer" option. Step 3: Desiccation. The desiccation method is determined by "Method" option. Available desiccation methods include StandardDesiccant, DesiccantUnderVacuum, and Vacuum. StandardDesiccant uses a chemical desiccant specified by the "Desiccant" option. DesiccantUnderVacuum uses a chemical desiccant within a vacuumed desiccator to improve drying efficiency. Vacuum, on the other hand, exposes the sample only to a vacuum within a bell jar desiccator, without the use of any desiccant. The duration of desiccation is determined by "Time" which can be set to any value under 72 hours with a default of 5 hours. Step 4: Retrieving samples: The experiment concludes with the retrieval and storage of the sample. "ContainerOut" determines the container that the sample is transferred into after desiccation. The storage conditions for the desiccated samples can be specified by "SamplesOutStorageCondition" option.

Instrumentation

    Bel-Art Space Saver Vacuum Desiccator

    Figure 2.1: This diagram shows the bell jar desiccator at ECL. It is connected to a vacuum pump, and the pressure inside the chamber is monitored with a sensor during desiccation under vacuum. The desiccator uses Drierite as the default desiccant, which is blue when dry and turns pink as it absorbs moisture; however, any chemical can be specified as the desiccant.

Experiment Options

    General

    Amount

    The mass of the sample to transfer from the input samples into another container (specified by SampleContainer) before desiccation. All indicates that the sample remains in the primary container.
    Default Value: All
    Pattern Description: All or Mass.
    Programmatic Pattern: RangeP[1*Milligram, $MaxTransferMass] | All
    Index Matches to: experiment samples

    SampleContainer

    The container that the sample Amount is transferred into prior to desiccating in a bell jar. The container's lid is off during desiccation. Null indicates the sample is not transferred to another container and is desiccated in its primary container.
    Default Value: Automatic
    Default Calculation: Automatically set to Null if Amount is set to All; otherwise, it is calculated by the PreferredContainer function. Null indicates that the sample is desiccated in its primary container without being transferred to another.
    Pattern Description: An object of type or subtype Model[Container, Vessel] or Object[Container, Vessel] or a prepared sample or Null.
    Programmatic Pattern: ((ObjectP[{Model[Container, Vessel], Object[Container, Vessel]}] | _String) | Automatic) | Null
    Index Matches to: experiment samples

    Method

    Method of drying the sample (removing water or solvent molecules from the solid sample). Options include StandardDesiccant, Vacuum, and DesiccantUnderVacuum. StandardDesiccant involves utilizing a sealed bell jar desiccator that exposes the sample to a chemical desiccant that absorbs water molecules from the exposed sample. DesiccantUnderVacuum is similar to StandardDesiccant but includes creating a vacuum inside the bell jar via pumping out the air by a vacuum pump. Vacuum just includes creating a vacuum by a vacuum pump and desiccant is NOT used inside the desiccator.
    Default Value: StandardDesiccant
    Pattern Description: StandardDesiccant, DesiccantUnderVacuum, or Vacuum.
    Programmatic Pattern: DesiccationMethodP

    Desiccant

    The hygroscopic chemical that is used in the desiccator to dry the exposed sample by absorbing water molecules from the sample.
    Default Value: Automatic
    Default Calculation: Automatically set to Model[Sample,"Indicating Drierite"], Model[Sample,"Sulfuric acid"], or Null if DesiccantPhase is Solid/not informed, Liquid, or Method is Vacuum.
    Pattern Description: An object of type or subtype Model[Item, Consumable], Object[Item, Consumable], Model[Sample], or Object[Sample] or a prepared sample or Null.
    Programmatic Pattern: ((ObjectP[{Model[Item, Consumable], Object[Item, Consumable], Model[Sample], Object[Sample]}] | _String) | Automatic) | Null

    DesiccantPhase

    The physical state of the desiccant in the desiccator which dries the exposed sample by absorbing water molecules from the sample.
    Default Value: Automatic
    Default Calculation: Automatically set to the physical state of the selected desiccant, or Null if Desiccant is Null.
    Pattern Description: Solid or Liquid or Null.
    Programmatic Pattern: ((Solid | Liquid) | Automatic) | Null

    CheckDesiccant

    Indicates if the color of the desiccant is verified and is thrown out before the experiment begins if the color indicates it is expired.
    Default Value: Automatic
    Default Calculation: Automatically set to True if Desiccant model is Model[Sample, "Indicating Drierite"].
    Pattern Description: True or False or Null.
    Programmatic Pattern: (BooleanP | Automatic) | Null

    DesiccantAmount

    The mass of a solid or the volume of a liquid hygroscopic chemical that is used in the desiccator to dry the exposed sample by absorbing water molecules from the sample.
    Default Value: Automatic
    Default Calculation: Automatically set to 100 Gram if DesiccantPhase is Solid, 100 Milliliter if DesiccantPhase is Liquid, or Null if Method is Vacuum.
    Pattern Description: Mass or Volume or Null.
    Programmatic Pattern: ((RangeP[1*Gram, 1*Kilogram, 1*Gram] | RangeP[1*Milliliter, 1*Liter, 1*Milliliter]) | Automatic) | Null

    Desiccator

    The instrument that is used to dry the sample by exposing the sample with its container lid open in a bell jar which includes a chemical desiccant either at atmosphere or vacuum.
    Default Value: Model[Instrument, Desiccator, Bel-Art Space Saver Vacuum Desiccator]
    Pattern Description: An object of type or subtype Model[Instrument, Desiccator] or Object[Instrument, Desiccator]
    Programmatic Pattern: ObjectP[{Model[Instrument, Desiccator], Object[Instrument, Desiccator]}]

    Time

    Determines how long the sample (with the lid off) is dried via desiccation inside a desiccator.
    Default Value: 5 hours
    Pattern Description: Greater than or equal to 1 minute and less than or equal to 72 hours in increments of 1 minute.
    Programmatic Pattern: RangeP[1*Minute, $MaxExperimentTime, 1*Minute]

    Storage Information

    DesiccantStorageCondition

    The non-default condition under which the desiccant is stored after the protocol is completed. Null indicates the desiccant will be stored according to its StorageCondition or its Models' DefaultStorageCondition.
    Default Value: Automatic
    Default Calculation: Automatically set to Disposal if Desiccant is not Null.
    Pattern Description: {AmbientStorage, EnclosedAmbientStorage, Refrigerator, Freezer, DeepFreezer, CryogenicStorage, YeastIncubation, YeastShakingIncubation, BacterialIncubation, BacterialShakingIncubation, MammalianIncubation, ViralIncubation, CrystalIncubation, AcceleratedTesting, IntermediateTesting, LongTermTesting, UVVisLightTesting}, Desiccated, VacuumDesiccated, RefrigeratorDesiccated, or Disposal or an object of type or subtype Model[StorageCondition] or Null.
    Programmatic Pattern: (((SampleStorageTypeP | Desiccated | VacuumDesiccated | RefrigeratorDesiccated | Disposal) | ObjectP[Model[StorageCondition]]) | Automatic) | Null

    DesiccantStorageContainer

    The desired container that the desiccant is transferred into after desiccation. If Not specified, it is determined by PreferredContainer function.
    Default Value: Automatic
    Default Calculation: Automatically calculated by PreferredContainer function.
    Pattern Description: An object of type or subtype Model[Container, Vessel] or Object[Container, Vessel] or a prepared sample or Null.
    Programmatic Pattern: ((ObjectP[{Model[Container, Vessel], Object[Container, Vessel]}] | _String) | Automatic) | Null

    ContainerOut

    The desired container that the desiccated sample should be transferred into after desiccation. If specified, all of the sample is transferred into ContainerOut.
    Default Value: Null
    Pattern Description: An object of type or subtype Model[Container, Vessel], Object[Container, Vessel], or Model[Container, GrindingContainer] or a prepared sample or Null.
    Programmatic Pattern: (ObjectP[{Model[Container, Vessel], Object[Container, Vessel], Model[Container, GrindingContainer]}] | _String) | Null
    Index Matches to: experiment samples

    SamplesOutStorageCondition

    The non-default conditions under which any new samples generated by this experiment should be stored after the protocol is completed. If left unset, the new samples will be stored according to their StorageCondition or their Models' DefaultStorageCondition.
    Default Value: Null
    Pattern Description: {AmbientStorage, EnclosedAmbientStorage, Refrigerator, Freezer, DeepFreezer, CryogenicStorage, YeastIncubation, YeastShakingIncubation, BacterialIncubation, BacterialShakingIncubation, MammalianIncubation, ViralIncubation, CrystalIncubation, AcceleratedTesting, IntermediateTesting, LongTermTesting, UVVisLightTesting}, Desiccated, VacuumDesiccated, RefrigeratorDesiccated, or Disposal or an object of type or subtype Model[StorageCondition] or Null.
    Programmatic Pattern: ((SampleStorageTypeP | Desiccated | VacuumDesiccated | RefrigeratorDesiccated | Disposal) | ObjectP[Model[StorageCondition]]) | Null
    Index Matches to: experiment samples

    Model Input

    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 when the input model has a product associated with both Amount and DefaultContainerModel populated, automatically set to the DefaultContainerModel value in the product. Otherwise set to Model[Container, Vessel, "2mL Tube"].
    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

    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 1 Gram.
    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

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

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

    Post Experiment

    MeasureWeight

    Indicates if any solid samples that are modified in the course of the experiment should have their weights measured and updated after running the experiment. Please note that public samples are weighed regardless of the value of this option.
    Default Value: Automatic
    Pattern Description: True or False or Null.
    Programmatic Pattern: (BooleanP | Automatic) | Null

    MeasureVolume

    Indicates if any liquid samples that are modified in the course of the experiment should have their volumes measured and updated after running the experiment. Please note that public samples are volume measured regardless of the value of this option.
    Default Value: Automatic
    Pattern Description: True or False or Null.
    Programmatic Pattern: (BooleanP | Automatic) | Null

    ImageSample

    Indicates if any samples that are modified in the course of the experiment should be freshly imaged after running the experiment. Please note that public samples are imaged regardless of the value of this option.
    Default Value: Automatic
    Pattern Description: True or False or Null.
    Programmatic Pattern: (BooleanP | Automatic) | Null

Example Results

    • Generate a protocol to prepare a sample of Cobalt (II) chloride hexahydrate then desiccate the prepared sample:
    ExperimentDesiccate[
        Model[Sample,"Cobalt(II) chloride hexahydrate 98-102% ACS"],
        PreparedModelAmount -> 1 Gram,
        PreparedModelContainer -> Model[Container, Vessel, "2mL Tube"],
        Desiccator -> Model[Instrument,Desiccator,"Bel-Art Space Saver Vacuum Desiccator"],
        Time -> 5 Hour,
        Method -> Vacuum,
        Amount -> All
    ]
    • Or generate a protocol for desiccating a specific sample of Cobalt (II) chloride hexahydrate:
    ExperimentDesiccate[
        Object[Sample,"Sample for ExperimentDesiccate help files"],
        Desiccator -> Model[Instrument,Desiccator,"Bel-Art Space Saver Vacuum Desiccator"],
        Time -> 5 Hour,
        Method -> Vacuum,
        Amount -> All
    ]
    • Generated Protocol:
    Object[Protocol,Desiccate,"id:pZx9joO8wjE0"]
    • Samples images, before and after desiccation, can be downloaded from DesiccationImages field:
    Download[Object[Protocol,Desiccate,"id:pZx9joO8wjE0"], DesiccationImages]
    • The pressure of the desiccator chamber throughout the desiccation is saved to Pressure field of the protocol object:
    Download[Object[Protocol,Desiccate,"id:pZx9joO8wjE0"], Pressure]
    PlotSensor[Object[Data,Pressure,"id:wqW9BPzWAkM4"]]

Example Calls

    Basic protocols for desiccating solid samples

    Prepare 1 gram of each of the three solids, then place them together in a bell jar desiccator for desiccation:
    Basic protocol for solid samples:

    Specify options:

    Specify instrument options:
    Specify desiccant options:
    Specify sample options:
    Specify desiccation options:
    Specify storage options:

Warnings and Errors

    Messages  (33)

    CanNotCheckDesiccant  (1)

    Throw an error if Desiccant is not indicating drierite but CheckDesiccant is True

    DesiccantAmountNotCalculated  (1)

    Throw an error if the amount of the specified desiccant is 0 gram:

    DesiccantOptionsRequired  (5)

    If method is StandardDesiccant or DesiccantUnderVacuum, all desiccant-related options should be informed:

    If method is StandardDesiccant or DesiccantUnderVacuum, DesiccantAmount should be informed:

    If method is StandardDesiccant or DesiccantUnderVacuum, DesiccantPhase should be informed:

    If method is StandardDesiccant or DesiccantUnderVacuum, Desiccant should be informed:

    If method is StandardDesiccant or DesiccantUnderVacuum, DesiccantStorageContainer should be informed:

    DesiccantPhaseAndAmountMismatch  (1)

    The unit of DesiccantAmount does matches the State of the Desiccant:

    DesiccantPhaseMismatch  (1)

    Throw an error if the specified DesiccantPhase does not match the Desiccant state:

    DesiccantPhaseMissing  (1)

    The physical state of the desiccant must be informed:

    DesiccantStorageConflict  (1)

    DesiccantStorageContainer is Null when DesiccantStorageCondition is set to Disposal:

    InsufficientDesiccantAmount  (1)

    The amount of the desiccant is Greater than or equal to 100 Gram or 100 Milliliter:

    InvalidDesiccantPhase  (1)

    The physical state of the desiccant must be solid or liquid:

    InvalidDesiccatorType  (1)

    A suitable desiccator (not storage desiccator) is selected for the desiccate experiment:

    InvalidSamplesOutStorageCondition  (1)

    SamplesOutStorageCondition is informed if DefaultStorageCondition is not informed in sample model:

    LargeInputContainer  (1)

    Throw an error if SampleContainer is Null and input container is too large:

    LargeSampleContainer  (1)

    Throw an error if SampleContainer is too large:

    MethodAndDesiccantPhaseMismatch  (1)

    Method and DesiccantPhase do not conflict (if DesiccantPhase is Liquid, Method can NOT be Vacuum or DesiccantUnderVacuum):

    MissingMassInformation  (1)

    The Mass of the sample is informed:

    NonSolidSample  (1)

    All samples are solid:

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

    SampleContainerMismatch  (1)

    Throw an error if Amount is a value other than All but SampleContainer is Null:

    SmallSampleContainer  (1)

    Throw an error if SampleContainer is too small:

    UnusedDesiccantOptions  (5)

    If method is Vacuum, DesiccantAmount should not be informed:

    If method is Vacuum, DesiccantPhase should not be informed:

    If method is Vacuum, Desiccant should not be informed:

    If method is Vacuum, DesiccantStorageContainer should not be informed:

    Throw an error if desiccation method is Vacuum but desiccant phase is informed:

Possible Issues

    Possible Issues with Estimating Solid Sample or Desiccant Amounts

    When determining the amount of solid samples or desiccants, ensure that the total volume remains within the capacity of the target container. Consider void volumes in powders when estimating volumes based on mass to avoid overfilling.
Last modified on Wed 8 Oct 2025 12:54:08