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
    if type(i).__name__ != "DoubleStrandedSegment":
        if i.num_nt == 7:
            i.num_nt = ss2
            print("ss2 sorted")
'''
if type(ss3) == type(1):
    for i in model.segments:
        if i.num_nt == 7:
            i.num_nt = ss3
            print ("ss3 sorted")
'''
run_args = dict(
    model=model,
    output_name="out",
    directory=args.directory,
    minimization_output_period=int(args.output_period),
    coarse_local_twist=args.coarse_local_twist,
    fix_linking_number=args.fix_linking_number,
    bond_cutoff=args.coarse_bond_cutoff,
    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,
    run_enrg_md=args.run_enrg_md)

simulate(**run_args)