A collection of origami from ROAD
This is a collection of the some RNA origami design and published with the ROAD software from Cody Geary and Ebbe Andersen, slightly modified (e.g. twist corrected). (ROAD paper: https://doi.org/10.1038/s41557-021-00679-1)
[1]:
import pyfurnace as pf
3H-2DT
[2]:
ori_3H_2DT = pf.simple_origami([-2], main_stem=33, end_helix_len=7)
# adjust start position
ori_3H_2DT[0, 3].length = 12
ori_3H_2DT[0, 5].length = 21
# adjust stems before the KL
ori_3H_2DT[0, 1].length = 5
ori_3H_2DT[-1, 1].length = 16
ori_3H_2DT[0, -2].length = 10
ori_3H_2DT[-1, -2].length = 19
# put the KL in the right place
ori_3H_2DT[0, 0] = pf.KissingLoop120(pk_index=1)
ori_3H_2DT[-1, 0] = pf.KissingLoop120(pk_index=2)
ori_3H_2DT[0, -1] = pf.KissingLoop120(open_left=True, pk_index=1)
ori_3H_2DT[-1, -1] = pf.KissingLoop120(open_left=True, pk_index=2)
pf.ipython_display_txt(ori_3H_2DT)
╭────────╮
╭NNKNN────NNNNKNNNNKNN─3 5─NNNKNNNNNNKNNNNNKNNNN────NNNKNNNNKN┼─NNNNNNN╯
│┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊│
╭NNNNNNN─┼NNKNN╮╭──NNNNKNNNNKNN─────NNNKNNNNNNKNNNNNKNNNN╮╭──NNNKNNNNKN╯
╰────────╯ ││ ││
││ │╰╮
││ ╰╮│
↑↓ ↑↓
││ ╭───────╮ ││
╭CGNNKNNNN╯╰SS──NNNKNNNKNNNAA┼─NNNNNN╯╭─ANNNNKNNNNNNN╯╰SS──NNKNNNNUU╮
│ ┊┊┊┊┊┊┊ ┊┊ ┊┊┊┊┊┊┊┊┊┊┊ │ ┊┊┊┊┊┊ │ ┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊ ┊┊┊┊┊┊┊ │
╰UUNNKNNNN──SS╮╭NNNKNNNKNNNA─╯╭NNNNNN─┼AANNNNKNNNNNNN──SS╮╭NNKNNNNGC╯
││ ╰───────╯ ││
││ ││
↑↓ ↑↓
││ ╭───────╮ ││ ╭────────╮
╭NNKNNNNNKNNNNNNN──╯╰NNNNKNNNNNKNAA┼─NNNNNN╯╭─ANNNKNNNNNKNNN──╯╰NNNNKNNNNNNKNNNNKNN┼─NNNNNNN╯
│┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊ │ ┊┊┊┊┊┊ │ ┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊│
╭NNNNNNN─┼NNKNNNNNKNNNNNNN────NNNNKNNNNNKNA─╯╭NNNNNN─┼AANNNKNNNNNKNNN────NNNNKNNNNNNKNNNNKNN╯
╰────────╯ ╰───────╯
3H-3DT
[3]:
ori_3H_3DT = pf.simple_origami([-2], main_stem=33, end_helix_len=7)
# adjust start position
ori_3H_3DT[0, 3].length = 12
ori_3H_3DT[0, 5].length = 21
# adjust stems before the KL
ori_3H_3DT[0, 1].length = 12
ori_3H_3DT[-1, 1].length = 16
ori_3H_3DT[0, -2].length = 11
ori_3H_3DT[-1, -2].length = 21
# put the KL in the right place
ori_3H_3DT[0, 0] = pf.KissingLoop120(pk_index=1)
ori_3H_3DT[-1, 0] = pf.KissingLoop120(pk_index=2)
ori_3H_3DT[0, -1] = pf.KissingLoop120(open_left=True, pk_index=1)
ori_3H_3DT[-1, -1] = pf.KissingLoop120(open_left=True, pk_index=2)
pf.ipython_display_txt(ori_3H_3DT)
╭────────╮
╭NNNNKNNNNNNN────NNNKNNNNKNNN─3 5─NNNKNNNNKNNNNKNNNNKNN────NNNKNNNNNKN┼─NNNNNNN╯
│┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊│
╭NNNNNNN─┼NNNNKNNNNNNN╮╭──NNNKNNNNKNNN─────NNNKNNNNKNNNNKNNNNKNN╮╭──NNNKNNNNNKN╯
╰────────╯ ││ ││
││ │╰╮
││ ╰╮│
↑↓ ↑↓
││ ╭───────╮ ││
╭CGNNNKNNN╯╰SS──NNNNKNNNNNNAA┼─NNNNNN╯╭─ANNKNNNNNKNNN╯╰SS──NNKNNNNUU╮
│ ┊┊┊┊┊┊┊ ┊┊ ┊┊┊┊┊┊┊┊┊┊┊ │ ┊┊┊┊┊┊ │ ┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊ ┊┊┊┊┊┊┊ │
╰UUNNNKNNN──SS╮╭NNNNKNNNNNNA─╯╭NNNNNN─┼AANNKNNNNNKNNN──SS╮╭NNKNNNNGC╯
││ ╰───────╯ ││
││ ││
↑↓ ↑↓
││ ╭───────╮ ││ ╭────────╮
╭NNNKNNNNNNKNNNNN──╯╰NNNNKNNNNNNNAA┼─NNNNNN╯╭─ANNNNKNNNNNNKN──╯╰NNNKNNNNNKNNNNNKNNNNN┼─NNNNNNN╯
│┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊ │ ┊┊┊┊┊┊ │ ┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊│
╭NNNNNNN─┼NNNKNNNNNNKNNNNN────NNNNKNNNNNNNA─╯╭NNNNNN─┼AANNNNKNNNNNNKN────NNNKNNNNNKNNNNNKNNNNN╯
╰────────╯ ╰───────╯
3H-4DT
[4]:
ori_3H_4DT = pf.simple_origami([-4], main_stem=33, end_helix_len=7)
# adjust start position
ori_3H_4DT[0, 3].length = 12
ori_3H_4DT[0, 5].length = 21
# adjust stems before the KL
ori_3H_4DT[0, 1].length = 5
ori_3H_4DT[-1, 1].length = 17
ori_3H_4DT[0, -2].length = 12
ori_3H_4DT[-1, -2].length = 21
# put the KL in the right place
ori_3H_4DT[0, 0] = pf.KissingLoop120(pk_index=1)
ori_3H_4DT[-1, 0] = pf.KissingLoop120(pk_index=2)
ori_3H_4DT[0, -1] = pf.KissingLoop120(open_left=True, pk_index=1)
ori_3H_4DT[-1, -1] = pf.KissingLoop120(open_left=True, pk_index=2)
pf.ipython_display_txt(ori_3H_4DT)
╭────────╮
╭NNNNN────NNNKNNNNKNNN─3 5─NNKNNNNNKNNNNKNNNNNKN────NNKNNNNKNNNN┼─NNNNNNN╯
│┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊│
╭NNNNNNN─┼NNNNN╮╭──NNNKNNNNKNNN─────NNKNNNNNKNNNNKNNNNNKN╮╭──NNKNNNNKNNNN╯
╰────────╯ ││ ││
││ │╰╮
││ ╰╮│
↑↓ ↑↓
││ ╭───────╮ ││
╭CGNNKNNNN╯╰NNNN──NNKNNNNKNNAA┼─NNNNNN╯╭─ANNNKNNNNNKN╯╰NNNN──NNNNKNNUU╮
│ ┊┊┊┊┊┊┊ ┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊ │ ┊┊┊┊┊┊ │ ┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊ ┊┊┊┊┊┊┊ │
╰UUNNKNNNN──NNNN╮╭NNKNNNNKNNA─╯╭NNNNNN─┼AANNNKNNNNNKN──NNNN╮╭NNNNKNNGC╯
││ ╰───────╯ ││
││ ││
↑↓ ↑↓
││ ╭───────╮ ││ ╭────────╮
╭NNNKNNNNNKNNNNNKN──╯╰NNNNKNNNNNNNAA┼─NNNNNN╯╭─ANNNNKNNNNKNNN──╯╰NNNNKNNNNNNKNNNNNNKNN┼─NNNNNNN╯
│┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊ │ ┊┊┊┊┊┊ │ ┊┊┊┊┊┊┊┊┊┊┊┊┊ ┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊┊│
╭NNNNNNN─┼NNNKNNNNNKNNNNNKN────NNNNKNNNNNNNA─╯╭NNNNNN─┼AANNNNKNNNNKNNN────NNNNKNNNNNNKNNNNNNKNN╯
╰────────╯ ╰───────╯
[ ]: