コード例 #1
0
    parser.add_argument("--verbose", default=False, action="store_true", help="")
    args = parser.parse_args()

    print print_args(args)

    Wts = Weights(args.density_score_wt, args.overlap_score_wt, args.closab_score_wt, args.clash_score_wt)
    Scorefxn = ScoreFunction(
        args.density_scorefile, args.overlap_scorefile, args.nonoverlap_scorefile, Wts, args.null_frag_score
    )

    for each_round in range(1, args.round + 1):

        Pose = Pose()
        Pose.initialization(Scorefxn.density_score_dict)  # default initialize by random

        Scorefxn.update_pose(Pose)

        working_temp = args.temperature

        for each_step in range(args.steps):
            print "round: %s  cycle: %s" % (each_round, each_step)

            pos = random.sample(Pose.dict.keys(), 1)[0]  # pick a residue number to start with
            null_frag_id = (args.mer, pos, 0, 0)

            Boltzmann = PerRsdBoltzmann(working_temp)

            """ After picking a position to optimize, calculate compatibility scores for all the candidate placements at that residue """
            for candidate_frag_id in Scorefxn.density_score_dict[
                pos
            ].keys():  # loop over all candidate frags at the pos