ab_initio:ase_manual
ASEマニュアル
行列の固有値
from LinearAlgebra import Heigenvalues from Numeric import array a1 = array([[1.0, 0.01j], [-0.01j, 1.0]]) b1 = Heigenvalues(a1) print b1
状態密度
f1 = 'out.nc' from Dacapo import Dacapo s1 = Dacapo.ReadAtoms(filename = f1) c1 = s1.GetCalculator() from ASE.Utilities.DOS import DOS d1 = DOS(c1) x0 = d1.GetEnergies() y1 = d1.GetDOS(0) y2 = d1.GetDOS(1) for i in range(len(x0)): print x0[i], y1[i], -y2[i]
WriteXYZ
from Dacapo import Dacapo s1 = Dacapo.ReadAtoms(filename = 'out.nc') from ASE.IO.xyz import WriteXYZ WriteXYZ('out.xyz', atoms = s1)
標準ツール trajectory2xyz ソースコード
#!/usr/bin/env python from optparse import OptionParser from ASE.IO.xyz import WriteXYZ from ASE.Trajectories.NetCDFTrajectory import NetCDFTrajectory parser = OptionParser(usage='%prog [-r R1 R2 R3] trajectory xyzfile', version='%prog 0.1') parser.add_option('-r', '--repeat', type='int', nargs=3, help='Repeat R1, R2, R3 times along the three axes', metavar='R1 R2 R3') options, args = parser.parse_args() if len(args) != 2: parser.print_help() raise SystemExit print 'Creating xyz file:' ,args[1] trajectory = NetCDFTrajectory(args[0]) WriteXYZ(args[1],trajectory=trajectory,repeat=options.repeat,id=args[0])
VTK (Visual Tool Kit)
f1 = 'out.nc' from Dacapo import Dacapo s1 = Dacapo.ReadAtoms(filename = f1) from ASE.Visualization.VTK import VTKPlotAtoms ap1 = VTKPlotAtoms(s1)
f1 = 'out.nc' from Dacapo import Dacapo s1 = Dacapo.ReadAtoms(filename = f1) from ASE.Visualization.VTK import VTKPlotDensity dp1 = VTKPlotDensity(s1, showatoms = True)
f1 = 'out.nc' m1 = 0 from Dacapo import Dacapo s1 = Dacapo.ReadAtoms(filename = f1) from ASE.Visualization.VTK import VTKPlotWaveFunction wp1 = VTKPlotWaveFunction(s1, band = m1, showatoms = True)
ab_initio/ase_manual.txt · 最終更新: 2022/08/23 13:34 by 127.0.0.1