ecl-logo Documentation

ExperimentDNASynthesis

ExperimentDNASynthesis[OligomerModels]Protocol

creates a DNA Synthesis Protocol to synthesize the OligomerModels.

    
Deoxyribonucleic acid (DNA) synthesis is the process of creating DNA strands of a desired sequence via solid phase synthesis. DNA created in this way is constructed by molecules known as phosphoramidites, which are made up of a single nucleobase and nucleic acid backbone, as well as protecting groups that are removed at specific stages throughout the synthesis process. During this process, synthesis cycles made up of a series of chemical reactions are repeated, each time adding a single nucleobase to a growing oligomer. During each cycle, the specific nucleobase added to the reaction can be controlled, providing the ability to create arbitrary DNA sequences. Synthesis begins with a large, immobile support, often controlled pore glass (CPG). Attached to each support is a chemical linker that provides the first nucleobase added to the reaction a location to bind. By manipulating orthogonal chemistries, one nucleobase is added to the end of the growing oligomer during each synthesis cycle, leading to specific control over the sequence created. The benefit of the solid support is the isolation of synthesis sites, making interference between growing chains impossible. With the addition of nucleobases in high excess of the amount of synthesis sites, reaction efficiency can be driven to high percentiles, providing stepwise yields between 95% and 99%. After the desired sequence has been synthesized, a cleavage reaction is conducted to strip the fully grown DNA strands from their solid supports by severing the chemical linker. These solid supports are then filtered away from the nucleic acid material yielding oligomers of desired sequences.
    

