📄 mpqcoo.dox
字号:
savestate = no % method for computing the molecule's energy mole<MBPT2_R12>: ( molecule = $:molecule basis = $:basis aux_basis = $:abasis stdapprox = "A'" nfzc = 1 memory = 16000000 integrals<IntegralCints>:() % reference wavefunction reference<CLHF>: ( molecule = $:molecule basis = $:basis memory = 16000000 integrals<IntegralCints>:() ) ))</pre>\subsection mpqcoosamphfopt Hartree-Fock OptimizationThe following input will optimize the geometry of water usingthe quasi-Newton method.<pre>% emacs should use -*- KeyVal -*- mode% molecule specificationmolecule<Molecule>: ( symmetry = C2V unit = angstrom { atoms geometry } = { O [ 0.00000000 0.00000000 0.37000000 ] H [ 0.78000000 0.00000000 -0.18000000 ] H [ -0.78000000 0.00000000 -0.18000000 ] })% basis set specificationbasis<GaussianBasisSet>: ( name = "6-31G*" molecule = $:molecule)mpqc: ( checkpoint = no savestate = no % molecular coordinates for optimization coor<SymmMolecularCoor>: ( molecule = $:molecule generator<IntCoorGen>: ( molecule = $:molecule ) ) % method for computing the molecule's energy mole<CLHF>: ( molecule = $:molecule basis = $:basis coor = $..:coor memory = 16000000 ) % optimizer object for the molecular geometry opt<QNewtonOpt>: ( function = $..:mole update<BFGSUpdate>: () convergence<MolEnergyConvergence>: ( cartesian = yes energy = $..:..:mole ) ))</pre>\subsection mpqcoosamphessopt Optimization with a Computed Guess HessianThe following input will optimize the geometry of water usingthe quasi-Newton method. The guess Hessian will be computedat a lower level of theory.<pre>% emacs should use -*- KeyVal -*- mode% molecule specificationmolecule<Molecule>: ( symmetry = C2V unit = angstrom { atoms geometry } = { O [ 0.00000000 0.00000000 0.37000000 ] H [ 0.78000000 0.00000000 -0.18000000 ] H [ -0.78000000 0.00000000 -0.18000000 ] })% basis set specificationbasis<GaussianBasisSet>: ( name = "6-31G*" molecule = $:molecule)mpqc: ( checkpoint = no savestate = no % molecular coordinates for optimization coor<SymmMolecularCoor>: ( molecule = $:molecule generator<IntCoorGen>: ( molecule = $:molecule ) ) % method for computing the molecule's energy mole<CLHF>: ( molecule = $:molecule basis = $:basis coor = $..:coor memory = 16000000 guess_hessian<FinDispMolecularHessian>: ( molecule = $:molecule only_totally_symmetric = yes eliminate_cubic_terms = no checkpoint = no energy<CLHF>: ( molecule = $:molecule memory = 16000000 basis<GaussianBasisSet>: ( name = "3-21G" molecule = $:molecule ) ) ) ) % optimizer object for the molecular geometry opt<QNewtonOpt>: ( function = $..:mole update<BFGSUpdate>: () convergence<MolEnergyConvergence>: ( cartesian = yes energy = $..:..:mole ) ))</pre>\subsection mpqcoosampoptnewt Optimization Using Newton's MethodThe following input will optimize the geometry of water using the Newton'smethod. The Hessian will be computed at each step in the optimization.However, Hessian recomputation is usually not worth the cost; try using thecomputed Hessian as a guess Hessian for a quasi-Newton method beforeresorting to a Newton optimization.<pre>% Emacs should use -*- KeyVal -*- mode% molecule specificationmolecule<Molecule>: ( symmetry = c2v unit = angstrom { atoms geometry } = { O [ 0.00000000 0.00000000 0.36937294 ] H [ 0.78397590 0.00000000 -0.18468647 ] H [ -0.78397590 0.00000000 -0.18468647 ] })% basis set specificationbasis<GaussianBasisSet>: ( name = "3-21G" molecule = $:molecule)mpqc: ( checkpoint = no savestate = no restart = no % molecular coordinates for optimization coor<SymmMolecularCoor>: ( molecule = $:molecule generator<IntCoorGen>: ( molecule = $:molecule ) ) do_energy = no do_gradient = no % method for computing the molecule's energy mole<CLHF>: ( molecule = $:molecule basis = $:basis memory = 16000000 coor = $..:coor guess_wavefunction<CLHF>: ( molecule = $:molecule total_charge = 0 basis<GaussianBasisSet>: ( molecule = $:molecule name = "STO-3G" ) memory = 16000000 ) hessian<FinDispMolecularHessian>: ( only_totally_symmetric = yes eliminate_cubic_terms = no checkpoint = no ) ) optimize = yes % optimizer object for the molecular geometry opt<NewtonOpt>: ( print_hessian = yes max_iterations = 20 function = $..:mole convergence<MolEnergyConvergence>: ( cartesian = yes energy = $..:..:mole ) ))</pre>\subsection mpqcoosamphffreq Hartree-Fock FrequenciesThe following input will compute Hartree-Fock frequencies by finitedisplacements. A thermodynamic analysis will also beperformed. If optimization input is also provided, then theoptimization will be run first, then the frequencies.<pre>% emacs should use -*- KeyVal -*- mode% molecule specificationmolecule<Molecule>: ( symmetry = C1 { atoms geometry } = { O [ 0.0000000000 0.0000000000 0.8072934188 ] H [ 1.4325589285 0.0000000000 -0.3941980761 ] H [ -1.4325589285 0.0000000000 -0.3941980761 ] })% basis set specificationbasis<GaussianBasisSet>: ( name = "STO-3G" molecule = $:molecule)mpqc: ( checkpoint = no savestate = no % method for computing the molecule's energy mole<CLHF>: ( molecule = $:molecule basis = $:basis memory = 16000000 )% vibrational frequency input freq<MolecularFrequencies>: ( molecule = $:molecule ))</pre>\subsection mpqcoosampcoor Giving Coordinates and a Guess HessianThe following example shows several features that are really independent.The variable coordinates are explicitly given, rather than generatedautomatically. This is especially useful when a guess Hessian is to beprovided, as it is here. This Hessian, as given by the user, is notcomplete and the QNewtonOpt object will fill in the missingvalues using a guess the Hessian provided by the MolecularEnergyobject. Also, fixed coordinates are given in this sample input.<pre>% emacs should use -*- KeyVal -*- mode% molecule specificationmolecule<Molecule>: ( symmetry = C1 { atoms geometry } = { H [ 0.088 2.006 1.438 ] O [ 0.123 3.193 0.000 ] H [ 0.088 2.006 -1.438 ] O [ 4.502 5.955 -0.000 ] H [ 2.917 4.963 -0.000 ] H [ 3.812 7.691 -0.000 ] })% basis set specificationbasis<GaussianBasisSet>: ( name = "STO-3G" molecule = $:molecule)mpqc: ( checkpoint = no savestate = no % method for computing the molecule's energy mole<CLHF>: ( molecule = $:molecule basis = $:basis coor = $..:coor memory = 16000000 ) % molecular coordinates for optimization coor<SymmMolecularCoor>: ( molecule = $:molecule generator<IntCoorGen>: ( molecule = $:molecule extra_bonds = [ 2 5 ] ) % use these instead of generated coordinates variable<SetIntCoor>: [ <StreSimpleCo>:( atoms = [ 2 5 ] ) <BendSimpleCo>:( atoms = [ 2 5 4 ] ) <OutSimpleCo>: ( atoms = [ 5 2 1 3 ] ) <SumIntCoor>: ( coor: [ <StreSimpleCo>:( atoms = [ 1 2 ] ) <StreSimpleCo>:( atoms = [ 2 3 ] ) ] coef = [ 1.0 1.0 ] ) <SumIntCoor>: ( coor: [ <StreSimpleCo>:( atoms = [ 4 5 ] ) <StreSimpleCo>:( atoms = [ 4 6 ] ) ] coef = [ 1.0 1.0 ] ) <BendSimpleCo>:( atoms = [ 1 2 3 ] ) <BendSimpleCo>:( atoms = [ 5 4 6 ] ) ] % these are fixed by symmetry anyway, fixed<SetIntCoor>: [ <SumIntCoor>: ( coor: [ <StreSimpleCo>:( atoms = [ 1 2 ] ) <StreSimpleCo>:( atoms = [ 2 3 ] ) ] coef = [ 1.0 -1.0 ] ) <SumIntCoor>: ( coor: [ <StreSimpleCo>:( atoms = [ 4 5 ] ) <StreSimpleCo>:( atoms = [ 4 6 ] ) ] coef = [ 1.0 -1.0 ] ) <TorsSimpleCo>:( atoms = [ 2 5 4 6] ) <OutSimpleCo>:( atoms = [ 3 2 6 4 ] ) <OutSimpleCo>:( atoms = [ 1 2 6 4 ] ) ] ) % optimizer object for the molecular geometry opt<QNewtonOpt>: ( function = $..:mole update<BFGSUpdate>: () convergence<MolEnergyConvergence>: ( cartesian = yes energy = $..:..:mole ) % give a partial guess hessian in internal coordinates % the missing elements will be filled in automatically hessian = [ [ 0.0109261670 ] [ -0.0004214845 0.0102746106 ] [ -0.0008600592 0.0030051330 0.0043149957 ] [ 0.0 0.0 0.0 ] [ 0.0 0.0 0.0 ] [ 0.0 0.0 0.0 ] [ 0.0 0.0 0.0 ] ] ))</pre>\subsection mpqcoosamphb Optimization with a Hydrogen BondThe automatic internal coordinate generator will fail if it cannot findenough redundant internal coordinates. In this case, the internalcoordinate generator must be explicitly created in the input and givenextra connectivity information, as is shown below.<pre>% emacs should use -*- KeyVal -*- mode% molecule specificationmolecule<Molecule>: ( symmetry = C1 { atoms geometry } = { H [ 0.088 2.006 1.438 ] O [ 0.123 3.193 0.000 ] H [ 0.088 2.006 -1.438 ] O [ 4.502 5.955 -0.000 ] H [ 2.917 4.963 -0.000 ] H [ 3.812 7.691 -0.000 ] })% basis set specificationbasis<GaussianBasisSet>: ( name = "STO-3G" molecule = $:molecule)mpqc: ( checkpoint = no savestate = no % method for computing the molecule's energy mole<CLHF>: ( molecule = $:molecule basis = $:basis coor = $..:coor memory = 16000000 ) % molecular coordinates for optimization coor<SymmMolecularCoor>: ( molecule = $:molecule % give an internal coordinate generator that knows about the % hydrogen bond between atoms 2 and 5 generator<IntCoorGen>: ( molecule = $:molecule extra_bonds = [ 2 5 ] ) ) % optimizer object for the molecular geometry opt<QNewtonOpt>: ( function = $..:mole update<BFGSUpdate>: () convergence<MolEnergyConvergence>: ( cartesian = yes
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -