#The number of walkers nWalkersmin = 500 nWalkersmax = 2000 walkers = np.array([i + 1 for i in range(nWalkersmin, nWalkersmax)]) correctwalkers = walkers[walkers % 50 == 0] vavg = np.zeros(correctwalkers.size) stdvavg = np.zeros(correctwalkers.size) count = 0 for i in range(correctwalkers.size): thiswalker = correctwalkers[i] H2Wfn = dmc.wavefunction(thiswalker, 'harmonic', plotting=False) TheoreticalOmega0 = H2Wfn.getTheoreticalOmega0() print('the theoretical frequency for H2 vibration is: ' + str(TheoreticalOmega0) + ' cm^-1') #Important parameters for the MC simulation nReps = 10 #Repeat the DMC simulation 3 times nEquilibrationSteps = 10 #Initially equilibrate the simulation with 12000 diffusion steps nSteps = 200 #Make 2000 Diffusion steps in each simulation #don't worry about this just yet nDesSteps = 75 nRepsDW = 2000
import dmc1D as dmc import numpy as np import matplotlib.pyplot as plt import sys #test of Morse #Conversion factor of atomic units of energy to wavenumber (inverse centimeters) au2wn=219474.63 #The number of walkers nWalkers=10000 H2Wfn=dmc.wavefunction(nWalkers,'Morse',plotting=False) TheoreticalOmega0=H2Wfn.getTheoreticalOmega0() print('the theoretical frequency for H2 vibration is: '+str(TheoreticalOmega0)+' cm^-1') #Important parameters for the MC simulation nReps=3 #Repeat the DMC simulation 3 times nEquilibrationSteps=1200 #Initially equilibrate the simulation with 12000 diffusion steps nSteps=2000 #Make 2000 Diffusion steps in each simulation #don't worry about this just yet nDesSteps=75 nRepsDW=2000 print('important parameters:') print('Equilibrating for '+str(nEquilibrationSteps))
import dmc1D as dmc import numpy as np import matplotlib.pyplot as plt import sys #test of quartic #Conversion factor of atomic units of energy to wavenumber (inverse centimeters) au2wn = 219474.63 #The number of walkers nWalkers = 10000 #was10000 H2Wfn = dmc.wavefunction(nWalkers, 'Quartic', plotting=False) TheoreticalOmega0 = H2Wfn.getTheoreticalOmega0() print('the theoretical frequency for H2 vibration is: ' + str(TheoreticalOmega0) + ' cm^-1') #Important parameters for the MC simulation nReps = 3 #Repeat the DMC simulation 3 times nEquilibrationSteps = 12000 #Initially equilibrate the simulation with 12000 diffusion steps nSteps = 2000 #Make 2000 Diffusion steps in each simulation #don't worry about this just yet nDesSteps = 75 nRepsDW = 2000 print('Important parameters:') print('Equilibrating for ' + str(nEquilibrationSteps)) print('The number of diffusion steps in the simulation is ' + str(nSteps)) print('The time step is ' + str(H2Wfn.dtau))
import dmc1D as dmc import numpy as np import matplotlib.pyplot as plt import sys #Conversion factor of atomic units of energy to wavenumber (inverse centimeters) au2wn = 219474.63 #The number of walkers nWalkers = 10000 H2Wfn = dmc.wavefunction(nWalkers, 'harmonic', plotting=False) TheoreticalOmega0 = H2Wfn.getTheoreticalOmega0() print('the theoretical frequency for H2 vibration is: ' + str(TheoreticalOmega0) + ' cm^-1') #Important parameters for the MC simulation nReps = 3 #Repeat the DMC simulation 3 times nEquilibrationSteps = 1200 #Initially equilibrate the simulation with 12000 diffusion steps nSteps = 2000 #Make 2000 Diffusion steps in each simulation #don't worry about this just yet nDesSteps = 75 nRepsDW = 2000 print('important parameters:') print('Equilibrating for ' + str(nEquilibrationSteps)) print('The number of diffusion steps in the simulation is ' + str(nSteps)) print('The time step is ' + str(H2Wfn.dtau)) H2Wfn.setX(H2Wfn.xcoords + 6.2)