Ejemplo n.º 1
0
def sweep(runspath,resultspath,inputtemplatepath,sweepdicarr):
    sweeplog = open(resultspath+"/sweep.log","w+")
    sweeplog.write("runspath  "+runspath+"\n")
    sweeplog.write("resultspath  "+resultspath+"\n")
    sweeplog.write("inputtemplatepath  "+inputtemplatepath+"\n")
    
    rundirlog = open(resultspath+"/rundir.log","w+")
   
   
    inputtree = etree.parse(inputtemplatepath)

    for irun, sweepdic in enumerate(sweepdicarr):
        time.sleep(0.1)
        runpath, rundir = tstamp_folder.tstamp_folder(runspath)
        os.chdir(runpath)
        sweeplog.write("\n"+"runpath  "+runpath+"\n")
        rundirlog.write(runpath+"\n")

        inputdscr="Input file generated by sweep.py script\n"
        inputdscr=inputdscr+"input.xml template in: %s\n"%(inputtemplatepath)
        inputdscr=inputdscr+"results path is: %s\n"%(resultspath)


        for xpath,value in sweepdic.items():
            sweeplog.write("\t"+"sweepvar  "+xpath+"\n")
            sweeplog.write("\t"+"value  "+str(value)+"\n")

            inputdscr=inputdscr+"sweeping variable: "+xpath+"\n"
            inputdscr=inputdscr+"value: "+str(value)+"\n"
            
            setinputxml.setByXpath(inputtree,xpath,str(value))
        
        setinputxml.setByXpath(inputtree,"/input/keywords",inputdscr)

        inputtree.write(runpath+"/input.xml",pretty_print="true")
        
        
    sweeplog.close()
    rundirlog.close()
Ejemplo n.º 2
0
    inputtree.write("input.xml", pretty_print="true")

    os.system(runcommand)

    while not os.path.exists("info.xml"):
        time.sleep(1)

    time.sleep(5)
    return -queryinfoxml.getLastTotalEnergy()


runpath, resultspath, inputtemplatepath, runcommandstring, ftolerance, xtolerance, itmax, vararr = read_optimize_input()

print "runpath: ", runpath
print "resultspath: ", resultspath
print "inputtemplatepath: ", inputtemplatepath
print "runcommand: ", runcommandstring
print "ftolerance: ", ftolerance
print "xtolerance: ", xtolerance
print "itmax: ", itmax
for var in vararr:
    print "+ xpath: " + var[0]
    print "  -guess: " + str(var[1])
    print "  -scale: " + str(var[2])

runpath, sstamp = tstamp_folder.tstamp_folder(runpath)
optimize(
    runpath, resultspath, inputtemplatepath, vararr, runcommandstring, ftolerance=1.0e-2, xtolerance=1.0e-2, itmax=500
)