def __main__():

    parser = make_parser()
    args = parser.parse_args()

    LENGTH_OF_SMALLEST = int(args.bp)
    FNAME = str(args.plyfile)
    SPACERS = int(args.spacers)

    overhangs = None
    overhangfilename = args.overhangfile
    if overhangfilename is not None:
        overhangs = read_overhang_file(overhangfilename)

    #breakpoint()

    segs_list = segment_maker.get_segments(FNAME,
                                           LENGTH_OF_SMALLEST,
                                           SPACERS,
                                           nicks=args.nicks,
                                           overhangs=overhangs)

    #now we apply the sequence optimizer.

    sequence_optimizer.optimize_sequence(segs_list)

    model = mrdna.SegmentModel(
        segs_list,
        local_twist=True,
        dimensions=(5000, 5000, 5000),
    )

    #model.set_sequence(m13seq(),force=False)

    #NUPACK add sequence here!

    prefix = "DNA"

    run_args = dict(
        model=model,
        output_name=prefix,
        job_id="job-" + prefix,
        directory=args.directory,
        gpu=args.gpu,
        minimization_output_period=int(args.output_period),
        coarse_local_twist=args.coarse_local_twist,
        fix_linking_number=args.fix_linking_number,
        coarse_output_period=int(args.output_period),
        fine_output_period=int(args.output_period),
        minimization_steps=0,  # int(args.minimization_steps),
        coarse_steps=int(args.coarse_steps),
        fine_steps=int(args.fine_steps),
        backbone_scale=args.backbone_scale,
        oxdna_steps=args.oxdna_steps,
        oxdna_output_period=args.oxdna_output_period)

    export_sequences(model, args.seqfile)

    simulate(**run_args)
Beispiel #2
0
def __main__():

    parser = make_parser()
    args = parser.parse_args()

    LENGTH_OF_SMALLEST = int(args.bp)
    FNAME = str(args.plyfile)
    SPACERS = int(args.spacers)

    segs_list = segment_maker.get_segments(FNAME, LENGTH_OF_SMALLEST, SPACERS)

    model = mrdna.SegmentModel(
        segs_list,
        local_twist=True,
        dimensions=(5000, 5000, 5000),
    )
    #apply sequence here

    model.set_sequence(m13seq(), force=False)

    prefix = "DNA"

    run_args = dict(
        model=model,
        output_name=prefix,
        job_id="job-" + prefix,
        directory=args.directory,
        gpu=args.gpu,
        minimization_output_period=int(args.output_period),
        coarse_local_twist=args.coarse_local_twist,
        fix_linking_number=args.fix_linking_number,
        coarse_output_period=int(args.output_period),
        fine_output_period=int(args.output_period),
        minimization_steps=0,  # int(args.minimization_steps),
        coarse_steps=int(args.coarse_steps),
        fine_steps=int(args.fine_steps),
        backbone_scale=args.backbone_scale,
        oxdna_steps=args.oxdna_steps,
        oxdna_output_period=args.oxdna_output_period)

    export_sequences(model, args.seqfile)

    simulate(**run_args)
Beispiel #3
0
    d1_stem.dna.sequence = rev_comp("GGAAGGAGGAGAGGAGAATA"[d1_toehold_length:])
else:
    d1_stem.dna.sequence = rev_comp("GGAAGGAGGAGAGGAGAATA")

d1_loop.dna.sequence = "CATCTA"

d5.dna.sequence = "CTTCCTCACAATCAAAATTTACCTAAAA"
d5_overhang.dna.sequence = "T"*d1_ssDNA
if d1_toehold_length != 0:
    d5_toehold.dna.sequence = rev_comp(d1_toehold.dna.sequence)

d5_stem.dna.sequence = rev_comp(d1_stem.dna.sequence)

model = mrdna.SegmentModel(
                    segs_list,
                    local_twist = True,
                    dimensions=(5000,5000,5000),
                )

#model.set_sequence('T'*100000)

prefix = "DNA" 

run_args = dict(
            model = model,
            output_name = prefix,
            job_id = "job-" + prefix,
            directory = args.directory,
            gpu = args.gpu,
            minimization_output_period = int(args.output_period),
            coarse_local_twist = args.coarse_local_twist,