Design a strand displacement gate.
See the accompanying design specification (PDF file). See also the LaTeX spec file that you can edit to make your own design specs in a standardized format.
This is a 1-step reaction. To design 1 gate, there are 2 elementary step tubes plus 1 global crosstalk tube.
Target test tubes:
Material: RNA
Temperature: 23 C
# Import Python NUPACK module
from nupack import *
# Define physical model
my_model = Model(material='rna', celsius=23)
# Define sequence domains
da = Domain('N10', name='da')
db = Domain('N8', name='db')
# Define strands containing these domains
sX = TargetStrand([da, db], name='sX')
sA = TargetStrand([~db, ~da], name='sA')
sB = TargetStrand([da], name='sB') # ~dgate is the reverse complement of dgate
sA_toe = TargetStrand([~db], name='sA_toe')
# Define target complexes
cX = TargetComplex([sX], 'U18', name='cX')
cAB = TargetComplex([sA, sB], 'U8D10+', name='cAB')
cXA = TargetComplex([sX, sA], 'D18+', name='cXA')
cB = TargetComplex([sB], 'U10', name='cB')
cA_toe = TargetComplex([sA_toe], 'U8', name='cA_toe')
# Define target test tubes
reactants = TargetTube(on_targets={cX: 1e-08, cAB: 1e-08},
off_targets=SetSpec(max_size=2, exclude=[cXA]), name='reactants')
products = TargetTube(on_targets={cXA: 1e-08, cB: 1e-08},
off_targets=SetSpec(max_size=2), name='products')
crosstalk = TargetTube(on_targets={cX: 1e-08, cAB: 1e-08, cA_toe: 1e-08, cB:1e-8},
off_targets=SetSpec(max_size=2, exclude=[cXA, [sX, sA_toe]]), name='crosstalk')
# Set a stop condition of 2%
# Set seed for random number generation to get a reproducible result for this demo
my_options = DesignOptions(f_stop=0.02, seed=93)
# Define and run the test tube design job
my_design = tube_design(tubes=[reactants, products, crosstalk], model=my_model, options=my_options)
my_results = my_design.run(trials=1)[0]
# Display the design results
my_results
Domain | Sequence |
---|---|
da | CAGGUGGAAG |
da* | CUUCCACCUG |
db | AGGUAAGC |
db* | GCUUACCU |
Strand | Sequence |
---|---|
sA_toe | GCUUACCU |
sX | CAGGUGGAAGAGGUAAGC |
sA | GCUUACCUCUUCCACCUG |
sB | CAGGUGGAAG |
Objective type | Value |
---|---|
Weighted ensemble defect | 0.0171 |
Complex | Complex defect (nt) | Normalized complex defect |
---|---|---|
cX | 0.851 | 0.0473 |
cB | 0.0708 | 0.00708 |
cXA | 0.194 | 0.00539 |
cAB | 0.237 | 0.00845 |
cA_toe | 0.0156 | 0.00195 |
Tube | Tube defect (M) | Normalized tube defect |
---|---|---|
reactants | 1.10e-08 | 0.0238 |
products | 2.65e-09 | 0.00575 |
crosstalk | 1.38e-08 | 0.0216 |
Tube | On-target complex | Structural defect (M) | Concentration defect (M) | Total defect (M) |
---|---|---|---|---|
reactants | cX | 8.51e-09 | 9.76e-14 | 8.51e-09 |
reactants | cAB | 2.37e-09 | 7.71e-11 | 2.44e-09 |
products | cXA | 1.94e-09 | 1.25e-14 | 1.94e-09 |
products | cB | 7.08e-10 | 4.80e-14 | 7.08e-10 |
crosstalk | cX | 8.51e-09 | 1.77e-13 | 8.51e-09 |
crosstalk | cAB | 2.37e-09 | 2.16e-14 | 2.37e-09 |
crosstalk | cA_toe | 1.54e-10 | 9.36e-10 | 1.09e-09 |
crosstalk | cB | 7.00e-10 | 1.17e-09 | 1.87e-09 |
Tube | Complex | Concentration (M) | Target concentration (M) |
---|---|---|---|
reactants | cX | 1.00e-08 | 1.00e-08 |
reactants | cAB | 1.00e-08 | 1.00e-08 |
products | cXA | 1.00e-08 | 1.00e-08 |
products | cB | 1.00e-08 | 1.00e-08 |
crosstalk | cX | 1.00e-08 | 1.00e-08 |
crosstalk | cAB | 1.00e-08 | 1.00e-08 |
crosstalk | cA_toe | 9.88e-09 | 1.00e-08 |
crosstalk | cB | 9.88e-09 | 1.00e-08 |
Tube | Complex | Concentration (M) |
---|---|---|
crosstalk | (sA_toe+sB) | 1.17e-10 |
reactants | — | — |
products | — | — |