Пример #1
0
else:
    atomsOP = []#[[] for i in range(nAtom)]
    count = 0
    for i,line in enumerate(open(opFile,"r")):
        line = line.split()
        if len(line)<20:continue

        count+=1
        atomsOP.append(map(float,line[1:]))

    atomsOP = zip(*atomsOP)

atoms = array(atomsTraj).swapaxes(0,1)
basis = eye(3)

atoms = rootMeanSquareDist.unwrap(atoms,basis)
atomsTraj = atoms.swapaxes(0,1).swapaxes(1,2)

def coarseGrain(x, cg=10):
    return array([sum(x[i*cg:i*cg+cg])/cg for i in range(int(len(x)/cg))]) 

#brg
#winter
#RdBu
#jet
def colorLine(x, y, z, c=None, cmap=plt.get_cmap('cool'),alpha=0.4):
    if c==None:
        c = linspace(0.0, 1.0, len(x))
    c = array(c)
    points = array([x, y, z]).T.reshape(-1, 1, 3)
    segments = concatenate([points[:-1], points[1:]], axis=1)
Пример #2
0
            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("/")[-1],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)
        atomsTime = [array(atoms) for atoms in configIterator]
        atomsTime = unwrap(atomsTime,basis)
    else:
        lmpFile = inputFile
        atomByteNums = lammpsIO.atomsBytes(lmpFile)
        nAtom = lammpsIO.nAtoms(lmpFile)
        basis = lammpsIO.basis(lmpFile)
        bounds=[[0,basis[0][0]],[0,basis[1][1]],[0,basis[2][2]]]

        configIterator = parserGens.parseLammpsAtoms(atomByteNums,lmpFile,nAtom)
        atomsTime = [array(atoms) for atoms in configIterator]
    bounds=[[0,basis[0][0]],[0,basis[1][1]],[0,basis[2][2]]]
    
    if len(crTime)+1 == nAtom:
        crTime=crTime[1:] #chop off the average if necessary

    if sh2Enable: