コード例 #1
0
ファイル: p_dmrg.py プロジェクト: zzy2014/pyscf
 def pt(self):
     newsolver = self
     newsolver.twopdm = False
     newsolver.scheduleSweeps = [0, 2, 6]
     newsolver.scheduleMaxMs = [self.maxM, self.maxM, self.maxM]
     newsolver.scheduleTols = [1e-5, 1e-5, 1e-7]
     newsolver.scheduleNoises = [1e-4, 5e-5, 0.0]
     newsolver.twodot_to_onedot = 0
     newsolver.maxIter = 12
     newsolver.block_extra_keyword.append('response')
     newsolver.block_extra_keyword.append('baseStates %d' % self.state)
     newsolver.block_extra_keyword.append('projectorStates %d' % self.state)
     newsolver.block_extra_keyword.append('GuessState %d' %
                                          (self.state + 1000))
     newsolver.block_extra_keyword.append('targetState %d' %
                                          (self.state + 2000))
     newsolver.block_extra_keyword.append('occ 9999')
     newsolver.block_extra_keyword.append('twodot')
     newsolver.configFile = "pdmrg.conf"
     newsolver.outputFile = "pdmrg.out"
     newsolver.integralFile = self.H0_file + ' ' + self.H1_file
     dmrgci.writeDMRGConfFile(newsolver,
                              newsolver.nelec,
                              Restart=False,
                              with_2pdm=False)
     dmrgci.executeBLOCK(newsolver)
コード例 #2
0
ファイル: p_dmrg.py プロジェクト: NuturesH/pyscf-1
  def compress(self):
      newsolver = self
      newsolver.scheduleSweeps
      newsolver.scheduleSweeps = [0, 1, 2]
      newsolver.scheduleMaxMs  = [self.maxM, self.maxM, self.maxM]
      newsolver.scheduleTols   = [0.0001, 1e-7, 1e-7]
      newsolver.scheduleNoises = [0.0001, 0.0001, 0.0]
      newsolver.twodot_to_onedot = 2
      newsolver.maxIter = 6
      newsolver.twopdm = False
      newsolver.block_extra_keyword.append('compress %d'%self.state)
      newsolver.block_extra_keyword.append('targetState %d'%(self.state+1000))

      newsolver.configFile = "compress.conf"
      newsolver.outputFile = "compress.out"
      newsolver.integralFile = self.H1_file
      dmrgci.writeDMRGConfFile(newsolver,newsolver.nelec,Restart=False,with_2pdm=False)
      dmrgci.executeBLOCK(newsolver)
コード例 #3
0
ファイル: p_dmrg.py プロジェクト: chrinide/pyscf
 def pt(self):
     newsolver = self
     newsolver.twopdm = False
     newsolver.scheduleSweeps = [0, 2, 6]
     newsolver.scheduleMaxMs  = [self.maxM, self.maxM, self.maxM]
     newsolver.scheduleTols   = [1e-5, 1e-5, 1e-7]
     newsolver.scheduleNoises = [1e-4, 5e-5, 0.0]
     newsolver.twodot_to_onedot = 0
     newsolver.maxIter = 12
     newsolver.block_extra_keyword.append('response')
     newsolver.block_extra_keyword.append('baseStates %d'%self.state)
     newsolver.block_extra_keyword.append('projectorStates %d'%self.state)
     newsolver.block_extra_keyword.append('GuessState %d'%(self.state+1000))
     newsolver.block_extra_keyword.append('targetState %d'%(self.state+2000))
     newsolver.block_extra_keyword.append('occ 9999')
     newsolver.block_extra_keyword.append('twodot')
     newsolver.configFile = "pdmrg.conf"
     newsolver.outputFile = "pdmrg.out"
     newsolver.integralFile = self.H0_file+' '+self.H1_file
     dmrgci.writeDMRGConfFile(newsolver,newsolver.nelec,Restart=False,with_2pdm=False)
     dmrgci.executeBLOCK(newsolver)