Skip to content

import (previously exported) cadnano design with paranemic crossover #308

@dave-doty

Description

@dave-doty

A paranemic crossover is one where the domains before and after the crossover are in the same direction, e.g.

image

See the attached scadnano and cadnano designs: paranemic_crossover.zip

The cadnano design in the zip file was generated by running the following code:

import scadnano as sc

def main():
    design = sc.Design.from_scadnano_file('paranemic_crossover.sc')
    design.write_cadnano_v2_file(filename='paranemic_crossover.json')

if __name__ == '__main__':
    main()

This bug can also be reproduced by loading the scadnano design in the web interface, selected Export-->cadnano v2, and then File-->Import cadnano v2.

If you load that file paranemic_crossover.json in the scadnano web interface via File-->Import cadnano v2, it gives this error:

******************
* illegal design *
******************

The design has the following problem:

two domains overlap on helix 0: 
Domain {
  helix=0,
  forward=false,
  start=0,
  end=8,
  deletions=[],
  insertions=[],
  is_first=true,
  is_last=true,
  is_scaffold=false,
  strand_id=strand-H0-7-reverse,
  unused_fields={},
}
  and
Domain {
  helix=0,
  forward=false,
  start=0,
  end=8,
  deletions=[],
  insertions=[],
  is_first=false,
  is_last=true,
  is_scaffold=false,
  strand_id=strand-H2-7-reverse,
  unused_fields={},
}
  but have the same direction

I don't know for sure that the issue is the paranemic crossover, but it does not happen, for instance, in this very similar design:

image

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions