Example #1
0
    def setup_aatopology(self):
        GMIN.initialize()
        pot = GMINPotential(GMIN)
        coords = pot.getCoords()
        nrigid = coords.size / 6

        print "I have %d water molecules in the system" % nrigid
        print "The initial energy is", pot.getEnergy(coords)

        water = tip4p.water()

        system = RBTopology()
        system.add_sites([deepcopy(water) for i in xrange(nrigid)])
        self.potential = pot
        self.nrigid = nrigid

        self.render_scale = 0.3
        self.atom_types = system.get_atomtypes()

        self.draw_bonds = []
        for i in xrange(nrigid):
            self.draw_bonds.append((3 * i, 3 * i + 1))
            self.draw_bonds.append((3 * i, 3 * i + 2))

        return system
Example #2
0
    def __init__(self, *args, **kwargs):
        AppBasinHopping.__init__(self, *args, **kwargs)
        self.quenchRoutine = mylbfgs
        self.potential = GMINPotential(GMIN)

        self.quenchParameters["tol"] = 1e-4
        self.quenchParameters["M"] = 80
        self.quenchParameters["maxErise"] = 0.1
        self.quenchRoutine = mylbfgs
Example #3
0
    def setup_aatopology(self):
        self.write_coords_data()
        GMIN.initialize()
        self.pot = GMINPotential(GMIN)
        coords = self.pot.getCoords()
        self.nrigid = coords.size / 6
        assert (self.nrigid == self.nmol)
        #self.nrigid = self.nmol
        otp = self.make_otp()
        topology = RBTopology()
        topology.add_sites([deepcopy(otp) for i in xrange(self.nrigid)])

        self.render_scale = 0.2
        self.atom_types = topology.get_atomtypes()

        self.draw_bonds = []
        for i in xrange(self.nrigid):
            self.draw_bonds.append((3 * i, 3 * i + 1))
            self.draw_bonds.append((3 * i, 3 * i + 2))

        self.params.double_ended_connect.local_connect_params.tsSearchParams.iprint = 10
        return topology
Example #4
0
    def check_converged(E, coords):
        if (E < (parameters.TARGET + parameters.EDIFF)):
            fl = open("stat.dat", "a")
            print "#found minimum"
            t1 = time.clock()
            timespent = t1 - t0
            fl.write("#quenches, functioncalls, time\n")
            fl.write("%d %d %f\n" % (opt.stepnum, potential.ncalls, timespent))
            fl.close()
            exit()


# initialize GMIN
GMIN.initialize()
# create a potential which calls GMIN
potential = GMINPotential(GMIN)
# get the initial coorinates
coords = potential.getCoords()
coords = np.random.random(coords.shape)
# create takestep routine

# we combine a normal step taking
group = takestep.BlockMoves()

step1 = takestep.AdaptiveStepsize(OXDNATakestep(displace=parameters.displace,
                                                rotate=0.),
                                  frequency=50)
step2 = takestep.AdaptiveStepsize(OXDNATakestep(displace=0.,
                                                rotate=parameters.rotate),
                                  frequency=50)
group.addBlock(100, step1)
Example #5
0
 def get_potential(self):
     return GMINPotential(GMIN)