RNA droplets
RNA origami design following the designs of Lorenzo Di Michele and Elisa Franco (https://doi.org/10.1038/s41565-024-01726-x, https://doi.org/10.1038/s41467-024-50003-x)
[1]:
import pyfurnace as pf
uracil_connect = pf.Motif.from_structure('.&.', 'U&U')
Droplet A with Malachite Green aptamer
[2]:
kl = pf.KissingLoop(sequence='AUCGCGAAA')
line0 = [kl.copy(),
pf.Stem(10),
pf.MalachiteGreenShort(),
pf.Stem(10),
uracil_connect.copy(),
pf.Dovetail(0, up_cross=False),
pf.Stem(25),
kl.copy().flip(),
]
line1 = [kl.copy(),
pf.Stem(13),
pf.start_end_stem(),
pf.Stem(12),
pf.Dovetail(0, down_cross=False),
uracil_connect.copy(),
pf.Stem(25),
kl.copy().flip(),
]
drop_a = pf.Origami(line0, line1, align='first')
print(drop_a)
╭──────────╮
╭NNNKNNNNNNCC───CG─A──CUGNNNNKNNNNNU─────NNNKNNNKNNNNNKNNNNNNKNNNN┼─AUCGCGAAA╯
│┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊│
╭AAAGCGCUA─┼NNNKNNNNNNGGUAAGCAAUGGACNNNNKNNNNN─U╮╭──NNNKNNNKNNNNNKNNNNNNKNNNN╯
╰──────────╯ ││
││
↑↓
││ ╭──────────╮
╭NNNNKNNNNNNNN─3 5─NNNKNNNKNNNN──╯╰U─NNNKNNNNNKNNNNKNNNNKNNNNN┼─AUCGCGAAA╯
│┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊│
╭AAAGCGCUA─┼NNNNKNNNNNNNN─────NNNKNNNKNNNN─────UNNNKNNNNNKNNNNKNNNNKNNNNN╯
╰──────────╯
Droplet B with Broccoli aptamer
[3]:
kl_b_seq = 'AGUCGACAA'
drop_b = drop_a.copy()
drop_b[0, 2] = pf.Broccoli()
# insert the sequence of the kissing loop B
for i in (0, -1):
for j in (0, -1):
drop_b[i, j].set_sequence(kl_b_seq)
print(drop_b)
╭──────────╮
╭NNNKNNNNNNGGAGAC────GGUCGGG─UC────CAGNNNNKNNNNNU─────NNNKNNNKNNNNNKNNNNNNKNNNN┼─AGUCGACAA╯
│┊┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊ ┊ ┊┊ ┊ ┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊│
╭AACAGCUGA─┼NNNKNNNNNNCCUCGG─GUGUGAGAUG─AG─CU─GUCNNNNKNNNNN─U╮╭──NNNKNNNKNNNNNKNNNNNNKNNNN╯
╰──────────╯ ││
││
↑↓
││ ╭──────────╮
╭NNNNKNNNNNNNN─3 5─NNNKNNNKNNNN──╯╰U─NNNKNNNNNKNNNNKNNNNKNNNNN┼─AGUCGACAA╯
│┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊│
╭AACAGCUGA─┼NNNNKNNNNNNNN─────NNNKNNNKNNNN─────UNNNKNNNNNKNNNNKNNNNKNNNNN╯
╰──────────╯