TEXT   65

optimize

Guest on 19th May 2022 03:28:09 PM

  1. :orphan:
  2.  
  3.  
  4. .. index:: *OPTIMIZE
  5. .. _*OPTIMIZE:
  6.  
  7. ==========
  8. \*OPTIMIZE
  9. ==========
  10.  
  11. Geometry optimization directives.
  12.  
  13. This section controls the geometry optimization. The geometry optimization
  14. algorithm is based on the one of `Dalton <http://www.daltonprogram.org>`_. The
  15. directives are therefore similar except for these few changes:
  16.  
  17. -  No second-order algorithms are available since the molecular Hessian
  18.    is not implemented.
  19. -  A few new keywords have been introduced (see below).
  20.  
  21. If :ref:`**PROPERTIES` or :ref:`**ANALYZE` is specified in the job input section
  22. together with :ref:`*OPTIMIZE`, then the property or analysis module is called
  23. in each optimization iteration and at the converged geometry.
  24.  
  25. Depending on convergence criteria for energies and gradients the values of the
  26. thresholds may be automatically adjusted.
  27.  
  28.  
  29. .. index:: .NO SKIP
  30. .. _OPTIMIZE_.NO SKIP:
  31.  
  32. .NO SKIP
  33. --------
  34.  
  35. Don't skip SSLL or SSSS gradient contributions when small.
  36. This keyword forces the LS and SS two-electron gradient to always be evaluated
  37. in all geometry iterations (depending on the integral flag).
  38.  
  39. The SL and SS two-electron integral contributions to the gradient are normally
  40. skipped if their contribution is estimated to be small. An "empirical" estimate
  41. of the norms of the LS and SS two-electron gradients based on the norm of the
  42. LL two-electron gradient.  This trick is by default activated in a geometry
  43. optimization, since when the current geometry is far away from the equilibrium,
  44. e.g. the norm of the gradient is, say, 1.0, then there is no need to calculate
  45. the LS and/or SS two-electron gradient because they have a norm of, say, 0.001.
  46.  
  47.  
  48. .. index:: .NUMGRA
  49. .. _OPTIMIZE_.NUMGRA:
  50.  
  51. .NUMGRA
  52. -------
  53.  
  54. Force the use of numerical gradient in geometry optimization.
  55.  
  56.  
  57. .. index:: .TWOGRD
  58. .. _OPTIMIZE_.TWOGRD:
  59.  
  60. .TWOGRD
  61. -------
  62.  
  63. Include LL, SL, and SS integral contributions to the gradient
  64. (1 = on; 0 = off). The default is to turn all on::
  65.  
  66.   .TWOGRD
  67.    1 1 1
  68.  
  69.  
  70. .. index:: .BAKER
  71. .. _OPTIMIZE_.BAKER:
  72.  
  73. .BAKER
  74. ------
  75.  
  76. Baker's convergence criteria :cite:`Baker1993` will be used.
  77. The minimum is then said to be
  78. found when the largest element of the gradient vector (in Cartesian or redundant
  79. internal coordinates) falls below 3.0D-4  and either the energy change from the last
  80. iteration is less than 1.0D-6 or the largest element of the predicted step vector is
  81. less 3.0D-4.
  82.  
  83.  
  84. .. index:: .GRADIENT
  85. .. _OPTIMIZE_.GRADIENT:
  86.  
  87. .GRADIENT
  88. ---------
  89.  
  90. Convergence threshold for the gradient. The default is 1.0D-5.
  91.  
  92.  
  93. .. index:: .ENERGY
  94. .. _OPTIMIZE_.ENERGY:
  95.  
  96. .ENERGY
  97. -------
  98.  
  99. Convergence threshold for the energy. The default is 1.0D-6.
  100.  
  101.  
  102. .. index:: .STEP THRESHOLD
  103. .. _OPTIMIZE_.STEP THRESHOLD:
  104.  
  105. .STEP THRESHOLD
  106. ---------------
  107.  
  108. Convergence threshold for the step. The default is 1.0D-5.
  109.  
  110.  
  111. .. index:: .PRINT
  112. .. _OPTIMIZE_.PRINT:
  113.  
  114. .PRINT
  115. ------
  116.  
  117. Set print level for this module. Read one more line containing print level. Default
  118. value is 0, any value higher than 12 gives debugging level output.
  119.  
  120.  
  121. .. index:: .MAX IT
  122. .. _OPTIMIZE_.MAX IT:
  123.  
  124. .MAX IT
  125. -------
  126.  
  127. Read the maximum number of geometry iterations. The default value is 25.
  128.  
  129.  
  130. .. index:: .TRUSTR
  131. .. _OPTIMIZE_.TRUSTR:
  132.  
  133. .TRUSTR
  134. -------
  135.  
  136. Set initial trust radius for calculation. This will also be the maximum step length for
  137. the first iteration. The trust radius is updated after each iteration depending on the
  138. ratio between predicted and actual energy change. The default trust radius is 0.5 a.u.
  139.  
  140.  
  141. .. index:: .TR FAC
  142. .. _OPTIMIZE_.TR FAC:
  143.  
  144. .TR FAC
  145. -------
  146.  
  147. ::
  148.  
  149.  READ(LUCMD,*) TRSTIN, TRSTDE
  150.  
  151. Read two factors that will be used for increasing and decreasing the trust radius
  152. respectively. Default values are 1.2 and 0.7.
  153.  
  154.  
  155. .. index:: .TR LIM
  156. .. _OPTIMIZE_.TR LIM:
  157.  
  158. .TR LIM
  159. -------
  160.  
  161. ::
  162.  
  163.  READ(LUCMD,*) RTENBD, RTENGD, RTRJMN, RTRJMX
  164.  
  165. Read four limits for the ratio between the actual and predicted energies. This ratio
  166. indicates how good the step is?that is, how accurately the quadratic model describes
  167. the true energy surface. If the ratio is below RTRJMN or above RTRJMX, the step is
  168. rejected. With a ratio between RTRJMN and RTENBD, the step is considered bad an
  169. the trust radius decreased to less than the step length. Ratios between RTENBD and
  170. RTENGD are considered satisfactory, the trust radius is set equal to the norm of the
  171. step. Finally ratios above RTENGD (but below RTRJMX) indicate a good step, and the
  172. trust radius is given a value larger than the step length. The amount the trust radius
  173. is increased or decreased can be adjusted with .TR FAC. The default values of RTENBD,
  174. RTENGD, RTRJMN and RTRJMX are 0.4, 0.8, -0.1 and 3.0 respectively.
  175.  
  176.  
  177. .. index:: .MAX RE
  178. .. _OPTIMIZE_.MAX RE:
  179.  
  180. .MAX RE
  181. -------
  182.  
  183. ::
  184.  
  185.  READ(LUCMD,*) MAXREJ
  186.  
  187. Read maximum number of rejected steps in each iterations, default is 3.
  188.  
  189.  
  190. .. index:: .NOTRUS
  191. .. _OPTIMIZE_.NOTRUS:
  192.  
  193. .NOTRUS
  194. -------
  195.  
  196. Turns off the trust radius, so that a full Newton step is taken in each iteration.
  197. This should be used with caution, as global convergence is no longer guaranteed. If
  198. long steps are desired, it is safer to adjust the initial trust radius and the limits for
  199. the actual/predicted energy ratio.
  200.  
  201.  
  202. .. index:: .CONDIT
  203. .. _OPTIMIZE_.CONDIT:
  204.  
  205. .CONDIT
  206. -------
  207.  
  208. ::
  209.  
  210.  READ (LUCMD,*) ICONDI
  211.  
  212. Set the number of convergence criteria that should be fulfilled before convergence
  213. occurs. There are three different convergence thresholds, one for the energy, one for
  214. the gradient norm and one for the step norm. The possible values for this variable
  215. is therefore between 1 and 3. Default is 2. The three convergence thresholds can be
  216. adjusted with the keywords :ref:`OPTIMIZE_.ENERGY`, :ref:`OPTIMIZE_.GRADIENT` and
  217. :ref:`OPTIMIZE_.STEP THRESHOLD`.
  218.  
  219.  
  220. .. index:: .NOBREA
  221. .. _OPTIMIZE_.NOBREA:
  222.  
  223. .NOBREA
  224. -------
  225.  
  226. Disables breaking of symmetry. The geometry will be optimized within the given
  227. symmetry, even if a non-zero molecular Hessian index is found. The default is to let
  228. the symmetry be broken until a minimum is found with a molecular Hessian index of
  229. zero. This option only has effect when second-order methods are used.
  230.  
  231.  
  232. .. index:: .SP BAS
  233. .. _OPTIMIZE_.SP BAS:
  234.  
  235. .SP BAS
  236. -------
  237.  
  238. ::
  239.  
  240.  READ(LUCMD,*) SPBSTX
  241.  
  242. Read a string containing the name of a basis set. When the geometry has converged,
  243. a single-point energy will be calculated using this basis set.
  244.  
  245.  
  246. .. index:: .PREOPT
  247. .. _OPTIMIZE_.PREOPT:
  248.  
  249. .PREOPT
  250. -------
  251.  
  252. ::
  253.  
  254.  READ (LUCMD,*) NUMPRE
  255.  DO I = 1, NUMPRE
  256.  READ (LUCMD,*) PREBTX(I)
  257.  END DO
  258.  
  259. First we read the number of basis sets that should be used for preoptimization, then
  260. we read those basis set names as strings. These sets will be used for optimization in
  261. the order they appear in the input. One should therefore place the smaller basis at
  262. the top. After the preoptimization, optimization is performed with the basis specified
  263. in the molecule input file.
  264.  
  265.  
  266. .. index:: .VISUAL
  267. .. _OPTIMIZE_.VISUAL:
  268.  
  269. .VISUAL
  270. -------
  271.  
  272. Specifies that the molecule should be visualized, writing a VRML file of the molecular
  273. geometry. No optimization will be performed when this keyword is given. See also
  274. related keywords .VR-BON, .VR-COR, .VR-EIG and .VR-VIB.
  275.  
  276.  
  277. .. index:: .VRML
  278. .. _OPTIMIZE_.VRML:
  279.  
  280. .VRML
  281. -----
  282.  
  283. Specifies that the molecule should be visualized. VRML files describing both the
  284. initial and final geometry will be written (as initial.wrl and final.wrl). The file
  285. final.wrl is updated in each iteration, so that it always reflects the latest geometry.
  286. See also related keywords .VR-BON, .VR-COR, .VR-EIG and .VR-VIB.
  287.  
  288.  
  289. .. index:: .SYMTHR
  290. .. _OPTIMIZE_.SYMTHR:
  291.  
  292. .SYMTHR
  293. -------
  294.  
  295. ::
  296.  
  297.  READ(LUCMD,*) THRSYM
  298.  
  299. Determines the gradient threshold (in a.u.) for breaking of the symmetry. That is,
  300. if the index of the molecular molecular Hessian is non-zero when the gradient norm
  301. drops below this value, the symmetry is broken to avoid unnecessary iterations within
  302. the wrong symmetry. This option only applies to second-order methods and when the
  303. keyword .NOBREA is not present. The default value of this threshold is 0.005.
  304.  
  305.  
  306. .. index:: .TRSTRG
  307. .. _OPTIMIZE_.TRSTRG:
  308.  
  309. .TRSTRG
  310. -------
  311.  
  312. Specifies that the level-shifted trust region method should be used to control
  313. the step. This is the default, so the keyword is actually redundant at the moment.
  314. Alternative step control methods are :ref:`OPTIMIZE_.RF` and :ref:`OPTIMIZE_.GDIIS`.
  315.  
  316.  
  317. .. index:: .VR-BON
  318. .. _OPTIMIZE_.VR-BON:
  319.  
  320. .VR-BON
  321. -------
  322.  
  323. Only has effect together with .VRML or .VISUAL. Specifies that the VRML files
  324. should include bonds between nearby atoms. The bonds are drawn as grey cylinders,
  325. making it easier to see the structure of the molecule. If .VR-BON is omitted, only the
  326. spheres representing the different atoms will be drawn.
  327.  
  328.  
  329. .. index:: .VR-EIG
  330. .. _OPTIMIZE_.VR-EIG:
  331.  
  332. .VR-EIG
  333. -------
  334.  
  335. Only has effect together with .VRML or .VISUAL. Specifies that the eigenvectors of
  336. the molecule (that is the eigenvectors of the molecular Hessian, which differs from the
  337. normal modes as they are not mass-scaled) should be visualized. These are written
  338. to the files eigv_###.wrl.
  339.  
  340.  
  341. .. index:: .INITHE
  342. .. _OPTIMIZE_.INITHE:
  343.  
  344. .INITHE
  345. -------
  346.  
  347. Specifies that the initial molecular Hessian should be calculated (analytical
  348. molecular Hessian), thus yielding a first step that is identical to that of second-order
  349. methods. This provides an excellent starting point for first-order methods, but should only
  350. be used when the molecular Hessian can be calculated within a reasonable amount of
  351. time. It has only effect for first-order methods and overrides the keywords .INITEV
  352. and .INIRED. It has no effect when .HESFIL has been specified.
  353.  
  354.  
  355. .. index:: .INITEV
  356. .. _OPTIMIZE_.INITEV:
  357.  
  358. .INITEV
  359. -------
  360.  
  361. ::
  362.  
  363.  READ(LUCMD,*) EVLINI
  364.  
  365. The default initial molecular Hessian for first-order minimizations
  366. is the identity matrix when Cartesian coordinates are used, and a diagonal
  367. matrix when redundant internal coordinates are used. If .INITEV is used, all the
  368. diagonal elements (and therefore the eigenvalues) are set equal to the value EVLINI. This
  369. option only has effect when first-order methods are used and .INITHE and .HESFIL
  370. are non-present.
  371.  
  372.  
  373. .. index:: .HESFIL
  374. .. _OPTIMIZE_.HESFIL:
  375.  
  376. .HESFIL
  377. -------
  378.  
  379. Specifies that the initial molecular Hessian should be read from the file DALTON.HES(?).
  380. This applies to first-order methods, and the Hessian in the file must have the correct
  381. dimensions. This option overrides other options for the initial Hessian.
  382. Each time a Hessian is calculated or updated, it?s written to this file (in Cartesian
  383. coordinates). If an optimization is interrupted, it can be restarted with the last geometry
  384. and the molecular Hessian in DALTON.HES, minimizing the loss of information.
  385. Another useful possibility is to transfer the molecular Hessian from a calculation on the
  386. same molecule with another (smaller) basis and/or a cheaper wave function. Finally,
  387. one can go in and edit the file directly to set up a specific force field.
  388.  
  389.  
  390. .. index:: .REJINI
  391. .. _OPTIMIZE_.REJINI:
  392.  
  393. .REJINI
  394. -------
  395.  
  396. Specifies that the molecular Hessian should be reinitialized after every rejected
  397. step, as a rejected step indicates that the molecular Hessian models the true potential
  398. surface poorly. Only applies to first-order methods.
  399.  
  400.  
  401. .. index:: .STEEPD
  402. .. _OPTIMIZE_.STEEPD:
  403.  
  404. .STEEPD
  405. -------
  406.  
  407. Specifies that the first-order steepest descent method should be used. No update
  408. is done on the molecular Hessian, so the optimization will be guided by the gradient
  409. alone. The ?pure? steepest descent method is obtained when the molecular Hessian
  410. is set equal to the identity matrix. Each step will then be the negative of the gradient
  411. vector, and the convergence towards the minimum will be extremely slow. However,
  412. this option can be combined with other initial molecular Hessians in Cartesian or
  413. redundant internal coordinates, giving a method where the main feature is the lack
  414. of molecular Hessian updates (static molecular Hessian).
  415.  
  416.  
  417. .. index:: .RANKON
  418. .. _OPTIMIZE_.RANKON:
  419.  
  420. .RANKON
  421. -------
  422.  
  423. Specifies that a first-order method with the rank one update formula should be
  424. used for optimization. This updating is also referred to as symmetric rank one (SR1)
  425. or Murtagh-Sargent (MS).
  426.  
  427.  
  428. .. index:: .PSB
  429. .. _OPTIMIZE_.PSB:
  430.  
  431. .PSB
  432. ----
  433.  
  434. Specifies that a first-order method with the Powell-Symmetric-Broyden (PSB) update
  435. formula should be used for optimization.
  436.  
  437.  
  438. .. index:: .DFP
  439. .. _OPTIMIZE_.DFP:
  440.  
  441. .DFP
  442. ----
  443.  
  444. Specifies that a first-order method with the Davidon-Fletcher-Powell (DFP) update
  445. formula should be used for optimization. May be used for both minimizations and
  446. transition state optimizations.
  447.  
  448.  
  449. .. index:: .BFGS
  450. .. _OPTIMIZE_.BFGS:
  451.  
  452. .BFGS
  453. -----
  454.  
  455. Specifies the use of a first-order method with the Broyden-Fletcher-Goldfarb-Shanno
  456. (BFGS) update formula for optimization. This is the preferred first-order method for
  457. minimizations, as this update is able to maintain a positive definite Hessian. Note that
  458. this also makes it unsuitable for transitions state optimization (where one negative
  459. eigenvalue is sought).
  460.  
  461.  
  462. .. index:: .NEWTON
  463. .. _OPTIMIZE_.NEWTON:
  464.  
  465. .NEWTON
  466. -------
  467.  
  468. Specifies that a second-order Newton method should be used for optimization
  469. that is, the analytical molecular Hessian will be calculated at every geometry. By
  470. default the level-shifted trust region method will be used, but it is possible to override
  471. this by using one of the two keywords :ref:`OPTIMIZE_.RF` or :ref:`OPTIMIZE_.GDIIS`.
  472. Not implemented in DIRAC.
  473.  
  474.  
  475. .. index:: .QUADSD
  476. .. _OPTIMIZE_.QUADSD:
  477.  
  478. .QUADSD
  479. -------
  480.  
  481. Use the 2nd order quadratic steepest descent method
  482. (missing in Dalton manual).
  483.  
  484.  
  485. .. index:: .SCHLEG
  486. .. _OPTIMIZE_.SCHLEG:
  487.  
  488. .SCHLEG
  489. -------
  490.  
  491. Specifies that a first-order method with Schlegel's updating scheme [dalton ref 152] should
  492. be used. This makes use of all previous displacements and gradients, not just the last,
  493. to update the molecular Hessian.
  494.  
  495.  
  496. .. index:: .HELLMA
  497. .. _OPTIMIZE_.HELLMA:
  498.  
  499. .HELLMA
  500. -------
  501.  
  502. Use gradients and Hessians calculated using the Hellmann-Feynman approximation.
  503. Currently not working properly.
  504.  
  505.  
  506. .. index:: .M-BFGS
  507. .. _OPTIMIZE_.M-BFGS:
  508.  
  509. .M-BFGS
  510. -------
  511.  
  512. A list of old geometries and gradients are kept. At each new point, displacements
  513. and gradient difference for the last few steps are calculated, and all of these are then
  514. used to sequentially update the molecular Hessian, the most weight being given to
  515. the last displacement and gradient difference. Each update is done using the BFGS
  516. formula, and it?s thus only suitable for minimizations. Only applies to first-order
  517. methods.
  518.  
  519.  
  520. .. index:: .CARTES
  521. .. _OPTIMIZE_.CARTES:
  522.  
  523. .CARTES
  524. -------
  525.  
  526. Indicates that Cartesian coordinates should be used in the optimization. This is
  527. the default for second-order methods.
  528.  
  529.  
  530. .. index:: .REDINT
  531. .. _OPTIMIZE_.REDINT:
  532.  
  533. .REDINT
  534. -------
  535.  
  536. Specifies that redundant internal coordinates should be used in the optimization.
  537. This is the default for first-order methods.
  538.  
  539.  
  540. .. index:: .INIRED
  541. .. _OPTIMIZE_.INIRED:
  542.  
  543. .INIRED
  544. -------
  545.  
  546. Use a simple model Hessian [dalton ref 18] diagonal in redundant internal coordinates as the
  547. initial Hessian. All diagonal elements are determined based on an extremely simplified
  548. molecular mechanics model, yet this model provides Hessians that are good starting
  549. points for most systems, thus avoiding any calculation of the exact Hessian. This is
  550. the default for first-order methods.
  551.  
  552.  
  553. .. index:: .1STORD
  554. .. _OPTIMIZE_.1STORD:
  555.  
  556. .1STORD
  557. -------
  558.  
  559. Use default first-order method. This means that the BFGS update will be used,
  560. and that the optimization is carried out in redundant internal coordinates. Same
  561. effect as the combination of the two keywords :ref:`OPTIMIZE_.BFGS` and :ref:`OPTIMIZE_.REDINT`.
  562. Since the BFGS method ensures a positive definite Hessian,
  563. the :ref:`OPTIMIZE_.BOFILL` optimization method is used
  564. by default in case of searches for transition states.
  565.  
  566.  
  567. .. index:: .2NDORD
  568. .. _OPTIMIZE_.2NDORD:
  569.  
  570. .2NDORD
  571. -------
  572.  
  573. Use default second-order method. Molecular Hessians will be calculated at every
  574. geometry. The level-shifted Newton method and Cartesian coordinates are used.
  575. Identical to specifying the keywords :ref:`OPTIMIZE_.NEWTON` and :ref:`OPTIMIZE_.CARTES`.
  576. Not implemented in DIRAC.
  577.  
  578.  
  579. .. index:: .GRDINI
  580. .. _OPTIMIZE_.GRDINI:
  581.  
  582. .GRDINI
  583. -------
  584.  
  585. Specifies that the molecular Hessian should be reinitialized every time the norm of
  586. the gradient is larger than norm of the gradient two iterations earlier. This keyword
  587. should only be used when it?s difficult to obtain a good approximation to the molecular
  588. Hessian during optimization. Only applies to first-order methods.
  589.  
  590. .. index:: .DISPLA
  591. .. _OPTIMIZE_.DISPLA:
  592.  
  593. .DISPLA
  594. -------
  595.  
  596. ::
  597.  
  598.  READ (LUCMD,*) DISPLA
  599.  
  600. Read one more line containing the norm of the displacement vector to be used during
  601. numerical evaluation of the molecular gradient, as is needed when doing geometry
  602. optimizations with CI or MP2 wave functions. Default is 0.001 a.u.
  603.  
  604.  
  605. .. index:: .CONSTR
  606. .. _OPTIMIZE_.CONSTR:
  607.  
  608. .CONSTR
  609. -------
  610.  
  611. ::
  612.  
  613.  READ (LUCMD, *) NCON
  614.  DO I = 1, NCON
  615.  READ(LUCMD,*) ICON
  616.  ICNSTR(ICON) = 1
  617.  END DO
  618.  
  619. Request a constrained geometry optimization. Only works when using redundant
  620. internal coordinates. The number of primitive coordinates that should be frozen has
  621. to be specified (NCON), then a list follows with the individual coordinate numbers.
  622. The coordinate numbers can be found by first running Dalton(DIRAC?) with the .FINDRE
  623. keyword. Any number of bonds, angles and dihedral angles may be frozen. NOTE:
  624. Symmetry takes precedence over constraints, if you e.g. want to freeze just one of
  625. several symmetric bonds, symmetry must be lowered or switched off.
  626.  
  627.  
  628. .. index:: .MODHES
  629. .. _OPTIMIZE_.MODHES:
  630.  
  631. .MODHES
  632. -------
  633.  
  634. Determine a new model molecular Hessian (see .INIMOD) at every geometry without
  635. doing any updating. The model is thus used in much the same manner as an
  636. exact molecular Hessian, though it is obviously only a relatively crude approximation
  637. to the analytical molecular Hessian.
  638.  
  639.  
  640. .. index:: .REMOVE
  641. .. _OPTIMIZE_.REMOVE:
  642.  
  643. .REMOVE
  644. -------
  645.  
  646. ::
  647.  
  648.  READ (LUCMD, *) NREM
  649.  DO I = 1, NREM
  650.  READ(LUCMD,*) IREM
  651.  ICNSTR(IREM) = 2
  652.  END DO
  653.  
  654. Only has effect when using redundant internal coordinates. Specifies internal
  655. coordinates that should be removed. The input is identical to the one for .CONSTRAINT,
  656. that is one has to specify the number of coordinates that should be removed, then
  657. the number of each of those internal coordinates. The coordinate numbers can first
  658. be determined by running with .FINDRE set.
  659. Removing certain coordinates can sometimes be useful in speeding up constrained
  660. geometry optimization, as certain coordinates sometimes "struggle" against the
  661. constraints. See also .NODIHE.
  662.  
  663.  
  664. .. index:: .INIMOD
  665. .. _OPTIMIZE_.INIMOD:
  666.  
  667. .INIMOD
  668. -------
  669.  
  670. Use a simple model Hessian [dalton ref 18] diagonal in redundant internal coordinates as the
  671. initial Hessian. All diagonal elements are determined based on an extremely simplified
  672. molecular mechanics model, yet this model provides Hessians that are good starting
  673. points for most systems, thus avoiding any calculation of the exact Hessian. This is
  674. the default for first-order methods.
  675.  
  676.  
  677. .. index:: .FINDRE
  678. .. _OPTIMIZE_.FINDRE:
  679.  
  680. .FINDRE
  681. -------
  682.  
  683. Determines the redundant internal coordinate system then quits without doing an
  684. actual calculation. Useful for setting up constrained geometry optimizations, where
  685. the numbers of individual primitive internal coordinates are needed.
  686.  
  687.  
  688. .. index:: .CMBMOD
  689. .. _OPTIMIZE_.CMBMOD:
  690.  
  691. .CMBMOD
  692. -------
  693.  
  694. Uses a combination of the BFGS update and the model molecular Hessian
  695. (diagonal in redundant internal coordinates). The two have equal weight in the first
  696. iteration of the geometry optimization, then for each subsequent iteration the weight
  697. of the model Hessian is halved. Only suitable for minimizations.
  698.  
  699.  
  700. .. index:: .RF
  701. .. _OPTIMIZE_.RF:
  702.  
  703. .RF
  704. ---
  705.  
  706. Use the rational function method [dalton ref.12] instead of level-shifted Newton which is the
  707. default. The RF method is often slightly faster than the level-shifted Newton, but
  708. also slightly less robust.
  709. For saddle point optimizations there's a special partitioned rational function method
  710. (used automatically when both .RF and .SADDLE are set). However, this method is
  711. both slower and less stable than the default trust-region level-shifted image method
  712. (which is the default).
  713.  
  714.  
  715. .. index:: .GDIIS
  716. .. _OPTIMIZE_.GDIIS:
  717.  
  718. .GDIIS
  719. ------
  720.  
  721. Use the Geometrical DIIS[dalton ref 151] algorithm to control the step. Works in much the
  722. same way as DIIS for wave functions. However, the rational function and level-shifted
  723. Newton methods are generally more robust and more efficient. Can only be used for
  724. minimizations.
  725.  
  726.  
  727. .. index:: .DELINT
  728. .. _OPTIMIZE_.DELINT:
  729.  
  730. .DELINT
  731. -------
  732.  
  733. Use delocalized internal coordinates. These are built up as non-redundant linear
  734. combinations of the redundant internal coordinates. Performance is more or less the
  735. same as for the redundant internals, but the transformation of displacements (step)
  736. is slightly less stable.
  737.  
  738. .. index:: .NODIHE
  739. .. _OPTIMIZE_.NODIHE:
  740.  
  741. .NODIHE
  742. -------
  743.  
  744. No dihedral angles will be used as coordinates (just bonds and angles).
  745.  
  746.  
  747. .. index:: .VR-COR
  748. .. _OPTIMIZE_.VR-COR:
  749.  
  750. .VR-COR
  751. -------
  752.  
  753. Draws x-, y- and z-axis in the VRML scenes with geometries. Somewhat useful if
  754. one is struggling to build a reasonable geometry by adjusting coordinates manually.
  755.  
  756.  
  757. .. index:: .VR-VIB
  758. .. _OPTIMIZE_.VR-VIB:
  759.  
  760. .VR-VIB
  761. -------
  762.  
  763. Similar to .VR-EIG, but more useful as it draws the actual normal mode vectors
  764. (the mass-weighted eigenvectors). These are written to the files norm_###.wrl.
  765. Keyword only has effect when a vibrational analysis has been requested.
  766.  
  767.  
  768. .. index:: .VR-SYM
  769. .. _OPTIMIZE_.VR-SYM:
  770.  
  771. .VR-SYM
  772. -------
  773.  
  774. Draws in all symmetry elements of the molecule as vectors (rotational axes) and
  775. semi-transparent planes (mirror planes).
  776.  
  777.  
  778. .. index:: .M-PSB
  779. .. _OPTIMIZE_.M-PSB:
  780.  
  781. .M-PSB
  782. ------
  783.  
  784. This identical to .M-BFGS, except the PSB formula is used for the updating. Only
  785. applies to first-order methods, but it can be used for both minimizations and saddle
  786. point optimizations.
  787.  
  788.  
  789. .. index:: .LINE S
  790. .. _OPTIMIZE_.LINE S:
  791.  
  792. .LINE S
  793. -------
  794.  
  795. Turns on line searching, using a quartic polynomial. By default this is turned off,
  796. as there seems to be no gain in efficiency. Can only be used for minimizations.
  797.  
  798.  
  799. .. index:: .SADDLE
  800. .. _OPTIMIZE_.SADDLE:
  801.  
  802. .SADDLE
  803. -------
  804.  
  805. Indicates that a saddle point optimization should be performed rather than a
  806. minimization. The default method is to calculate the molecular Hessian analytically
  807. at the initial geometry, then update it using Bofill's update. The optimization is
  808. performed in redundant internal coordinates and using the trust-region level-shifted
  809. image method to control the step. That is by default all the keywords .INITHE,
  810. .FILL and .REDINT are already set, but this can of course be overridden by specifying
  811. other keywords. If locating the desired transition state is difficult, and provided
  812. analytical molecular Hessians are available, it may sometimes be necessary to use the
  813. .NEWTON keyword so that molecular Hessians are calculated at every geometry.
  814.  
  815.  
  816. .. index:: .MODE
  817. .. _OPTIMIZE_.MODE:
  818.  
  819. .MODE
  820. -----
  821.  
  822. ::
  823.  
  824.  READ(LUCMD,*) NSPMOD
  825.  
  826. Only has effect when doing saddle point optimizations. Determines which molecular
  827. Hessian eigenmode should be maximized (inverted in the image method). By default
  828. this is the mode corresponding to the lowest eigenvalue, i.e. mode 1. If an optimization
  829. does not end up at the correct transition state, it may be worthwhile following other
  830. modes (only the lower ones are usually interesting).
  831.  
  832.  
  833. .. index:: .BOFILL
  834. .. _OPTIMIZE_.BOFILL:
  835.  
  836. .BOFILL
  837. -------
  838.  
  839. Bofill's update [dalton ref 20] is the default updating scheme for transition state optimizations.
  840. It's a linear combination of the symmetric rank one and the PSB updating
  841. schemes, automatically giving more weight to PSB whenever the rank one potentially
  842. is numerically unstable.
  843.  
  844.  
  845. .. index:: .LINDH
  846. .. _OPTIMIZE_.LINDH:
  847.  
  848. .LINDH
  849. ------
  850.  
  851. Use original Roland Lindh r_ref with .MODHES
  852. (missing in Dalton manual).
  853.  
  854.  
  855. .. index:: .GRD IN
  856. .. _OPTIMIZE_.GRD IN:
  857.  
  858. .GRD IN
  859. -------
  860.  
  861. Specifies that the molecular Hessian should be reinitialized every time the norm of
  862. the gradient is larger than norm of the gradient two iterations earlier. This keyword
  863. should only be used when it?s difficult to obtain a good approximation to the molecular
  864. Hessian during optimization. Only applies to first-order methods.
  865.  
  866.  
  867. .. index:: .GRD SCREEN
  868. .. _OPTIMIZE_.GRD SCREEN:
  869.  
  870. .GRD SCREEN
  871. -----------
  872.  
  873. ::
  874.  
  875.  READ (LUCMD,*) SCRGRD
  876.  
  877. Read the screening threshold for gradient calculations
  878. (missing in Dalton manual).
  879.  
  880.  
  881. .. index:: .NOAUX
  882. .. _OPTIMIZE_.NOAUX:
  883.  
  884. .NOAUX
  885. ------
  886.  
  887. Only has effect when using redundant internal coordinates. The default for minimizations
  888. is to add auxiliary bonds between atoms that are up to two and half times
  889. further apart then regular (chemical) bonds. This increases the redundancy of the
  890. coordinate system, but usually speeds up the geometry optimization slightly. .NOAUX
  891. turns this off. For saddle point optimizations and constrained geometry optimization
  892. this is off by default (cannot be switched on).
  893.  
  894.  
  895. .. index:: .BFGSR1
  896. .. _OPTIMIZE_.BFGSR1:
  897.  
  898. .BFGSR1
  899. -------
  900.  
  901. Use a linear combination of the BFGS and the symmetric rank one updating
  902. schemes in the same fashion as Bofill's update. Only suitable for minimizations.
  903.  
  904.  
  905. .. index:: .IPRGRD
  906. .. _OPTIMIZE_.IPRGRD:
  907.  
  908. .IPRGRD
  909. -------
  910.  
  911. Print level for DIRAC molecular gradient evaluation (missing in Dalton manual).

Raw Paste


Login or Register to edit or fork this paste. It's free.