Example #1
0
def usage():
    print "%s OUTCAR CONFIG" % sys.argv[0].split("/")[-1]


if len(sys.argv) != 3:
    usage()
    exit(0)

outcarFile = sys.argv[1]
configRequest = int(sys.argv[2])

nSteps = outcarIO.nSteps(outcarFile)

#unit is femto, but in 10E-10*10E-15 seconds to account for angstroms in distance
timestep = outcarIO.timestep(outcarFile) * 10E-1

#Error check requested configuration
if configRequest == -1:
    configRequest = nSteps - 1
if configRequest > nSteps:
    print "%d configurations available" % nSteps
    exit(0)
if configRequest < 5:
    print "Need more than 5 steps for backwards - finite difference method."
    exit(0)

#Gather poscar information for last set of atoms
basis, atypes, atoms, head, poscar = outcarIO.outcar2poscar(
    outcarFile, configRequest)
Example #2
0
    if "-linear" in sys.argv:
        linEnable = True
        i = sys.argv.index("-linear")
        sys.argv.pop(i)
        
    inputFile = sys.argv[1]
    #steps = map(int,sys.argv[2].split(","))
    isfType = "total"
    if sys.argv[2][0] in ['s','S']:
        isfType = "self"
    else:
        isfType = "total"

    if scale == None:
        if "OUTCAR" in inputFile:
            scale = outcarIO.timestep(inputFile)*1E-15# 5E-15 #5fs (potim=5)
        else:
            scale = 0.001E-12 #0.001ps (default for units = metal)

    if logtEnable:
        header = "#Generated by %s using file %s\n log(t) ISF \n"%(sys.argv[0].split("/")[-1],inputFile)
    else:
        header = "#Generated by %s using file %s\n t(ps) ISF \n"%(sys.argv[0].split("/"),inputFile)

    if "OUTCAR" in inputFile:
        ocarFile = inputFile
        atomByteNums = outcarIO.atomBytes(ocarFile)
        nAtom = outcarIO.nAtoms(ocarFile)
        basis = outcarIO.basis(ocarFile)
        
        configIterator = parserGens.parseOutcarAtoms(atomByteNums,ocarFile,nAtom)
Example #3
0
#parses an outcar, takes 3 nearest poscar information and uses finitie difference method to calculate velocities. Stick velocities at the end. Can take the place of a poscar to initialize velocities.

def usage():
    print "%s OUTCAR CONFIG"%sys.argv[0].split("/")[-1]

if len(sys.argv)!=3:
    usage()
    exit(0)

outcarFile = sys.argv[1]
configRequest = int(sys.argv[2])

nSteps = outcarIO.nSteps(outcarFile)

#unit is femto, but in 10E-10*10E-15 seconds to account for angstroms in distance
timestep = outcarIO.timestep(outcarFile) * 10E-1

#Error check requested configuration
if configRequest == -1:
    configRequest = nSteps-1
if configRequest > nSteps:
    print "%d configurations available"%nSteps
    exit(0)
if configRequest < 5:
    print "Need more than 5 steps for backwards - finite difference method."
    exit(0)

#Gather poscar information for last set of atoms
basis,atypes,atoms,head,poscar = outcarIO.outcar2poscar(outcarFile,configRequest)

#Convert from fractional units to cartesian