from pyscf import lib #from pyphf import util, guess from automr import guess, autocas, cidump lib.num_threads(4) xyz = 'N 0.0 0.0 0.0; N 0.0 0.0 1.9' #sys.argv[1] #fch = 'n2.fchk' #sys.argv[2] bas = 'cc-pvdz' mf = guess.from_frag(xyz, bas, [[0], [1]], [0, 0], [3, -3], cycle=50) mf = guess.check_stab(mf) #mf2 = autocas.cas(mf) # UNO -> CASSCF, no localization in this case. mf2 = autocas.cas(mf, lmo='pm', gvb=True) # UNO -> PM LMO -> assoc. rot. -> GVB -> CASSCF, no localization in this case.
from pyscf import lib #from pyphf import util, guess from automr import guess, autocas, cidump lib.num_threads(4) xyz = 'H 0.0 0.0 0.0; H 0.0 0.0 1.9' #sys.argv[1] #fch = 'n2.fchk' #sys.argv[2] bas = 'cc-pvdz' mf = guess.mix(xyz, bas, conv='tight') #mf = guess.from_frag(xyz, bas, [[0],[1]], [0,0], [3,-3], cycle=50) #mf = guess.check_stab(mf) mf2 = autocas.cas(mf) # UNO -> CASSCF, no localization in this case. #cidump.dump(mf2)
from pyscf import scf,dft, gto, lib from automr import guess, autocas lib.num_threads(8) #mf=guess.from_fch_simp("v2.fchk", xc='pbe0') #mf2.verbose=9 #mf2.stability() mol = gto.Mole(atom='''V 0.0 0.0 0.0; V 0.0 0.0 1.77''', basis='def2-tzvp', spin=2) mol.verbose = 4 mol.build() mf = scf.UHF(mol) mf.kernel() mf = guess.check_stab(mf, newton=True) mf2 = autocas.cas(mf, (8, (5,3)) ) mf4 = autocas.nevpt2(mf2) mol2 = gto.Mole(atom='''V 0.0 0.0 0.0''', basis='def2-tzvp', spin=3) mol2.verbose = 4 mol2.build() mfb = scf.UHF(mol2) mfb.kernel() mfb = guess.check_stab(mfb, newton=True) mfb2 = autocas.cas(mfb) mfb4 = autocas.nevpt2(mfb2) mol3 = gto.Mole(atom='''V 0.0 0.0 0.0''', basis='def2-tzvp', spin=1) mol3.verbose = 4 mol3.build() mfc = scf.UHF(mol3) mfc.kernel()
from pyscf import lib from automr import guess, autocas, mcpdft import os, contextlib import numpy as np lib.num_threads(4) os.system('mkdir -p scan') for r in np.arange(0.8, 2.55, 0.1): output = 'scan/n2_%.1f.out' % r os.system("echo '\n' > %s" % output) print('scan %.1f' % r) with open(output, 'a', encoding='utf-8') as f: with contextlib.redirect_stdout(f): xyz = '''N 0.0 0.0 0.0; N 0.0 0.0 %f'''%r bas = 'cc-pvtz' mf = guess.from_frag(xyz, bas, [[0],[1]], [0,0], [3,-3], cycle=50) mf = guess.check_stab(mf) mf2 = autocas.cas(mf, (6,(3,3)), natorb=False) #mf3 = mcpdft.PDFT(mf2, 'tpbe') #mf3.kernel() mf4 = autocas.nevpt2(mf2)
from pyscf import lib, scf #from pyphf import guess, suscf from automr import autocas, guess #lib.num_threads(8) xyz = '''C -2.94294278 0.39039038 0.00000000 C -1.54778278 0.39039038 0.00000000 C -0.85024478 1.59814138 0.00000000 C -1.54789878 2.80665038 -0.00119900 C -2.94272378 2.80657238 -0.00167800 C -3.64032478 1.59836638 -0.00068200 H -3.49270178 -0.56192662 0.00045000 H -0.99827478 -0.56212262 0.00131500 H 0.24943522 1.59822138 0.00063400 H -0.99769878 3.75879338 -0.00125800 H -3.49284578 3.75885338 -0.00263100 H -4.73992878 1.59854938 -0.00086200 ''' bas = 'def2-svp' mf = guess.mix(xyz, bas, conv='tight') #mf2 = autocas.cas(mf, lmo='pm1') mf2 = autocas.cas(mf, lmo='pm') # pm: pm in pyscf, pm1: pm in MOKIT
from pyscf import lib from automr import guess, autocas lib.num_threads(4) xyz = 'N 0.0 0.0 0.0; N 0.0 0.0 1.9' #sys.argv[1] #fch = 'n2.fchk' #sys.argv[2] bas = 'cc-pvdz' mf = guess.from_frag(xyz, bas, [[0], [1]], [0, 0], [3, -3], cycle=50) mf = guess.check_stab(mf) mf2 = autocas.cas(mf, symmetry='D2h')
from pyscf import lib #from pyphf import util, guess from automr import guess, autocas, cidump lib.num_threads(4) xyz = 'N 0.0 0.0 0.0; N 0.0 0.0 1.0' #sys.argv[1] #fch = 'n2.fchk' #sys.argv[2] bas = 'cc-pvdz' mf = guess.gen(xyz, bas, 0, 0) #guess.check_stab(mf) #mf2 = autocas.cas(mf, lmo='pm', gvb=True) # This will invoke CAS(4,4) mf2 = autocas.cas(mf, lmo='pm', gvb=True, act_user=(6, (3, 3))) # User can enlarge the active space
from pyscf import lib, mcscf from automr import guess, autocas lib.num_threads(4) mf = guess.gen(xyz='''Co 0.0 0.0 0.0''', bas='def2-tzvp', charge=2, spin=3) mc = autocas.cas(mf, (5, (5, 2)), dry=True) mc = mc.state_average_([ 1e0 / 7e0, 1e0 / 7e0, 1e0 / 7e0, 1e0 / 7e0, 1e0 / 7e0, 1e0 / 7e0, 1e0 / 7e0 ]) mc.kernel() ave_mo = mc.mo_coeff.copy() mc = mcscf.CASCI(mf, 5, (5, 2)) mc.fcisolver.spin = 1 mc.fcisolver.nroots = 20 mc.kernel(ave_mo)
from pyscf import lib from automr import guess, autocas, mcpdft lib.num_threads(4) xyz = 'N 0.0 0.0 0.0; N 0.0 0.0 1.9' #sys.argv[1] #fch = 'n2.fchk' #sys.argv[2] bas = 'cc-pvdz' mf = guess.from_frag(xyz, bas, [[0], [1]], [0, 0], [3, -3], cycle=50) mf = guess.check_stab(mf) mf2 = autocas.cas(mf, natorb=False) mf3 = mcpdft.PDFT(mf2, 'tpbe') mf3.kernel()