Experimental Principles

    Figure 1.1: General scheme of the synthesis of DNA. Step 1: first monomer is loaded on the solid support. Step 2: subsequent monomers are loaded on the solid support, extending the length of the RNA though repeating the synthetic cycle. (A) Deblocking - removal of the DMT protecting group from the growing end (5' end) of the DNA strand with trichloroacetic acid, allowing for the coupling of the next base in the sequence. (B) Adding (coupling) the next monomer in sequence to the exposed 5' end of the DNA strand. Before the monomer can be coupled, the diisopropylamino protecting group on the 3' phosphorous must be removed and replaced with a good leaving group, this achieved through the addition of the activator to the reaction mixture. Since the new monomer has its own DMT protective group on the 5' oxygen, only one coupling can happen per each strand. (C) Capping unreacted strands. Even though the coupling efficiency is high, it is possible that some of the monomers will not be coupled to the strand on the solid support leaving 5' hydroxy group available for the next coupling. In order to make those strands passive, they are reacted with the acid anhydride. (D) Oxidation of the tricoordinated phosphate triester linkage connecting the last two bases of the growing oligomer to form tetracordinated phosphate triester linkage using iodine, water and a weak base. Step3: DNA strands are cleaved from the solid support and protecting groups on the bases are removed using strong base solution like Ammonia in water.

Instrumentation

    ABI 3900

    Figure 2.1.1: Columns containing solid supports, likely CPGs, are loading into the synthesizer deck in positions 1 through 48. There are four banks of columns, each holding 12 columns in place. Reagent bottles are attached to their appropriate loading positions prior to the start of the run. Most reagents are loaded in duplicate, with one set of reagents supplying the injection lines used by banks 1 and 3 and the other set supplying the injections lines of banks 2 and 4. In addition to the standard synthesis reagents, there are 6 positions for modifier phosphoramidites, which can be injected into all banks and provide the ability to add non-standard bases or modifications to your synthesized oligomers.     The entire system is plumbed with argon gas, which floods the synthesis chamber as well as the headspace of the reagents, as the reagents are water and oxygen sensitive. The argon pressure above the reagents provides positive pressure, which is used to push reagents through the injection lines. Injections are controlled via the opening or closing of a solenoid value at the end of each reagent injection line. During synthesis, reagents are injected into each column during each stage of the synthesis cycle. In between injections, the chamber is further pressurized by argon gas and a waste valve is opened below the synthesizer deck. This causes any fluid reagent in the columns to be flushed out of the system into waste, while the growing oligomer strands remain attached to the solid supports sandwiched between two frits in each column.     Once synthesis is complete, the columns are removed from the chamber and shuttled off to a cleavage and filtration station, where the oligomers are cleaved from the deck. The synthesizer meanwhile undergoes a system flush with acetonitrile to remove any sticky reagents that would otherwise harden and clog injection lines. Placeholder bottles are then placed on the instrument, each with a large volume of acetonitrile, such that the synthesizer remains water-free in between synthesis experiments.

Experiment Options

    Protocol

    Instrument

    The instrument used to perform the synthesis.
    Default Value: Model[Instrument, DNASynthesizer, ABI 3900]
    Pattern Description: An object of type or subtype Model[Instrument, DNASynthesizer] or Object[Instrument, DNASynthesizer]
    Programmatic Pattern: ObjectP[{Model[Instrument, DNASynthesizer], Object[Instrument, DNASynthesizer]}]

    Scale

    The theoretical amount of reaction sites available for synthesis.
    Default Value: Automatic
    Default Calculation: If Column is specified as an object, automatically set to the amount of reaction sites on the resin. Otherwise, automatically set to 0.2 Micromole
    Pattern Description: 40 nanomoles, 0.2 micromoles, or 1 micromole.
    Programmatic Pattern: (40*Nanomole | 0.2*Micromole | 1*Micromole) | Automatic

    Columns

    The solid support on which the synthesis is carried out.
    Default Value: Model[Sample, UnySupport]
    Pattern Description: An object of type or subtype Model[Sample], Object[Sample], or Model[Resin] or a prepared sample.
    Programmatic Pattern: ObjectP[{Model[Sample], Object[Sample], Model[Resin]}] | _String
    Index Matches to: experiment samples

    NumberOfReplicates

    Number of times each of the input strands should be synthesized using identical experimental parameters.
    Default Value: Null
    Pattern Description: Greater than or equal to 1 in increments of 1 or Null.
    Programmatic Pattern: GreaterEqualP[1, 1] | Null

    Phosphoramidites

    Phosphoramidites

    The phosphoramidite solutions used for each monomer.
    Default Value: Automatic
    Default Calculation: Set to default Stock Solution specified in SyntheticMonomers field of Model[Physics, Oligomer] for this type of oligomer.
    Pattern Description: List of one or more {Monomer, Phosphoramidite} entries.
    Programmatic Pattern: {{SequenceP, ObjectP[Model[Sample, StockSolution]] | {{ObjectP[Model[Sample, StockSolution]], RangeP[0.01, 1.]}..} | {{SequenceP, RangeP[0.01, 1.]}..}}..} | Automatic

    PhosphoramiditeDesiccants

    Indicates if desiccant packets should be added to the phosphoramidite bottles.
    Default Value: False
    Pattern Description: True or False.
    Programmatic Pattern: BooleanP

    Initial Wash

    NumberOfInitialWashes

    The number of washes at the start of the synthesis.
    Default Value: 1
    Pattern Description: Greater than or equal to 1 and less than or equal to 5 in increments of 1.
    Programmatic Pattern: RangeP[1, 5, 1]

    InitialWashTime

    The wait time between the washes at the start of the synthesis.
    Default Value: 0 seconds
    Pattern Description: Greater than or equal to 0 seconds and less than or equal to 72 hours.
    Programmatic Pattern: RangeP[0*Second, $MaxExperimentTime]

    InitialWashVolume

    The volume of each wash at the start of the synthesis.
    Default Value: Automatic
    Default Calculation: Automatically set to 200 uL for the 40 nmol scale, 250 uL for the 200 nmol scale, 280 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 microliters and less than or equal to 280 microliters.
    Programmatic Pattern: RangeP[0*Microliter, 280*Microliter] | Automatic

    Deprotection

    NumberOfDeprotections

    The number of times that the detritylation solution is added to the resin after each cycle.
    Default Value: Automatic
    Default Calculation: Automatically set to 2 for 40 nmol and 200 nmol scales; automatically set to 3 for 1 umol scale.
    Pattern Description: Greater than or equal to 1 and less than or equal to 5 in increments of 1.
    Programmatic Pattern: RangeP[1, 5, 1] | Automatic

    DeprotectionTime

    The wait time between each detritylation iteration.
    Default Value: 0 seconds
    Pattern Description: Greater than or equal to 0 seconds and less than or equal to 72 hours.
    Programmatic Pattern: RangeP[0*Second, $MaxExperimentTime]

    DeprotectionVolume

    The volume of detritylation solvent used in each detritylation iteration.
    Default Value: Automatic
    Default Calculation: automatically set to 60 uL for the 40 nmol scale, 140 uL for the 200 nmol scale, 180 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 microliters and less than or equal to 280 microliters.
    Programmatic Pattern: RangeP[0*Microliter, 280*Microliter] | Automatic

    NumberOfDeprotectionWashes

    The number of times the resin is washed after detritylation.
    Default Value: 1
    Pattern Description: Greater than or equal to 1 and less than or equal to 5 in increments of 1.
    Programmatic Pattern: RangeP[1, 5, 1]

    DeprotectionWashTime

    The wait time between the post-detritylation washes.
    Default Value: 0 seconds
    Pattern Description: Greater than or equal to 0 seconds and less than or equal to 72 hours.
    Programmatic Pattern: RangeP[0*Second, $MaxExperimentTime]

    DeprotectionWashVolume

    The volume of each post-detritylation wash.
    Default Value: Automatic
    Default Calculation: Automatically set to 200 uL for the 40 nmol scale, 250 uL for the 200 nmol scale, 280 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 microliters and less than or equal to 280 microliters.
    Programmatic Pattern: RangeP[0*Microliter, 280*Microliter] | Automatic

    FinalDeprotection

    Indicates if a final deprotection (detritylation) step is done following the last synthesis cycle.
    Default Value: True
    Pattern Description: True or False.
    Programmatic Pattern: BooleanP
    Index Matches to: experiment samples

    Coupling

    ActivatorSolution

    The solution that interacts with the the phosphoramidite prior to attaching next monomer by protonating the diisopropylamino group of the nucleoside phosphoramidite, increasing the coupling reaction efficiency, typically a tetrazole derivative dissolved in acetonitrile.
    Default Value: Automatic
    Default Calculation: Automatically set Model[Sample, "Activator"].
    Pattern Description: An object of type or subtype Model[Sample] or Object[Sample] or a prepared sample or Automatic or list of one or more an object of type or subtype Model[Sample] or Object[Sample] or a prepared sample or Automatic entries.
    Programmatic Pattern: ((ObjectP[{Model[Sample], Object[Sample]}] | _String) | {((ObjectP[{Model[Sample], Object[Sample]}] | _String) | Automatic)..} | Automatic) | Automatic

    ActivatorVolume

    The volume of activator solution used to increase coupling reaction efficiency of the amidite prior to attaching next monomer.
    Default Value: Automatic
    Default Calculation: automatically set to 40 uL for the 40 nmol scale, 45 uL for the 200 nmol scale, 115 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 microliters and less than or equal to 280 microliters.
    Programmatic Pattern: RangeP[0*Microliter, 280*Microliter] | Automatic

    PhosphoramiditeVolume

    The volume of phosphoramidite solution used in each attaching next monomer iteration for each monomer. A,U,G,C (specified by "Natural") must use the same phosphoramidite volume.
    Default Value: Automatic
    Default Calculation: Automatically set to 20 uL for the 40 nmol scale, 30 uL for the 200 nmol scale, 75 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 1 microliter and less than or equal to 280 microliters or list of one or more {Monomer, Volume} entries.
    Programmatic Pattern: (RangeP[1*Microliter, 280*Microliter] | {{Modification[_] | "Natural", RangeP[0*Microliter, 280*Microliter]}..}) | Automatic

    NumberOfCouplings

    The number of next monomer attachment iterations for each monomer type. A,U,G,C (specified by "Natural") must use the same number of couplings.
    Default Value: Automatic
    Default Calculation: Automatically set to 1 for the 40 nmol scale, 2 for the 200 nmol scale, 3 for the 1 umol scale.
    Pattern Description: Greater than or equal to 1 and less than or equal to 5 in increments of 1 or list of one or more {Monomer, Couplings} entries.
    Programmatic Pattern: (RangeP[1, 5, 1] | {{Modification[_] | "Natural", RangeP[1, 5, 1]}..}) | Automatic

    CouplingTime

    The wait time between each next monomer attachment iteration for each monomer. A,U,G,C (specified by "Natural") must use the same next monomer attachment time.
    Default Value: Automatic
    Default Calculation: Automatically set to 6 minutes.
    Pattern Description: Greater than or equal to 0 seconds and less than or equal to 30 minutes or list of one or more {Monomer, Time} entries.
    Programmatic Pattern: (RangeP[0*Second, 30*Minute] | {{Modification[_] | "Natural", RangeP[0*Second, $MaxExperimentTime]}..}) | Automatic

    Capping

    CapASolution

    The solution (used in conjunction with Cap B Solution) used to passivate unreacted sites by acetylating free hydroxy sites, typically a mixture of tetrahydrofuran, lutidine, and acid anhydride.
    Default Value: Automatic
    Default Calculation: For RNA defaults to Ultramild Cap A, otherwise, defaults Cap A (based on acetic anhydride).
    Pattern Description: An object of type or subtype Model[Sample] or Object[Sample] or a prepared sample or Automatic or list of one or more an object of type or subtype Model[Sample] or Object[Sample] or a prepared sample or Automatic entries.
    Programmatic Pattern: ((ObjectP[{Model[Sample], Object[Sample]}] | _String) | {((ObjectP[{Model[Sample], Object[Sample]}] | _String) | Automatic)..} | Automatic) | Automatic

    CapBSolution

    The solution (used in conjunction with Cap A Solution) used to passivate unreacted sites by acetylating free hydroxy sites, typically a solution of 1-methylimidazole in tetrahydrofuran.
    Default Value: Automatic
    Default Calculation: Automatically default to Model[Sample, "Capping solution B"].
    Pattern Description: An object of type or subtype Model[Sample] or Object[Sample] or a prepared sample or Automatic or list of one or more an object of type or subtype Model[Sample] or Object[Sample] or a prepared sample or Automatic entries.
    Programmatic Pattern: ((ObjectP[{Model[Sample], Object[Sample]}] | _String) | {((ObjectP[{Model[Sample], Object[Sample]}] | _String) | Automatic)..} | Automatic) | Automatic

    NumberOfCappings

    The number of passivation iterations on each synthesis cycle.
    Default Value: 1
    Pattern Description: Greater than or equal to 1 and less than or equal to 5 in increments of 1.
    Programmatic Pattern: RangeP[1, 5, 1]

    CapTime

    The wait time between each passivation iteration.
    Default Value: 0 seconds
    Pattern Description: Greater than or equal to 0 seconds and less than or equal to 72 hours.
    Programmatic Pattern: RangeP[0*Second, $MaxExperimentTime]

    CapAVolume

    The volume of Cap A solution used in each passivation iteration.
    Default Value: Automatic
    Default Calculation: Automatically set to 20 uL for the 40 nmol scale, 30 uL for the 200 nmol scale, 80 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 microliters and less than or equal to 280 microliters.
    Programmatic Pattern: RangeP[0*Microliter, 280*Microliter] | Automatic

    CapBVolume

    The volume of Cap B solution used in each passivation iteration.
    Default Value: Automatic
    Default Calculation: Automatically set to 20 uL for the 40 nmol scale, 30 uL for the 200 nmol scale, 80 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 microliters and less than or equal to 280 microliters.
    Programmatic Pattern: RangeP[0*Microliter, 280*Microliter] | Automatic

    Oxidation

    OxidationSolution

    The solution used to oxidize phosphorus(III) linker into phosphate, typically a solution of Iodine in THF with Pyridine and water.
    Default Value: Model[Sample, Oxidizer]
    Pattern Description: An object of type or subtype Model[Sample] or Object[Sample] or a prepared sample.
    Programmatic Pattern: ObjectP[{Model[Sample], Object[Sample]}] | _String

    NumberOfOxidations

    The number of oxidation iterations.
    Default Value: 1
    Pattern Description: Greater than or equal to 1 and less than or equal to 5 in increments of 1.
    Programmatic Pattern: RangeP[1, 5, 1]

    OxidationTime

    The wait time between each oxidation iteration.
    Default Value: 0 seconds
    Pattern Description: Greater than or equal to 0 seconds and less than or equal to 72 hours.
    Programmatic Pattern: RangeP[0*Second, $MaxExperimentTime]

    OxidationVolume

    The volume of oxidation solution used in each oxidation iteration.
    Default Value: Automatic
    Default Calculation: Automatically set to 30 uL for the 40 nmol scale, 60 uL for the 200 nmol scale, 150 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 microliters and less than or equal to 280 microliters.
    Programmatic Pattern: RangeP[0*Microliter, 280*Microliter] | Automatic

    NumberOfOxidationWashes

    The number of washes following oxidation.
    Default Value: 1
    Pattern Description: Greater than or equal to 1 and less than or equal to 5 in increments of 1.
    Programmatic Pattern: RangeP[1, 5, 1]

    OxidationWashTime

    The wait time between each post-oxidation wash.
    Default Value: 0 seconds
    Pattern Description: Greater than or equal to 0 seconds and less than or equal to 72 hours.
    Programmatic Pattern: RangeP[0*Second, $MaxExperimentTime]

    OxidationWashVolume

    The volume of wash solution for each post-oxidation wash.
    Default Value: Automatic
    Default Calculation: Automatically set to 200 uL for the 40 nmol scale, 250 uL for the 200 nmol scale, 280 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 microliters and less than or equal to 280 microliters.
    Programmatic Pattern: RangeP[0*Microliter, 280*Microliter] | Automatic

    SecondaryOxidationSolution

    The solution used to oxidize phosphorus(III) linker after coupling in the secondary set of cycle parameters.
    Default Value: Automatic
    Default Calculation: If SecondaryCyclePositions is specified as Null, resolves to Null, otherwise resolves to Model[Sample, "Oxidizer"].
    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

    SecondaryNumberOfOxidations

    The number of oxidation iterations in the secondary set of cycle parameters.
    Default Value: 1
    Pattern Description: Greater than or equal to 1 and less than or equal to 5 in increments of 1.
    Programmatic Pattern: RangeP[1, 5, 1]

    SecondaryOxidationTime

    The wait time between each oxidation iteration in the secondary set of cycle parameters.
    Default Value: 60 seconds
    Pattern Description: Greater than or equal to 0 seconds and less than or equal to 20 minutes.
    Programmatic Pattern: RangeP[0*Second, 20*Minute]

    SecondaryOxidationVolume

    The volume of oxidation solution used in each oxidation iteration in the secondary set of cycle parameters.
    Default Value: Automatic
    Default Calculation: Automatically set to 30 uL for the 40 nmol scale, 60 uL for the 200 nmol scale, 150 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 microliters and less than or equal to 280 microliters.
    Programmatic Pattern: RangeP[0*Microliter, 280*Microliter] | Automatic

    SecondaryNumberOfOxidationWashes

    The number of washes following oxidation in the secondary set of cycle parameters.
    Default Value: 1
    Pattern Description: Greater than or equal to 1 and less than or equal to 5 in increments of 1.
    Programmatic Pattern: RangeP[1, 5, 1]

    SecondaryOxidationWashTime

    The wait time between each post-oxidation wash in the secondary set of cycle parameters.
    Default Value: 0 seconds
    Pattern Description: Greater than or equal to 0 seconds and less than or equal to 72 hours.
    Programmatic Pattern: RangeP[0*Second, $MaxExperimentTime]

    SecondaryOxidationWashVolume

    The volume of wash solution for each post-oxidation wash in the secondary set of cycle parameters.
    Default Value: Automatic
    Default Calculation: Automatically set to 200 uL for the 40 nmol scale, 250 uL for the 200 nmol scale, 280 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 microliters and less than or equal to 280 microliters.
    Programmatic Pattern: RangeP[0*Microliter, 280*Microliter] | Automatic

    SecondaryCyclePositions

    Positions that should use the secondary cycle parameters (Lower Case).
    Default Value: Null
    Pattern Description: An expression that matches the pattern: ListableP[_Integer] or Null.
    Programmatic Pattern: ListableP[_Integer] | Null
    Index Matches to: experiment samples

    Final Wash

    NumberOfFinalWashes

    The number of washes at the end of the synthesis.
    Default Value: 4
    Pattern Description: Greater than or equal to 1 and less than or equal to 10 in increments of 1.
    Programmatic Pattern: RangeP[1, 10, 1]

    FinalWashTime

    The wait time between the washes at the end of the synthesis.
    Default Value: 0 seconds
    Pattern Description: Greater than or equal to 0 seconds and less than or equal to 72 hours.
    Programmatic Pattern: RangeP[0*Second, $MaxExperimentTime]

    FinalWashVolume

    The volume of each wash at the start of the synthesis.
    Default Value: Automatic
    Default Calculation: Automatically set to 200 uL for the 40 nmol scale, 250 uL for the 200 nmol scale, 280 uL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 microliters and less than or equal to 280 microliters.
    Programmatic Pattern: RangeP[0*Microliter, 280*Microliter] | Automatic

    Cleavage

    Cleavage

    Indicates if each oligomer should be cleaved and filtered from the resin after synthesis.
    Default Value: Automatic
    Default Calculation: Automatically set to True unless StorageSolvent or StorageSolventVolume are specified.
    Pattern Description: True or False.
    Programmatic Pattern: BooleanP | Automatic
    Index Matches to: experiment samples

    CleavageMethod

    The methods defining the cleavage conditions for each oligomer. If a provided method conflicts with the other cleavage options, the specified cleavage options overwrite the corresponding conditions specified by the method.
    Default Value: Null
    Default Calculation: If the strand is being cleaved, automatically set to a cleavage method based on the values of the other cleavage options.
    Pattern Description: An object of type or subtype Object[Method, Cleavage] or Null.
    Programmatic Pattern: ObjectP[{Object[Method, Cleavage]}] | Null
    Index Matches to: experiment samples

    CleavageTime

    The length of time the strands are incubated in cleavage solution.
    Default Value: Automatic
    Default Calculation: If the strand is being cleaved and CleavageMethod is specified, automatically set based on the time used in the specified method. If the strand is being cleaved and CleavageMethod is not specified, automatically set to 8 hours.
    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
    Index Matches to: experiment samples

    CleavageTemperature

    The temperature at which the strands are incubated in cleavage solution.
    Default Value: Automatic
    Default Calculation: If the strand is being cleaved and CleavageMethod is specified, automatically set based on the temperature used in the specified method. If the strand is being cleaved and CleavageMethod is not specified, automatically set to 55C.
    Pattern Description: Greater than or equal to 0 degrees Celsius and less than or equal to 100 degrees Celsius or Null.
    Programmatic Pattern: (RangeP[0*Celsius, 100*Celsius] | Automatic) | Null
    Index Matches to: experiment samples

    CleavageSolution

    The cleavage solution in which the strands cleaved.
    Default Value: Automatic
    Default Calculation: If the strand is being cleaved and CleavageMethod is specified, automatically set based on the cleavage solution used in the specified method. If the strand is being cleaved and CleavageMethod is not specified, automatically set to ammonium hydroxide.
    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

    CleavageSolutionVolume

    The volume of cleavage solution in which the strands are cleaved.
    Default Value: Automatic
    Default Calculation: If the strand is being cleaved and CleavageMethod is specified, automatically set based on the cleavage solution volume used in the specified method. If the strand is being cleaved and CleavageMethod is not specified, automatically set to 800 uL.
    Pattern Description: Greater than or equal to 0 milliliters and less than or equal to 1 milliliter or Null.
    Programmatic Pattern: (RangeP[0*Milliliter, 1*Milliliter] | Automatic) | Null
    Index Matches to: experiment samples

    CleavageWashSolution

    The solution used to wash the solid support following cleavage.
    Default Value: Automatic
    Default Calculation: If the strand is being cleaved and CleavageMethod is specified, automatically set based on the cleavage wash solution used in the specified method. If the strand is being cleaved and CleavageMethod is not specified, automatically set to RNAse-free water.
    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

    CleavageWashVolume

    The volume of solution used to wash the solid support following cleavage.
    Default Value: Automatic
    Default Calculation: If the strand is being cleaved and CleavageMethod is specified, automatically set based on the cleavage solution volume used in the specified method. If the strand is being cleaved and CleavageMethod is not specified, automatically set to 500 uL.
    Pattern Description: Greater than or equal to 0 milliliters and less than or equal to 0.8 milliliters or Null.
    Programmatic Pattern: (RangeP[0*Milliliter, 0.8*Milliliter] | Automatic) | Null
    Index Matches to: experiment samples

    StorageSolvent

    The solution that uncleaved resin is stored in following synthesis.
    Default Value: Automatic
    Default Calculation: If the strand is not being cleaved, automatically set to water.
    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

    StorageSolventVolume

    The amount of solvent that uncleaved resin is stored in post-synthesis.
    Default Value: Automatic
    Default Calculation: If the strand is not being cleaved, automatically set 200 uL for the 40 nmol scale, 400 uL for the 200 nmol scale, 1 mL for the 1 umol scale.
    Pattern Description: Greater than or equal to 0 milliliters and less than or equal to 1 milliliter or Null.
    Programmatic Pattern: (RangeP[0*Milliliter, 1*Milliliter] | Automatic) | Null
    Index Matches to: experiment samples

    Post Experiment

    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 Models' DefaultStorageCondition.
    Default Value: Null
    Pattern Description: {AmbientStorage, Refrigerator, Freezer, DeepFreezer, CryogenicStorage, YeastIncubation, BacteriaIncubation, MammalianIncubation, TissueCultureCellsIncubation, MicrobialCellsIncubation, MicrobialCellsShakingIncubation, YeastCellsIncubation, YeastCellsShakingIncubation, ViralIncubation, AcceleratedTesting, IntermediateTesting, LongTermTesting, UVVisLightTesting} or Disposal or Null.
    Programmatic Pattern: (Alternatives[SampleStorageTypeP | Disposal]) | Null
    Index Matches to: experiment samples

Protocol Options

    Organizational Information

    Template

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

    Name

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

    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 Calls

    Synthesize DNA strands of desired sequences:

    Provide a DNA sequence:
    Provide an existing Model[Molecule,Oligomer]s for synthesis:
    Provide an existing Model[Molecule,Oligomer]s for synthesis:

    Modifications

    Any modifications that will be used for the synthesis can be directly added to the strand Model. For any novel modifications, you can directly specify the monomer solution with the Monomers Option. For example, here we perform one synthesis with a common modification (automatically selecting the Monomer), and another synthesis with a novel modification that has a monomer solution specified:

    Control the supports used to begin synthesis:

    The experiment will resolve this by default, dependent on whether a modifier is detected on the end of the strand:
    Manually specify the columns to use in the synthesis:

    Control cleavage conditions used at the end of the protocol:

    Specify a cleavage method that will set the solution, time, and temperature for cleavage:
    Specify specific cleavage parameters for your samples:
    You may indicate that no cleavage should be conducted and your SamplesOut with DNA still bound to their solidphase supports:

    Creating a new StockSolution for a phosphoramidite that ECL did not stock:

    Make sure that the Model[Sample] for the phosphoramidite has FixedAmounts (how much is in the bottle) and TransferOutSolventVolumes (how much solvent we will add to make a StockSolution) set:
    Create a new Model[Sample, StockSolution] for the phosphoramidite of the given concentration. This special form of StockSolution definition will have the StockSolution be prepared in the original container of the Sample that has FixedAmounts populated. Additionally, we specify how we will mix out mixture to dissolve phosphoramidite:
    Create new DNASynthesis protocol with new Phosphoramidite:

    Running a synthesis with degenerate position in the sequence

    Create new DNASynthesis protocol using new StockSolution for denegerate monomer:

Warnings and Errors

    Messages  (33)

    CleavageConflict  (17)

    CleavageMethod may only be specified as a non-Null value for strands where Cleavage is True:

    CleavageSolution may only be specified as a non-Null value for strands where Cleavage is True:

    CleavageSolution may only be specified as Null for strands where Cleavage is False:

    CleavageSolutionVolume may only be specified as a non-Null value for strands where Cleavage is True:

    CleavageSolutionVolume may only be specified as Null for strands where Cleavage is False:

    CleavageTemperature may only be specified as a non-Null value for strands where Cleavage is True:

    CleavageTemperature may only be specified as Null for strands where Cleavage is False:

    CleavageTime may only be specified as a non-Null value for strands where Cleavage is True:

    CleavageTime may only be specified as Null for strands where Cleavage is False:

    CleavageWashSolution may only be specified as a non-Null value for strands where Cleavage is True:

    CleavageWashSolution may only be specified as Null for strands where Cleavage is False:

    CleavageWashVolume may only be specified as a non-Null value for strands where Cleavage is True:

    CleavageWashVolume may only be specified as Null for strands where Cleavage is False:

    StorageSolvent may only be specified as a non-Null value for strands where Cleavage is False:

    StorageSolvent may only be specified as Null for strands where Cleavage is True:

    StorageSolventVolume may only be specified as a non-Null value for strands where Cleavage is False:

    StorageSolventVolume may only be specified as Null for strands where Cleavage is True:

    CleavageOptionSetConflict  (2)

    A cleavage-related option and a non-cleavage related option may not both set to a non-Null value for the same strand:

    A cleavage-related option and a non-cleavage related option may not both set to Null for the same strand:

    ColumnLoadingsDiffer  (1)

    If Scale is automatic and Columns is specified as an object but the columns differ in the amount of active sites, a warning is given and Scale resolves to the amount of resin active sites available on the largest column:

    DuplicateName  (1)

    If the name is already in use, throws an error:

    InvalidDNAResins  (1)

    If a resin was given without scale information, an error is thrown:

    MismatchDeckReagentBanks  (3)

    Raise error when the number of specified Activator Solutions is not copacetic with teh number of banks used:

    Raise error when the number of specified CapA Solutions is not copacetic with teh number of banks used:

    Raise error when the number of specified CapB Solutions is not copacetic with teh number of banks used:

    MismatchedColumnAndScale  (1)

    If scale does not match the amount of active sites available on the specified sample resin, a warning is given:

    MismatchedColumnAndStrand  (1)

    Returns Failed if the preloaded sequence on the specified resin does not match the 3' bases in the model oligomer:

    MonomerCouplingTimeConflict  (1)

    If the same monomer is specified more than once with different values, errors:

    MonomerNumberOfCouplingsConflict  (1)

    If the same monomer is specified more than once with different values, errors:

    MonomerPhosphoramiditeConflict  (1)

    If a different phosphoramidite is specified for the same monomer, an error is given:

    MonomerPhosphoramiditeVolumeConflict  (2)

    If the same monomer is specified more than once with different values, errors:

    If the same monomer is specified more than once with different values, errors:

    ReusedColumn  (1)

    If Columns are specified as objects (as opposed to models), unique objects must be used:

Possible Issues

    SamplesOut Mass

    The mass of cleaved synthesized oligos is estimated to be half the product of the synthesis scale and the oligo's molecular weight. It is highly recommended to quantify synthesized oligos by ExperimentAbsorbanceSpectroscopy.
Last modified on Mon 12 Dec 2022 12:22:41