コード例 #1
0
ファイル: dmagmin.py プロジェクト: wwwtyro/PyGMIN
 def create_basinhopping(self, **kwargs):
     GMIN.initialize()    
     opt = AppClusterBH.create_basinhopping(self, **kwargs)
     #self.database.compareMinima = compareMinima
     opt.insert_rejected = True
     addColdFusionCheck(opt)
     return opt
コード例 #2
0
ファイル: run_gui.py プロジェクト: wwwtyro/PyGMIN
    def createBasinHopping(self):
        GMIN.initialize()   
        pot = gminpot.GMINPotential(GMIN)
        coords = pot.getCoords()

        step = TestStep()
        opt = bh.BasinHopping(coords, pot, takeStep=step, quenchRoutine=dmagmin.quenchCrystal, temperature=0.4, storage=self.storage)
        addColdFusionCheck(opt)
        return opt
コード例 #3
0
ファイル: tetrol.py プロジェクト: wwwtyro/PyGMIN
print "initial energy ", pot.getEnergy(coords)

step1 = MyStep()
reseed = dmagmin.GenRandomCrystal(CoordsAdapter(nrigid=GMIN.getNRigidBody(), nlattice=6, coords=coords))
step = group.Reseeding(step1, reseed, maxnoimprove=maxnoimprove)

#save = pickle.load(open("storage"))
#save.nsave = 1000
save = savenlowest.SaveN(nsave=100, accuracy=1e-3)
save.compareMinima = dmagmin.compareMinima

opt = bh.BasinHopping(coords, pot, takeStep=step, 
                      quenchRoutine=dmagmin.quenchCrystal,
                      temperature=temperature, storage=save,
                      quenchParameters=quenchParameters)
addColdFusionCheck(opt)

# create cif directory if it does not exist
import os, errno
try:
    os.makedirs('cif')
except OSError, e:
    if e.errno != errno.EEXIST:
        raise


for i in xrange(1,nsteps/dump_frequency):
    opt.run(dump_frequency)
    #pickle.dump(save, open("storage."+str(i), "w"))
    pickle.dump(save, open("storage", "w"))
    i=0