diff --git a/.github/workflows/github_actions.yml b/.github/workflows/github_actions.yml index a306e7f4d8..873e4992f5 100644 --- a/.github/workflows/github_actions.yml +++ b/.github/workflows/github_actions.yml @@ -368,14 +368,7 @@ jobs: with: path: | ~/cache - ~/apps key: ${{ matrix.os }}-${{ matrix.mpi_impl}}-${{ matrix.fc}}-xcode${{ matrix.xcode_version}}-simint${{ matrix.use_simint}}-blas${{ matrix.blas}}-blas_size${{ matrix.blas_size}}-libxc${{matrix.use_libxc}}-tblite${{matrix.use_tblite}}-simd${{ env.simd }}-nwchemcache-v003 - - name: fetch apps cache - if: steps.setup-cache.outputs.cache-hit == 'true' - run: | - if [[ -f ~/apps/oneapi/setvars.sh ]]; then \ - echo "apps oneapi cache fetched" ; \ - export GOT_APPSCACHE="Y" ; fi - name: build environment run: | pwd diff --git a/QA/doqmtests.mpi b/QA/doqmtests.mpi index 2947537f7d..2b72b99bae 100755 --- a/QA/doqmtests.mpi +++ b/QA/doqmtests.mpi @@ -613,6 +613,10 @@ let "myexit+=$?" let "myexit+=$?" ./runtests.mpi.unix procs $np dft_r2scan0 let "myexit+=$?" +./runtests.mpi.unix procs $np scf_dftguess +let "myexit+=$?" +./runtests.mpi.unix procs $np back_to_atguess +let "myexit+=$?" # ./runtests.mpi.unix procs $np ccsdt_ompt_w3pvdz let "myexit+=$?" diff --git a/QA/nwparse.pl b/QA/nwparse.pl index 73cb0c66e0..3b6929a329 100644 --- a/QA/nwparse.pl +++ b/QA/nwparse.pl @@ -18,7 +18,7 @@ # Richland, WA 99352-0999 # $quiet = 0; -$debug = 1; +$debug = 0; $num_argv = @ARGV; if ($num_argv == 0) { @@ -402,7 +402,7 @@ } } - if (/Excitation energy/ || /Rotatory /) { + if (/Excitation energy/ || /Rotatory / || /IBO loc: largest element in /) { if ($debug) {print "\ndebug: $_";} @line_tokens = split(' '); $num_line_tokens = @line_tokens; diff --git a/QA/tests/back_to_atguess/back_to_atguess.nw b/QA/tests/back_to_atguess/back_to_atguess.nw new file mode 100644 index 0000000000..03fc0e6225 --- /dev/null +++ b/QA/tests/back_to_atguess/back_to_atguess.nw @@ -0,0 +1,41 @@ +# +# $Id$ +# + +title "Water geometry optimization in cc-pvdz basis set" + +start h2o + +geometry autosym + O 0.0 1.0 -0.02 + H -0.74 1.0 -0.76 + H 0.74 1.0 -0.76 + O 0.0 0.0 -0.02 + H -0.74 0.0 -0.76 + H 0.74 0.0 -0.76 +end + +basis + H library cc-pvdz + O library cc-pvdz +end + +driver + clear +end + +scf; print low; end + +#task scf optimize +dft +vectors input hcore +maxiter 1 +end +task dft ignore + +set back_to_atguess 2 +dft +maxiter 99 +end +task dft + diff --git a/QA/tests/back_to_atguess/back_to_atguess.out b/QA/tests/back_to_atguess/back_to_atguess.out new file mode 100644 index 0000000000..e24202da34 --- /dev/null +++ b/QA/tests/back_to_atguess/back_to_atguess.out @@ -0,0 +1,1822 @@ +No protocol specified + argument 1 = /home/edo/park/nwchem-scfhacks/QA/tests/back_to_atguess/back_to_atguess.nw + + + + + Northwest Computational Chemistry Package (NWChem) 7.2.0 + -------------------------------------------------------- + + + Environmental Molecular Sciences Laboratory + Pacific Northwest National Laboratory + Richland, WA 99352 + + Copyright (c) 1994-2022 + Pacific Northwest National Laboratory + Battelle Memorial Institute + + NWChem is an open-source computational chemistry package + distributed under the terms of the + Educational Community License (ECL) 2.0 + A copy of the license is included with this distribution + in the LICENSE.TXT file + + ACKNOWLEDGMENT + -------------- + + This software and its documentation were developed at the + EMSL at Pacific Northwest National Laboratory, a multiprogram + national laboratory, operated for the U.S. Department of Energy + by Battelle under Contract Number DE-AC05-76RL01830. Support + for this work was provided by the Department of Energy Office + of Biological and Environmental Research, Office of Basic + Energy Sciences, and the Office of Advanced Scientific Computing. + + + Job information + --------------- + + hostname = lagrange + program = /home/edo/park/nwchem-scfhacks/bin/LINUX64/nwchem + date = Tue Feb 28 22:13:31 2023 + + compiled = Tue_Feb_28_19:08:02_2023 + source = /home/edo/park/nwchem-scfhacks + nwchem branch = 7.2.0 + nwchem revision = v7.2.0-beta1-333-gdc47eb411b + ga revision = 5.8.0 + use scalapack = T + input = /home/edo/park/nwchem-scfhacks/QA/tests/back_to_atguess/back_to_atguess.nw + prefix = h2o. + data base = ./h2o.db + status = startup + nproc = 2 + time left = -1s + + + + Memory information + ------------------ + + heap = 26214394 doubles = 200.0 Mbytes + stack = 26214399 doubles = 200.0 Mbytes + global = 52428800 doubles = 400.0 Mbytes (distinct from heap & stack) + total = 104857593 doubles = 800.0 Mbytes + verify = yes + hardfail = no + + + Directory information + --------------------- + + 0 permanent = . + 0 scratch = . + + + + + NWChem Input Module + ------------------- + + + Water geometry optimization in cc-pvdz basis set + ------------------------------------------------ + + Scaling coordinates for geometry "geometry" by 1.889725989 + (inverse scale = 0.529177249) + + C2V symmetry detected + + ------ + auto-z + ------ + no constraints, skipping 0.0000000000000000 + no constraints, skipping 0.0000000000000000 + + + Geometry "geometry" -> "" + ------------------------- + + Output coordinates in angstroms (scale by 1.889725989 to convert to a.u.) + + No. Tag Charge X Y Z + ---- ---------------- ---------- -------------- -------------- -------------- + 1 O 8.0000 0.00000000 0.50000000 0.14800000 + 2 H 1.0000 -0.74000000 0.50000000 -0.59200000 + 3 H 1.0000 0.74000000 0.50000000 -0.59200000 + 4 O 8.0000 0.00000000 -0.50000000 0.14800000 + 5 H 1.0000 -0.74000000 -0.50000000 -0.59200000 + 6 H 1.0000 0.74000000 -0.50000000 -0.59200000 + + Atomic Mass + ----------- + + O 15.994910 + H 1.007825 + + + Effective nuclear repulsion energy (a.u.) 64.1130171102 + + Nuclear Dipole moment (a.u.) + ---------------------------- + X Y Z + ---------------- ---------------- ---------------- + 0.0000000000 0.0000000000 0.0000000000 + + Symmetry information + -------------------- + + Group name C2v + Group number 16 + Group order 4 + No. of unique centers 2 + + Symmetry unique atoms + + 1 2 + + + + Z-matrix (autoz) + -------- + + Units are Angstrom for bonds and degrees for angles + + Type Name I J K L M Value + ----------- -------- ----- ----- ----- ----- ----- ---------- + 1 Stretch 1 2 1.04652 + 2 Stretch 1 3 1.04652 + 3 Stretch 1 4 1.00000 + 4 Stretch 4 5 1.04652 + 5 Stretch 4 6 1.04652 + 6 Bend 1 4 5 90.00000 + 7 Bend 1 4 6 90.00000 + 8 Bend 2 1 3 90.00000 + 9 Bend 2 1 4 90.00000 + 10 Bend 3 1 4 90.00000 + 11 Bend 5 4 6 90.00000 + 12 Torsion 2 1 4 5 0.00000 + 13 Torsion 2 1 4 6 90.00000 + 14 Torsion 3 1 4 5 -90.00000 + 15 Torsion 3 1 4 6 0.00000 + + + XYZ format geometry + ------------------- + 6 + geometry + O 0.00000000 0.50000000 0.14800000 + H -0.74000000 0.50000000 -0.59200000 + H 0.74000000 0.50000000 -0.59200000 + O 0.00000000 -0.50000000 0.14800000 + H -0.74000000 -0.50000000 -0.59200000 + H 0.74000000 -0.50000000 -0.59200000 + + ============================================================================== + internuclear distances + ------------------------------------------------------------------------------ + center one | center two | atomic units | angstroms + ------------------------------------------------------------------------------ + 2 H | 1 O | 1.97763 | 1.04652 + 3 H | 1 O | 1.97763 | 1.04652 + 4 O | 1 O | 1.88973 | 1.00000 + 5 H | 4 O | 1.97763 | 1.04652 + 6 H | 4 O | 1.97763 | 1.04652 + ------------------------------------------------------------------------------ + number of included internuclear distances: 5 + ============================================================================== + + + + ============================================================================== + internuclear angles + ------------------------------------------------------------------------------ + center 1 | center 2 | center 3 | degrees + ------------------------------------------------------------------------------ + 2 H | 1 O | 3 H | 90.00 + 2 H | 1 O | 4 O | 90.00 + 3 H | 1 O | 4 O | 90.00 + 1 O | 4 O | 5 H | 90.00 + 1 O | 4 O | 6 H | 90.00 + 5 H | 4 O | 6 H | 90.00 + ------------------------------------------------------------------------------ + number of included internuclear angles: 6 + ============================================================================== + + + + warning:::::::::::::: from_nwchemrc + NWCHEM_BASIS_LIBRARY set to: + but file does not exist ! + using compiled in library + Basis "ao basis" -> "" (cartesian) + ----- + H (Hydrogen) + ------------ + Exponent Coefficients + -------------- --------------------------------------------------------- + 1 S 1.30100000E+01 0.019685 + 1 S 1.96200000E+00 0.137977 + 1 S 4.44600000E-01 0.478148 + + 2 S 1.22000000E-01 1.000000 + + 3 P 7.27000000E-01 1.000000 + + O (Oxygen) + ---------- + Exponent Coefficients + -------------- --------------------------------------------------------- + 1 S 1.17200000E+04 0.000710 + 1 S 1.75900000E+03 0.005470 + 1 S 4.00800000E+02 0.027837 + 1 S 1.13700000E+02 0.104800 + 1 S 3.70300000E+01 0.283062 + 1 S 1.32700000E+01 0.448719 + 1 S 5.02500000E+00 0.270952 + 1 S 1.01300000E+00 0.015458 + + 2 S 1.17200000E+04 -0.000160 + 2 S 1.75900000E+03 -0.001263 + 2 S 4.00800000E+02 -0.006267 + 2 S 1.13700000E+02 -0.025716 + 2 S 3.70300000E+01 -0.070924 + 2 S 1.32700000E+01 -0.165411 + 2 S 5.02500000E+00 -0.116955 + 2 S 1.01300000E+00 0.557368 + + 3 S 3.02300000E-01 1.000000 + + 4 P 1.77000000E+01 0.043018 + 4 P 3.85400000E+00 0.228913 + 4 P 1.04600000E+00 0.508728 + + 5 P 2.75300000E-01 1.000000 + + 6 D 1.18500000E+00 1.000000 + + + + Summary of "ao basis" -> "" (cartesian) + ------------------------------------------------------------------------------ + Tag Description Shells Functions and Types + ---------------- ------------------------------ ------ --------------------- + H cc-pvdz 3 5 2s1p + O cc-pvdz 6 15 3s2p1d + + + + Deleted DRIVER restart files + + + NWChem DFT Module + ----------------- + + + Water geometry optimization in cc-pvdz basis set + + + + + Summary of "ao basis" -> "ao basis" (cartesian) + ------------------------------------------------------------------------------ + Tag Description Shells Functions and Types + ---------------- ------------------------------ ------ --------------------- + H cc-pvdz 3 5 2s1p + O cc-pvdz 6 15 3s2p1d + + + Symmetry analysis of basis + -------------------------- + + a1 16 + a2 9 + b1 9 + b2 16 + + Caching 1-el integrals + + General Information + ------------------- + SCF calculation type: DFT + Wavefunction type: closed shell. + No. of atoms : 6 + No. of electrons : 20 + Alpha electrons : 10 + Beta electrons : 10 + Charge : 0 + Spin multiplicity: 1 + Use of symmetry is: on ; symmetry adaption is: on + Maximum number of iterations: 1 + AO basis - number of functions: 50 + number of shells: 24 + Convergence on energy requested: 1.00D-06 + Convergence on density requested: 1.00D-05 + Convergence on gradient requested: 5.00D-04 + + XC Information + -------------- + Slater Exchange Functional 1.000 local + VWN V Correlation Functional 1.000 local + + Grid Information + ---------------- + Grid used for XC integration: medium + Radial quadrature: Mura-Knowles + Angular quadrature: Lebedev. + Tag B.-S. Rad. Rad. Pts. Rad. Cut. Ang. Pts. + --- ---------- --------- --------- --------- + O 0.60 49 6.0 434 + H 0.35 45 7.0 434 + Grid pruning is: on + Number of quadrature shells: 94 + Spatial weights used: Erf1 + + Convergence Information + ----------------------- + Convergence aids based upon iterative change in + total energy or number of iterations. + Levelshifting, if invoked, occurs when the + HOMO/LUMO gap drops below (HL_TOL): 1.00D-02 + DIIS, if invoked, will attempt to extrapolate + using up to (NFOCK): 10 stored Fock matrices. + + Damping( 0%) Levelshifting(0.5) DIIS + --------------- ------------------- --------------- + dE on: start ASAP start + dE off: 2 iters 1 iters 1 iters + + + Screening Tolerance Information + ------------------------------- + Density screening/tol_rho: 1.00D-10 + AO Gaussian exp screening on grid/accAOfunc: 14 + CD Gaussian exp screening on grid/accCDfunc: 20 + XC Gaussian exp screening on grid/accXCfunc: 20 + Schwarz screening/accCoul: 1.00D-08 + + + Non-variational initial energy + ------------------------------ + + Total energy = 64.113017 + 1-e energy = 0.000000 + 2-e energy = 0.000000 + HOMO = -12.801444 + LUMO = -9.691671 + + + Symmetry analysis of molecular orbitals - initial + ------------------------------------------------- + + Numbering of irreducible representations: + + 1 a1 2 a2 3 b1 4 b2 + + Orbital symmetries: + + 1 b2 2 a1 3 a1 4 b2 5 a1 + 6 b1 7 a2 8 b2 9 b2 10 a1 + 11 a1 12 b1 13 b1 14 a1 15 a1 + 16 a2 17 b2 18 b2 19 a1 20 b1 + + WARNING: movecs_in_org=hcore not equal to movecs_in=./h2o.movecs + Time after variat. SCF: 0.4 + Time prior to 1st pass: 0.4 + + Integral file = ./h2o.aoints.0 + Record size in doubles = 65536 No. of integs per rec = 43688 + Max. records in memory = 7 Max. records in file = 112791 + No. of bits per label = 8 No. of bits per value = 64 + + + #quartets = 1.456D+04 #integrals = 2.235D+05 #direct = 0.0% #cached =100.0% + + +File balance: exchanges= 0 moved= 0 time= 0.0 + + + Grid_pts file = ./h2o.gridpts.0 + Record size in doubles = 12289 No. of grid_pts per rec = 3070 + Max. records in memory = 9 Max. recs in file = 601506 + + + Memory utilization after 1st SCF pass: + Heap Space remaining (MW): 25.64 25641618 + Stack Space remaining (MW): 26.21 26213964 + + convergence iter energy DeltaE RMS-Dens Diis-err time + ---------------- ----- ----------------- --------- --------- --------- ------ + d= 0,ls=0.0,diis 1 -129.0729671869 -1.93D+02 1.16D+00 1.84D+02 0.6 + + Calculation failed to converge + ------------------------------ + + + + Total DFT energy = -129.072967186902 + One electron energy = -369.983932634353 + Coulomb energy = 201.389430149579 + Exchange-Corr. energy = -24.591481812333 + Nuclear repulsion energy = 64.113017110205 + + Numeric. integr. density = 19.999988241688 + + Total iterative time = 0.2s + + + + Occupations of the irreducible representations + ---------------------------------------------- + + irrep alpha beta + -------- -------- -------- + a1 3.0 3.0 + a2 2.0 2.0 + b1 2.0 2.0 + b2 3.0 3.0 + + + DFT Final Molecular Orbital Analysis + ------------------------------------ + + Vector 1 Occ=2.000000D+00 E=-1.329816D+01 Symmetry=a1 + MO Center= 1.3D-17, 3.0D-11, 1.5D-01, r^2= 2.7D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 1 0.716215 1 O s 26 0.716215 4 O s + 2 0.043512 1 O s 27 0.043512 4 O s + + Vector 2 Occ=2.000000D+00 E=-1.329761D+01 Symmetry=b2 + MO Center= 2.7D-17, -3.0D-11, 1.5D-01, r^2= 2.7D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 1 0.713752 1 O s 26 -0.713752 4 O s + 3 0.057654 1 O s 28 -0.057654 4 O s + 2 0.040237 1 O s 27 -0.040237 4 O s + 13 -0.028728 1 O dyy 38 0.028728 4 O dyy + + Vector 3 Occ=2.000000D+00 E=-3.012252D-01 Symmetry=a1 + MO Center= 1.7D-17, 2.3D-17, -7.9D-01, r^2= 1.6D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 16 -0.240635 2 H s 21 -0.240635 3 H s + 41 -0.240635 5 H s 46 -0.240635 6 H s + 3 0.228664 1 O s 28 0.228664 4 O s + 17 -0.199862 2 H s 22 -0.199862 3 H s + 42 -0.199862 5 H s 47 -0.199862 6 H s + + Vector 4 Occ=2.000000D+00 E=-1.601251D-01 Symmetry=b1 + MO Center= -6.1D-16, -2.3D-15, -7.3D-01, r^2= 2.2D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 0.388328 2 H s 22 -0.388328 3 H s + 42 0.388328 5 H s 47 -0.388328 6 H s + 16 0.254457 2 H s 21 -0.254457 3 H s + 41 0.254457 5 H s 46 -0.254457 6 H s + 7 0.111591 1 O px 32 0.111591 4 O px + + Vector 5 Occ=2.000000D+00 E=-2.201660D-03 Symmetry=b2 + MO Center= 2.7D-17, 3.8D-16, -7.8D-01, r^2= 2.9D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 0.849793 2 H s 22 0.849793 3 H s + 42 -0.849793 5 H s 47 -0.849793 6 H s + 16 0.182572 2 H s 21 0.182572 3 H s + 41 -0.182572 5 H s 46 -0.182572 6 H s + 8 -0.171649 1 O py 33 -0.171649 4 O py + + Vector 6 Occ=2.000000D+00 E= 1.434336D-01 Symmetry=a2 + MO Center= -2.7D-16, -4.9D-17, -7.1D-01, r^2= 3.9D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 1.694077 2 H s 22 -1.694077 3 H s + 42 -1.694077 5 H s 47 1.694077 6 H s + 7 0.235427 1 O px 32 -0.235427 4 O px + 16 0.201347 2 H s 21 -0.201347 3 H s + 41 -0.201347 5 H s 46 0.201347 6 H s + + Vector 7 Occ=2.000000D+00 E= 3.289230D-01 Symmetry=a1 + MO Center= 5.6D-15, -5.3D-15, -8.4D-01, r^2= 3.1D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 0.799955 1 O s 28 0.799955 4 O s + 17 -0.543334 2 H s 22 -0.543334 3 H s + 42 -0.543334 5 H s 47 -0.543334 6 H s + 16 0.373539 2 H s 21 0.373539 3 H s + 41 0.373539 5 H s 46 0.373539 6 H s + + Vector 8 Occ=2.000000D+00 E= 3.851558D-01 Symmetry=b1 + MO Center= -4.7D-15, 5.3D-15, -7.5D-01, r^2= 3.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 0.870314 2 H s 22 -0.870314 3 H s + 42 0.870314 5 H s 47 -0.870314 6 H s + 16 -0.457973 2 H s 21 0.457973 3 H s + 41 -0.457973 5 H s 46 0.457973 6 H s + 7 0.315072 1 O px 32 0.315072 4 O px + + Vector 9 Occ=2.000000D+00 E= 5.034197D-01 Symmetry=b2 + MO Center= -1.2D-14, 4.9D-15, -7.2D-01, r^2= 3.2D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 1.219414 2 H s 22 1.219414 3 H s + 42 -1.219414 5 H s 47 -1.219414 6 H s + 3 -0.473486 1 O s 28 0.473486 4 O s + 8 -0.444330 1 O py 33 -0.444330 4 O py + 9 0.410738 1 O pz 34 -0.410738 4 O pz + + Vector 10 Occ=2.000000D+00 E= 6.289321D-01 Symmetry=a2 + MO Center= 1.3D-14, -1.8D-15, -6.7D-01, r^2= 3.2D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 1.837231 2 H s 22 -1.837231 3 H s + 42 -1.837231 5 H s 47 1.837231 6 H s + 7 0.542294 1 O px 32 -0.542294 4 O px + 16 -0.529704 2 H s 21 0.529704 3 H s + 41 0.529704 5 H s 46 -0.529704 6 H s + + Vector 11 Occ=0.000000D+00 E= 6.658653D-01 Symmetry=a1 + MO Center= -1.1D-15, -1.9D-14, 1.1D-01, r^2= 1.9D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 0.638552 1 O s 28 0.638552 4 O s + 8 0.507180 1 O py 33 -0.507180 4 O py + 1 -0.122498 1 O s 26 -0.122498 4 O s + 9 0.118569 1 O pz 34 0.118569 4 O pz + 20 0.112039 2 H pz 25 0.112039 3 H pz + + Vector 12 Occ=0.000000D+00 E= 7.213683D-01 Symmetry=b2 + MO Center= 2.7D-16, 2.5D-14, 2.0D-01, r^2= 2.6D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 2.154038 1 O s 28 -2.154038 4 O s + 8 -1.883289 1 O py 33 -1.883289 4 O py + 9 -0.354558 1 O pz 34 0.354558 4 O pz + 17 0.295367 2 H s 22 0.295367 3 H s + 42 -0.295367 5 H s 47 -0.295367 6 H s + + Vector 13 Occ=0.000000D+00 E= 8.839940D-01 Symmetry=a1 + MO Center= 5.4D-16, -7.2D-16, -3.6D-01, r^2= 1.4D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 9 0.333002 1 O pz 34 0.333002 4 O pz + 18 -0.247514 2 H px 23 0.247514 3 H px + 43 -0.247514 5 H px 48 0.247514 6 H px + 16 0.241422 2 H s 21 0.241422 3 H s + 41 0.241422 5 H s 46 0.241422 6 H s + + Vector 14 Occ=0.000000D+00 E= 1.003322D+00 Symmetry=b1 + MO Center= 3.3D-16, -1.8D-16, 4.8D-02, r^2= 1.6D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 7 0.590268 1 O px 32 0.590268 4 O px + 16 0.240591 2 H s 21 -0.240591 3 H s + 41 0.240591 5 H s 46 -0.240591 6 H s + 20 -0.156428 2 H pz 25 0.156428 3 H pz + 45 -0.156428 5 H pz 50 0.156428 6 H pz + + Vector 15 Occ=0.000000D+00 E= 1.141704D+00 Symmetry=a1 + MO Center= -4.2D-16, -5.0D-15, 6.1D-02, r^2= 1.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 9 0.516045 1 O pz 34 0.516045 4 O pz + 3 -0.341909 1 O s 28 -0.341909 4 O s + 8 -0.323818 1 O py 33 0.323818 4 O py + 18 0.317581 2 H px 23 -0.317581 3 H px + 43 0.317581 5 H px 48 -0.317581 6 H px + + Vector 16 Occ=0.000000D+00 E= 1.246839D+00 Symmetry=b2 + MO Center= 7.9D-16, 6.5D-16, 3.0D-02, r^2= 2.0D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 9 1.196375 1 O pz 34 -1.196375 4 O pz + 3 0.777401 1 O s 28 -0.777401 4 O s + 8 -0.772762 1 O py 33 -0.772762 4 O py + 16 0.481390 2 H s 21 0.481390 3 H s + 41 -0.481390 5 H s 46 -0.481390 6 H s + + Vector 17 Occ=0.000000D+00 E= 1.262892D+00 Symmetry=a2 + MO Center= -1.1D-15, 2.1D-17, 1.7D-01, r^2= 2.0D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 7 1.446031 1 O px 32 -1.446031 4 O px + 16 0.448476 2 H s 21 -0.448476 3 H s + 41 -0.448476 5 H s 46 0.448476 6 H s + 17 0.363252 2 H s 22 -0.363252 3 H s + 42 -0.363252 5 H s 47 0.363252 6 H s + + Vector 18 Occ=0.000000D+00 E= 1.407122D+00 Symmetry=a1 + MO Center= -8.7D-17, -2.5D-15, -2.2D-01, r^2= 1.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 8 0.451791 1 O py 33 -0.451791 4 O py + 20 -0.372652 2 H pz 25 -0.372652 3 H pz + 45 -0.372652 5 H pz 50 -0.372652 6 H pz + 3 0.359033 1 O s 28 0.359033 4 O s + 9 0.287602 1 O pz 34 0.287602 4 O pz + + Vector 19 Occ=0.000000D+00 E= 1.549495D+00 Symmetry=b1 + MO Center= 2.5D-16, 2.0D-16, -5.9D-01, r^2= 1.4D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 19 0.372707 2 H py 24 -0.372707 3 H py + 44 -0.372707 5 H py 49 0.372707 6 H py + 18 0.249695 2 H px 23 0.249695 3 H px + 43 0.249695 5 H px 48 0.249695 6 H px + 20 -0.160179 2 H pz 25 0.160179 3 H pz + + Vector 20 Occ=0.000000D+00 E= 1.583125D+00 Symmetry=b2 + MO Center= -3.7D-15, 7.3D-15, -1.7D-01, r^2= 2.0D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 2.998579 1 O s 28 -2.998579 4 O s + 8 -1.979051 1 O py 33 -1.979051 4 O py + 9 0.598151 1 O pz 34 -0.598151 4 O pz + 17 0.515426 2 H s 22 0.515426 3 H s + 42 -0.515426 5 H s 47 -0.515426 6 H s + + Vector 21 Occ=0.000000D+00 E= 1.714240D+00 Symmetry=a1 + MO Center= -1.3D-14, 3.5D-14, -2.6D-01, r^2= 1.8D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 8 0.579253 1 O py 33 -0.579253 4 O py + 19 -0.453099 2 H py 24 -0.453099 3 H py + 44 0.453099 5 H py 49 0.453099 6 H py + 16 -0.247879 2 H s 21 -0.247879 3 H s + 41 -0.247879 5 H s 46 -0.247879 6 H s + + Vector 22 Occ=0.000000D+00 E= 1.720962D+00 Symmetry=b2 + MO Center= 1.6D-15, -3.1D-14, -2.4D-01, r^2= 1.9D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 2.526954 1 O s 28 -2.526954 4 O s + 8 -1.495399 1 O py 33 -1.495399 4 O py + 9 -0.695809 1 O pz 34 0.695809 4 O pz + 16 -0.426719 2 H s 20 0.428062 2 H pz + 21 -0.426719 3 H s 25 0.428062 3 H pz + + Vector 23 Occ=0.000000D+00 E= 1.723051D+00 Symmetry=b1 + MO Center= 1.4D-14, 7.9D-16, -2.5D-01, r^2= 1.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 7 0.638855 1 O px 32 0.638855 4 O px + 16 0.413462 2 H s 21 -0.413462 3 H s + 41 0.413462 5 H s 46 -0.413462 6 H s + 20 0.406152 2 H pz 25 -0.406152 3 H pz + 45 0.406152 5 H pz 50 -0.406152 6 H pz + + Vector 24 Occ=0.000000D+00 E= 1.872792D+00 Symmetry=b1 + MO Center= -6.3D-15, 3.7D-15, -4.7D-01, r^2= 1.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 7 0.612636 1 O px 32 0.612636 4 O px + 18 0.479458 2 H px 23 0.479458 3 H px + 43 0.479458 5 H px 48 0.479458 6 H px + 17 0.421388 2 H s 22 -0.421388 3 H s + 42 0.421388 5 H s 47 -0.421388 6 H s + + Vector 25 Occ=0.000000D+00 E= 2.118613D+00 Symmetry=a2 + MO Center= -7.5D-15, -9.4D-16, -4.1D-01, r^2= 1.8D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 7 1.166046 1 O px 32 -1.166046 4 O px + 20 0.655291 2 H pz 25 -0.655291 3 H pz + 45 -0.655291 5 H pz 50 0.655291 6 H pz + 17 0.403341 2 H s 22 -0.403341 3 H s + 42 -0.403341 5 H s 47 0.403341 6 H s + + Vector 26 Occ=0.000000D+00 E= 2.177114D+00 Symmetry=a2 + MO Center= -5.3D-17, -3.4D-15, -5.1D-01, r^2= 1.6D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 7 0.733875 1 O px 32 -0.733875 4 O px + 18 0.643868 2 H px 23 0.643868 3 H px + 43 -0.643868 5 H px 48 -0.643868 6 H px + 17 0.581817 2 H s 22 -0.581817 3 H s + 42 -0.581817 5 H s 47 0.581817 6 H s + + Vector 27 Occ=0.000000D+00 E= 2.258863D+00 Symmetry=b2 + MO Center= 4.3D-15, -2.3D-15, -7.8D-02, r^2= 1.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 3.822537 1 O s 28 -3.822537 4 O s + 8 -1.357160 1 O py 33 -1.357160 4 O py + 9 -1.120596 1 O pz 34 1.120596 4 O pz + 16 -0.843418 2 H s 21 -0.843418 3 H s + 41 0.843418 5 H s 46 0.843418 6 H s + + Vector 28 Occ=0.000000D+00 E= 2.322741D+00 Symmetry=a1 + MO Center= 3.1D-15, -6.3D-15, 1.7D-01, r^2= 1.3D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 0.959111 1 O s 28 0.959111 4 O s + 9 -0.876322 1 O pz 34 -0.876322 4 O pz + 16 -0.765636 2 H s 21 -0.765636 3 H s + 41 -0.765636 5 H s 46 -0.765636 6 H s + 18 -0.401110 2 H px 23 0.401110 3 H px + + Vector 29 Occ=0.000000D+00 E= 2.621695D+00 Symmetry=a2 + MO Center= 3.4D-14, -3.4D-16, -5.6D-01, r^2= 1.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 19 0.967109 2 H py 24 -0.967109 3 H py + 44 0.967109 5 H py 49 -0.967109 6 H py + 16 -0.679966 2 H s 21 0.679966 3 H s + 41 0.679966 5 H s 46 -0.679966 6 H s + 17 -0.447026 2 H s 22 0.447026 3 H s + + Vector 30 Occ=0.000000D+00 E= 2.658544D+00 Symmetry=b2 + MO Center= -3.2D-14, -1.3D-15, -4.8D-01, r^2= 1.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 19 1.011024 2 H py 24 1.011024 3 H py + 44 1.011024 5 H py 49 1.011024 6 H py + 9 0.671656 1 O pz 34 -0.671656 4 O pz + 8 -0.551342 1 O py 33 -0.551342 4 O py + 3 0.531162 1 O s 28 -0.531162 4 O s + + Vector 31 Occ=0.000000D+00 E= 2.872014D+00 Symmetry=a1 + MO Center= 1.6D-15, 5.8D-15, 3.7D-02, r^2= 1.2D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 1.613389 1 O s 28 1.613389 4 O s + 2 -0.730399 1 O s 27 -0.730399 4 O s + 9 -0.585994 1 O pz 34 -0.585994 4 O pz + 5 -0.579203 1 O py 30 0.579203 4 O py + 16 -0.461247 2 H s 21 -0.461247 3 H s + + Vector 32 Occ=0.000000D+00 E= 3.329895D+00 Symmetry=a1 + MO Center= 5.9D-16, -4.5D-15, -1.4D-02, r^2= 8.4D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 1.482269 1 O s 28 1.482269 4 O s + 2 -0.840671 1 O s 27 -0.840671 4 O s + 9 -0.741760 1 O pz 34 -0.741760 4 O pz + 16 -0.593328 2 H s 21 -0.593328 3 H s + 41 -0.593328 5 H s 46 -0.593328 6 H s + + Vector 33 Occ=0.000000D+00 E= 3.443687D+00 Symmetry=b2 + MO Center= -4.8D-15, -2.2D-14, -5.4D-03, r^2= 1.3D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 4.435278 1 O s 28 -4.435278 4 O s + 9 -1.264144 1 O pz 34 1.264144 4 O pz + 8 -1.119860 1 O py 33 -1.119860 4 O py + 2 -0.963579 1 O s 27 0.963579 4 O s + 1 -0.556065 1 O s 13 -0.555337 1 O dyy + + Vector 34 Occ=0.000000D+00 E= 3.533134D+00 Symmetry=b1 + MO Center= -4.4D-16, -1.1D-14, 1.1D-01, r^2= 7.5D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 4 0.847140 1 O px 29 0.847140 4 O px + 7 -0.333953 1 O px 32 -0.333953 4 O px + 18 0.199356 2 H px 23 0.199356 3 H px + 43 0.199356 5 H px 48 0.199356 6 H px + 20 0.124993 2 H pz 25 -0.124993 3 H pz + + Vector 35 Occ=0.000000D+00 E= 3.680269D+00 Symmetry=a1 + MO Center= 9.4D-16, 1.8D-13, 1.1D-01, r^2= 9.7D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 1.665868 1 O s 28 1.665868 4 O s + 6 -0.719539 1 O pz 31 -0.719539 4 O pz + 16 -0.673132 2 H s 21 -0.673132 3 H s + 41 -0.673132 5 H s 46 -0.673132 6 H s + 2 -0.626790 1 O s 27 -0.626790 4 O s + + Vector 36 Occ=0.000000D+00 E= 3.754215D+00 Symmetry=a2 + MO Center= -3.4D-14, 1.2D-14, 5.4D-02, r^2= 9.2D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 4 0.824789 1 O px 29 -0.824789 4 O px + 7 -0.543501 1 O px 32 0.543501 4 O px + 11 0.403080 1 O dxy 36 0.403080 4 O dxy + 18 0.285946 2 H px 23 0.285946 3 H px + 43 -0.285946 5 H px 48 -0.285946 6 H px + + Vector 37 Occ=0.000000D+00 E= 3.831462D+00 Symmetry=b2 + MO Center= 4.4D-14, -1.4D-13, 2.8D-01, r^2= 1.2D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 6.677555 1 O s 28 -6.677555 4 O s + 8 -2.387848 1 O py 33 -2.387848 4 O py + 2 -1.229932 1 O s 27 1.229932 4 O s + 1 -0.656589 1 O s 26 0.656589 4 O s + 16 -0.569060 2 H s 21 -0.569060 3 H s + + Vector 38 Occ=0.000000D+00 E= 4.114131D+00 Symmetry=b2 + MO Center= -7.8D-17, -8.9D-15, -8.5D-02, r^2= 8.8D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 16 0.573136 2 H s 21 0.573136 3 H s + 41 -0.573136 5 H s 46 -0.573136 6 H s + 6 0.502589 1 O pz 31 -0.502589 4 O pz + 3 -0.489945 1 O s 28 0.489945 4 O s + 13 0.461465 1 O dyy 38 -0.461465 4 O dyy + + Vector 39 Occ=0.000000D+00 E= 4.386514D+00 Symmetry=a1 + MO Center= 2.3D-15, 2.3D-15, 1.6D-01, r^2= 7.2D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 10 0.600507 1 O dxx 35 0.600507 4 O dxx + 15 -0.538546 1 O dzz 40 -0.538546 4 O dzz + 14 0.427740 1 O dyz 39 -0.427740 4 O dyz + 9 0.204309 1 O pz 34 0.204309 4 O pz + 3 -0.201073 1 O s 28 -0.201073 4 O s + + Vector 40 Occ=0.000000D+00 E= 4.397423D+00 Symmetry=b1 + MO Center= -1.3D-15, 1.6D-15, 1.4D-01, r^2= 6.7D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 11 1.091747 1 O dxy 36 -1.091747 4 O dxy + 19 0.128859 2 H py 24 -0.128859 3 H py + 44 -0.128859 5 H py 49 0.128859 6 H py + 4 0.116356 1 O px 29 0.116356 4 O px + 12 -0.104384 1 O dxz 37 -0.104384 4 O dxz + + Vector 41 Occ=0.000000D+00 E= 4.506344D+00 Symmetry=a1 + MO Center= -4.3D-16, -4.2D-18, 1.0D-01, r^2= 7.3D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 14 0.996384 1 O dyz 39 -0.996384 4 O dyz + 3 0.759363 1 O s 28 0.759363 4 O s + 9 -0.398385 1 O pz 34 -0.398385 4 O pz + 2 -0.374081 1 O s 27 -0.374081 4 O s + 16 -0.326891 2 H s 21 -0.326891 3 H s + + Vector 42 Occ=0.000000D+00 E= 4.863319D+00 Symmetry=b2 + MO Center= 1.2D-15, -3.0D-15, 1.5D-01, r^2= 8.0D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 0.845108 1 O s 28 -0.845108 4 O s + 10 -0.726025 1 O dxx 35 0.726025 4 O dxx + 15 0.670223 1 O dzz 40 -0.670223 4 O dzz + 9 -0.348014 1 O pz 34 0.348014 4 O pz + 8 -0.267548 1 O py 33 -0.267548 4 O py + + Vector 43 Occ=0.000000D+00 E= 5.145967D+00 Symmetry=b1 + MO Center= 3.3D-16, -6.6D-17, 1.1D-01, r^2= 8.6D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 12 1.532803 1 O dxz 37 1.532803 4 O dxz + 7 -0.474430 1 O px 32 -0.474430 4 O px + 16 -0.443658 2 H s 21 0.443658 3 H s + 41 -0.443658 5 H s 46 0.443658 6 H s + 20 -0.309748 2 H pz 25 0.309748 3 H pz + + Vector 44 Occ=0.000000D+00 E= 5.424977D+00 Symmetry=a2 + MO Center= -4.5D-16, -1.6D-15, 1.4D-01, r^2= 8.5D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 12 1.544963 1 O dxz 37 -1.544963 4 O dxz + 11 -0.565235 1 O dxy 36 -0.565235 4 O dxy + 7 -0.508328 1 O px 32 0.508328 4 O px + 16 -0.453526 2 H s 21 0.453526 3 H s + 41 0.453526 5 H s 46 -0.453526 6 H s + + Vector 45 Occ=0.000000D+00 E= 5.545645D+00 Symmetry=a1 + MO Center= -8.1D-16, -4.2D-15, 1.6D-01, r^2= 7.3D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 13 -0.612880 1 O dyy 38 -0.612880 4 O dyy + 15 0.581324 1 O dzz 40 0.581324 4 O dzz + 10 0.564640 1 O dxx 35 0.564640 4 O dxx + 8 0.369309 1 O py 33 -0.369309 4 O py + 5 -0.202641 1 O py 30 0.202641 4 O py + + Vector 46 Occ=0.000000D+00 E= 5.725086D+00 Symmetry=b2 + MO Center= 3.8D-15, 2.0D-15, 1.7D-01, r^2= 7.5D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 14 1.701101 1 O dyz 39 1.701101 4 O dyz + 3 1.142538 1 O s 28 -1.142538 4 O s + 8 -0.432971 1 O py 33 -0.432971 4 O py + 9 -0.430034 1 O pz 34 0.430034 4 O pz + 6 -0.358741 1 O pz 31 0.358741 4 O pz + + Vector 47 Occ=0.000000D+00 E= 5.754913D+00 Symmetry=a2 + MO Center= -8.3D-15, -5.3D-16, 1.2D-01, r^2= 7.8D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 11 1.627691 1 O dxy 36 1.627691 4 O dxy + 7 -0.572746 1 O px 32 0.572746 4 O px + 12 0.549705 1 O dxz 37 -0.549705 4 O dxz + 4 -0.387149 1 O px 29 0.387149 4 O px + 16 -0.384328 2 H s 21 0.384328 3 H s + + Vector 48 Occ=0.000000D+00 E= 6.821675D+00 Symmetry=b2 + MO Center= 4.4D-16, 2.6D-15, 1.5D-01, r^2= 5.8D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 13 1.277049 1 O dyy 38 -1.277049 4 O dyy + 5 -1.109956 1 O py 30 -1.109956 4 O py + 2 0.490325 1 O s 27 -0.490325 4 O s + 8 -0.425813 1 O py 33 -0.425813 4 O py + 9 0.399530 1 O pz 34 -0.399530 4 O pz + + Vector 49 Occ=0.000000D+00 E= 8.147184D+00 Symmetry=a1 + MO Center= 9.7D-17, 3.2D-17, 1.4D-01, r^2= 7.0D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 2 1.321007 1 O s 27 1.321007 4 O s + 3 1.183578 1 O s 28 1.183578 4 O s + 13 -1.049909 1 O dyy 38 -1.049909 4 O dyy + 10 -0.987604 1 O dxx 35 -0.987604 4 O dxx + 15 -0.951493 1 O dzz 40 -0.951493 4 O dzz + + Vector 50 Occ=0.000000D+00 E= 8.466780D+00 Symmetry=b2 + MO Center= 4.5D-16, -1.0D-15, 1.6D-01, r^2= 8.1D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 4.034513 1 O s 28 -4.034513 4 O s + 13 -1.320345 1 O dyy 38 1.320345 4 O dyy + 10 -1.198298 1 O dxx 35 1.198298 4 O dxx + 8 -1.154500 1 O py 15 -1.150950 1 O dzz + 33 -1.154500 4 O py 40 1.150950 4 O dzz + + + center of mass + -------------- + x = 0.00000000 y = 0.00000000 z = 0.12317796 + + moments of inertia (a.u.) + ------------------ + 39.159445893898 0.000000000000 0.000000000000 + 0.000000000000 14.884278749696 0.000000000000 + 0.000000000000 0.000000000000 40.041700909395 + + Multipole analysis of the density + --------------------------------- + + L x y z total alpha beta nuclear + - - - - ----- ----- ---- ------- + 0 0 0 0 -0.000000 -10.000000 -10.000000 20.000000 + + 1 1 0 0 0.000000 0.000000 0.000000 0.000000 + 1 0 1 0 -0.000000 -0.000000 -0.000000 0.000000 + 1 0 0 1 21.522729 10.761364 10.761364 0.000000 + + 2 2 0 0 -73.898691 -40.860375 -40.860375 7.822059 + 2 1 1 0 -0.000000 -0.000000 -0.000000 0.000000 + 2 1 0 1 -0.000000 -0.000000 -0.000000 0.000000 + 2 0 2 0 -47.902293 -32.878807 -32.878807 17.855322 + 2 0 1 1 -0.000000 -0.000000 -0.000000 0.000000 + 2 0 0 2 -52.123141 -29.190394 -29.190394 6.257647 + + + Parallel integral file used 6 records with 0 large values + + !! warning: dft energy failed + + Task times cpu: 0.5s wall: 0.5s + + + NWChem Input Module + ------------------- + + + + NWChem DFT Module + ----------------- + + + Water geometry optimization in cc-pvdz basis set + + + + + Summary of "ao basis" -> "ao basis" (cartesian) + ------------------------------------------------------------------------------ + Tag Description Shells Functions and Types + ---------------- ------------------------------ ------ --------------------- + H cc-pvdz 3 5 2s1p + O cc-pvdz 6 15 3s2p1d + + + Symmetry analysis of basis + -------------------------- + + a1 16 + a2 9 + b1 9 + b2 16 + + Caching 1-el integrals + + General Information + ------------------- + SCF calculation type: DFT + Wavefunction type: closed shell. + No. of atoms : 6 + No. of electrons : 20 + Alpha electrons : 10 + Beta electrons : 10 + Charge : 0 + Spin multiplicity: 1 + Use of symmetry is: on ; symmetry adaption is: on + Maximum number of iterations: 99 + AO basis - number of functions: 50 + number of shells: 24 + Convergence on energy requested: 1.00D-06 + Convergence on density requested: 1.00D-05 + Convergence on gradient requested: 5.00D-04 + + XC Information + -------------- + Slater Exchange Functional 1.000 local + VWN V Correlation Functional 1.000 local + + Grid Information + ---------------- + Grid used for XC integration: medium + Radial quadrature: Mura-Knowles + Angular quadrature: Lebedev. + Tag B.-S. Rad. Rad. Pts. Rad. Cut. Ang. Pts. + --- ---------- --------- --------- --------- + O 0.60 49 6.0 434 + H 0.35 45 7.0 434 + Grid pruning is: on + Number of quadrature shells: 94 + Spatial weights used: Erf1 + + Convergence Information + ----------------------- + Convergence aids based upon iterative change in + total energy or number of iterations. + Levelshifting, if invoked, occurs when the + HOMO/LUMO gap drops below (HL_TOL): 1.00D-02 + DIIS, if invoked, will attempt to extrapolate + using up to (NFOCK): 10 stored Fock matrices. + + Damping( 0%) Levelshifting(0.5) DIIS + --------------- ------------------- --------------- + dE on: start ASAP start + dE off: 2 iters 99 iters 99 iters + + + Screening Tolerance Information + ------------------------------- + Density screening/tol_rho: 1.00D-10 + AO Gaussian exp screening on grid/accAOfunc: 14 + CD Gaussian exp screening on grid/accCDfunc: 20 + XC Gaussian exp screening on grid/accXCfunc: 20 + Schwarz screening/accCoul: 1.00D-08 + + + Loading old vectors from job with title : + +Water geometry optimization in cc-pvdz basis set + + + Symmetry analysis of molecular orbitals - initial + ------------------------------------------------- + + Numbering of irreducible representations: + + 1 a1 2 a2 3 b1 4 b2 + + Orbital symmetries: + + 1 a1 2 b2 3 a1 4 b1 5 b2 + 6 a2 7 a1 8 b1 9 b2 10 a2 + 11 a1 12 b2 13 a1 14 b1 15 a1 + 16 b2 17 a2 18 a1 19 b1 20 b2 + + Time after variat. SCF: 0.8 + Time prior to 1st pass: 0.8 + + Integral file = ./h2o.aoints.0 + Record size in doubles = 65536 No. of integs per rec = 43688 + Max. records in memory = 7 Max. records in file = 112791 + No. of bits per label = 8 No. of bits per value = 64 + + + #quartets = 1.456D+04 #integrals = 2.235D+05 #direct = 0.0% #cached =100.0% + + +File balance: exchanges= 0 moved= 0 time= 0.0 + + + Grid_pts file = ./h2o.gridpts.0 + Record size in doubles = 12289 No. of grid_pts per rec = 3070 + Max. records in memory = 9 Max. recs in file = 601506 + + + Memory utilization after 1st SCF pass: + Heap Space remaining (MW): 25.64 25641618 + Stack Space remaining (MW): 26.21 26213964 + + convergence iter energy DeltaE RMS-Dens Diis-err time + ---------------- ----- ----------------- --------- --------- --------- ------ + d= 0,ls=0.0,diis 1 -119.6163456651 -1.84D+02 1.15D+00 9.58D+01 1.0 + d= 0,ls=0.0,diis 2 -135.1164245474 -1.55D+01 1.89D-01 1.22D+02 1.2 + d= 0,ls=0.0,diis 3 -145.7609227017 -1.06D+01 1.99D-01 3.84D+01 1.3 + restart from atomic guess + + Superposition of Atomic Density Guess + ------------------------------------- + + Sum of atomic energies: -151.52445821 + + Parallel integral file used 6 records with 0 large values + + + Non-variational initial energy + ------------------------------ + + Total energy = -269.885467 + 1-e energy = -333.998484 + 2-e energy = 0.000000 + HOMO = -12.801444 + LUMO = -9.691671 + + + Symmetry analysis of molecular orbitals - initial + ------------------------------------------------- + + Numbering of irreducible representations: + + 1 a1 2 a2 3 b1 4 b2 + + Orbital symmetries: + + 1 b2 2 a1 3 a1 4 b2 5 a1 + 6 b1 7 a2 8 b2 9 b2 10 a1 + 11 a1 12 b1 13 b1 14 a1 15 a1 + 16 a2 17 b2 18 b2 19 a1 20 b1 + + WARNING: movecs_in_org=atomic not equal to movecs_in=./h2o.movecs + Time after variat. SCF: 1.4 + Time prior to 1st pass: 1.4 + + Integral file = ./h2o.aoints.0 + Record size in doubles = 65536 No. of integs per rec = 43688 + Max. records in memory = 7 Max. records in file = 112791 + No. of bits per label = 8 No. of bits per value = 64 + + + #quartets = 1.456D+04 #integrals = 2.235D+05 #direct = 0.0% #cached =100.0% + + +File balance: exchanges= 0 moved= 0 time= 0.0 + + + Memory utilization after 1st SCF pass: + Heap Space remaining (MW): 25.64 25641618 + Stack Space remaining (MW): 26.21 26213964 + + convergence iter energy DeltaE RMS-Dens Diis-err time + ---------------- ----- ----------------- --------- --------- --------- ------ + d= 0,ls=0.0,diis 1 -129.0729672576 1.67D+01 2.17D-01 1.84D+02 1.6 + d= 0,ls=0.5,diis 2 -150.1737120662 -2.11D+01 1.56D-02 7.71D+00 1.7 + d= 0,ls=0.5,diis 3 -150.5811088488 -4.07D-01 1.45D-02 3.45D+00 1.8 + d= 0,ls=0.5,diis 4 -150.8423950573 -2.61D-01 1.13D-02 7.94D-01 1.9 + d= 0,ls=0.5,diis 5 -150.9154921656 -7.31D-02 6.06D-03 7.45D-02 2.1 + d= 0,ls=0.5,diis 6 -150.9253169644 -9.82D-03 2.51D-03 4.66D-03 2.2 + d= 0,ls=0.5,diis 7 -150.9263660303 -1.05D-03 1.18D-03 1.07D-03 2.3 + d= 0,ls=0.5,diis 8 -150.9265946245 -2.29D-04 6.22D-04 4.60D-04 2.5 + d= 0,ls=0.5,diis 9 -150.9266701870 -7.56D-05 3.43D-04 1.74D-04 2.6 + d= 0,ls=0.5,diis 10 -150.9266974772 -2.73D-05 1.91D-04 4.23D-05 2.7 + d= 0,ls=0.5,diis 11 -150.9267052342 -7.76D-06 1.03D-04 1.11D-05 2.8 + d= 0,ls=0.5,diis 12 -150.9267074317 -2.20D-06 5.82D-05 3.77D-06 3.0 + d= 0,ls=0.5,diis 13 -150.9267081554 -7.24D-07 3.31D-05 1.24D-06 3.1 + d= 0,ls=0.5,diis 14 -150.9267083944 -2.39D-07 1.89D-05 3.97D-07 3.2 + d= 0,ls=0.5,diis 15 -150.9267084728 -7.83D-08 1.09D-05 1.28D-07 3.3 + d= 0,ls=0.5,diis 16 -150.9267084986 -2.58D-08 6.30D-06 4.17D-08 3.5 + + + Total DFT energy = -150.926708507204 + One electron energy = -332.882055731772 + Coulomb energy = 135.738460644675 + Exchange-Corr. energy = -17.896130530312 + Nuclear repulsion energy = 64.113017110205 + + Numeric. integr. density = 20.000002877525 + + Total iterative time = 2.1s + + + + Occupations of the irreducible representations + ---------------------------------------------- + + irrep alpha beta + -------- -------- -------- + a1 4.0 4.0 + a2 1.0 1.0 + b1 2.0 2.0 + b2 3.0 3.0 + + + DFT Final Molecular Orbital Analysis + ------------------------------------ + + Vector 1 Occ=2.000000D+00 E=-1.874399D+01 Symmetry=a1 + MO Center= 4.8D-22, 8.2D-17, 1.5D-01, r^2= 2.7D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 1 0.711127 1 O s 26 0.711127 4 O s + + Vector 2 Occ=2.000000D+00 E=-1.874299D+01 Symmetry=b2 + MO Center= -7.8D-22, 7.3D-17, 1.5D-01, r^2= 2.7D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 1 0.710402 1 O s 26 -0.710402 4 O s + + Vector 3 Occ=2.000000D+00 E=-1.496811D+00 Symmetry=a1 + MO Center= -1.1D-16, -4.9D-16, 4.3D-02, r^2= 3.7D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 2 0.313638 1 O s 27 0.313638 4 O s + 5 -0.228506 1 O py 30 0.228506 4 O py + 3 0.145455 1 O s 28 0.145455 4 O s + 16 0.066957 2 H s 21 0.066957 3 H s + 41 0.066957 5 H s 46 0.066957 6 H s + + Vector 4 Occ=2.000000D+00 E=-7.815290D-01 Symmetry=b2 + MO Center= -4.3D-18, 3.5D-16, -4.9D-02, r^2= 9.8D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 0.337226 1 O s 28 -0.337226 4 O s + 2 0.314385 1 O s 27 -0.314385 4 O s + 5 0.163304 1 O py 30 0.163304 4 O py + 16 0.128515 2 H s 21 0.128515 3 H s + 41 -0.128515 5 H s 46 -0.128515 6 H s + + Vector 5 Occ=2.000000D+00 E=-7.587789D-01 Symmetry=a1 + MO Center= -6.2D-15, 2.8D-17, -7.0D-02, r^2= 8.1D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 6 0.340139 1 O pz 31 0.340139 4 O pz + 5 -0.222509 1 O py 30 0.222509 4 O py + 16 -0.167025 2 H s 21 -0.167025 3 H s + 41 -0.167025 5 H s 46 -0.167025 6 H s + 9 0.109597 1 O pz 34 0.109597 4 O pz + + Vector 6 Occ=2.000000D+00 E=-7.519867D-01 Symmetry=b1 + MO Center= 5.2D-15, -1.4D-15, -5.3D-02, r^2= 8.4D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 4 0.379675 1 O px 29 0.379675 4 O px + 16 -0.168661 2 H s 21 0.168661 3 H s + 41 -0.168661 5 H s 46 0.168661 6 H s + 7 0.137886 1 O px 32 0.137886 4 O px + 11 -0.061872 1 O dxy 36 0.061872 4 O dxy + + Vector 7 Occ=2.000000D+00 E=-5.450993D-01 Symmetry=a1 + MO Center= 1.2D-15, 3.9D-15, 2.7D-01, r^2= 9.6D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 5 0.393016 1 O py 30 -0.393016 4 O py + 3 0.269562 1 O s 28 0.269562 4 O s + 6 0.205420 1 O pz 31 0.205420 4 O pz + 8 0.163176 1 O py 33 -0.163176 4 O py + 9 0.115388 1 O pz 34 0.115388 4 O pz + + Vector 8 Occ=2.000000D+00 E=-2.962038D-01 Symmetry=a2 + MO Center= 8.6D-18, 1.4D-15, -4.6D-02, r^2= 1.1D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 4 0.444972 1 O px 29 -0.444972 4 O px + 7 0.297623 1 O px 32 -0.297623 4 O px + 16 -0.212836 2 H s 21 0.212836 3 H s + 41 0.212836 5 H s 46 -0.212836 6 H s + 17 -0.190549 2 H s 22 0.190549 3 H s + + Vector 9 Occ=2.000000D+00 E=-2.508686D-01 Symmetry=b2 + MO Center= -5.7D-18, -4.1D-15, 1.8D-01, r^2= 1.0D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 6 0.450239 1 O pz 31 -0.450239 4 O pz + 9 0.356614 1 O pz 34 -0.356614 4 O pz + 16 -0.155649 2 H s 21 -0.155649 3 H s + 41 0.155649 5 H s 46 0.155649 6 H s + 3 0.138648 1 O s 28 -0.138648 4 O s + + Vector 10 Occ=2.000000D+00 E=-1.210174D-01 Symmetry=b1 + MO Center= -4.3D-16, 2.4D-15, -5.6D-01, r^2= 2.1D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 0.403485 2 H s 22 -0.403485 3 H s + 42 0.403485 5 H s 47 -0.403485 6 H s + 4 0.291913 1 O px 7 0.292868 1 O px + 29 0.291913 4 O px 32 0.292868 4 O px + 16 0.285469 2 H s 21 -0.285469 3 H s + + Vector 11 Occ=0.000000D+00 E=-1.506388D-01 Symmetry=a1 + MO Center= -5.4D-16, -5.3D-15, -6.4D-01, r^2= 2.0D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 0.483323 1 O s 28 0.483323 4 O s + 17 -0.279690 2 H s 22 -0.279690 3 H s + 42 -0.279690 5 H s 47 -0.279690 6 H s + 6 -0.234004 1 O pz 31 -0.234004 4 O pz + 16 -0.196550 2 H s 21 -0.196550 3 H s + + Vector 12 Occ=0.000000D+00 E= 8.524156D-02 Symmetry=b2 + MO Center= -3.6D-14, 3.3D-15, -7.3D-01, r^2= 3.8D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 1.112470 2 H s 22 1.112470 3 H s + 42 -1.112470 5 H s 47 -1.112470 6 H s + 3 -0.529112 1 O s 28 0.529112 4 O s + 9 0.258981 1 O pz 34 -0.258981 4 O pz + 6 0.187683 1 O pz 31 -0.187683 4 O pz + + Vector 13 Occ=0.000000D+00 E= 1.734680D-01 Symmetry=a2 + MO Center= 4.1D-14, -6.4D-15, -6.3D-01, r^2= 4.1D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 1.890101 2 H s 22 -1.890101 3 H s + 42 -1.890101 5 H s 47 1.890101 6 H s + 7 0.461805 1 O px 32 -0.461805 4 O px + 4 0.289644 1 O px 29 -0.289644 4 O px + 16 0.112921 2 H s 21 -0.112921 3 H s + + Vector 14 Occ=0.000000D+00 E= 2.657307D-01 Symmetry=b1 + MO Center= -1.1D-14, 8.2D-15, -5.1D-01, r^2= 3.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 0.747755 2 H s 22 -0.747755 3 H s + 42 0.747755 5 H s 47 -0.747755 6 H s + 16 -0.516793 2 H s 21 0.516793 3 H s + 41 -0.516793 5 H s 46 0.516793 6 H s + 12 -0.110125 1 O dxz 37 -0.110125 4 O dxz + + Vector 15 Occ=0.000000D+00 E= 3.227238D-01 Symmetry=a1 + MO Center= 1.0D-14, 3.1D-15, -6.6D-01, r^2= 2.9D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 0.480617 1 O s 28 0.480617 4 O s + 17 -0.463994 2 H s 22 -0.463994 3 H s + 42 -0.463994 5 H s 47 -0.463994 6 H s + 16 0.416681 2 H s 21 0.416681 3 H s + 41 0.416681 5 H s 46 0.416681 6 H s + + Vector 16 Occ=0.000000D+00 E= 3.869827D-01 Symmetry=b2 + MO Center= -3.4D-15, -5.5D-16, 7.2D-02, r^2= 1.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 2.380443 1 O s 28 -2.380443 4 O s + 8 -1.691424 1 O py 33 -1.691424 4 O py + 5 -0.361420 1 O py 30 -0.361420 4 O py + 16 0.247415 2 H s 21 0.247415 3 H s + 41 -0.247415 5 H s 46 -0.247415 6 H s + + Vector 17 Occ=0.000000D+00 E= 5.660302D-01 Symmetry=a2 + MO Center= 1.5D-14, -3.2D-15, -4.6D-01, r^2= 2.6D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 1.344630 2 H s 22 -1.344630 3 H s + 42 -1.344630 5 H s 47 1.344630 6 H s + 16 -0.679103 2 H s 21 0.679103 3 H s + 41 0.679103 5 H s 46 -0.679103 6 H s + 4 -0.214941 1 O px 29 0.214941 4 O px + + Vector 18 Occ=0.000000D+00 E= 6.068524D-01 Symmetry=a1 + MO Center= 6.9D-16, -4.4D-17, -1.6D-02, r^2= 1.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 9 0.519868 1 O pz 34 0.519868 4 O pz + 6 -0.416777 1 O pz 31 -0.416777 4 O pz + 20 0.229582 2 H pz 25 0.229582 3 H pz + 45 0.229582 5 H pz 50 0.229582 6 H pz + 3 -0.199478 1 O s 28 -0.199478 4 O s + + Vector 19 Occ=0.000000D+00 E= 6.865850D-01 Symmetry=a1 + MO Center= 6.7D-17, -6.0D-16, 5.0D-04, r^2= 1.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 9 0.474723 1 O pz 34 0.474723 4 O pz + 8 -0.409909 1 O py 33 0.409909 4 O py + 18 0.309912 2 H px 23 -0.309912 3 H px + 43 0.309912 5 H px 48 -0.309912 6 H px + 3 -0.264017 1 O s 28 -0.264017 4 O s + + Vector 20 Occ=0.000000D+00 E= 6.947239D-01 Symmetry=b2 + MO Center= -1.0D-15, 2.7D-16, -4.5D-01, r^2= 2.4D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 17 0.976492 2 H s 22 0.976492 3 H s + 42 -0.976492 5 H s 47 -0.976492 6 H s + 8 -0.838523 1 O py 33 -0.838523 4 O py + 9 0.617383 1 O pz 34 -0.617383 4 O pz + 3 0.473639 1 O s 28 -0.473639 4 O s + + Vector 21 Occ=0.000000D+00 E= 7.716893D-01 Symmetry=b1 + MO Center= -1.2D-15, 1.3D-15, 1.2D-01, r^2= 2.1D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 7 0.948545 1 O px 32 0.948545 4 O px + 4 -0.545986 1 O px 29 -0.545986 4 O px + 17 0.483110 2 H s 22 -0.483110 3 H s + 42 0.483110 5 H s 47 -0.483110 6 H s + 18 0.146657 2 H px 23 0.146657 3 H px + + Vector 22 Occ=0.000000D+00 E= 7.954199D-01 Symmetry=b2 + MO Center= -6.8D-15, -5.9D-14, 2.6D-01, r^2= 2.3D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 2.076419 1 O s 28 -2.076419 4 O s + 8 -1.639227 1 O py 33 -1.639227 4 O py + 9 -0.945504 1 O pz 34 0.945504 4 O pz + 17 0.566288 2 H s 22 0.566288 3 H s + 42 -0.566288 5 H s 47 -0.566288 6 H s + + Vector 23 Occ=0.000000D+00 E= 8.587460D-01 Symmetry=a1 + MO Center= 1.1D-15, 5.7D-14, 1.9D-01, r^2= 2.3D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 8 0.831671 1 O py 33 -0.831671 4 O py + 3 0.686128 1 O s 28 0.686128 4 O s + 5 -0.446333 1 O py 30 0.446333 4 O py + 2 -0.377035 1 O s 27 -0.377035 4 O s + 9 0.343294 1 O pz 34 0.343294 4 O pz + + Vector 24 Occ=0.000000D+00 E= 9.755993D-01 Symmetry=a2 + MO Center= -3.1D-15, -9.5D-16, 2.1D-01, r^2= 2.3D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 7 1.801498 1 O px 32 -1.801498 4 O px + 17 1.096862 2 H s 22 -1.096862 3 H s + 42 -1.096862 5 H s 47 1.096862 6 H s + 4 -0.560601 1 O px 29 0.560601 4 O px + 16 0.270631 2 H s 21 -0.270631 3 H s + + Vector 25 Occ=0.000000D+00 E= 1.091951D+00 Symmetry=b2 + MO Center= -9.8D-16, 1.6D-15, 4.3D-02, r^2= 1.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 1.399409 1 O s 28 -1.399409 4 O s + 8 -1.383445 1 O py 33 -1.383445 4 O py + 9 1.077301 1 O pz 34 -1.077301 4 O pz + 5 0.549551 1 O py 30 0.549551 4 O py + 6 -0.364802 1 O pz 31 0.364802 4 O pz + + Vector 26 Occ=0.000000D+00 E= 1.170819D+00 Symmetry=b1 + MO Center= 1.9D-16, 1.0D-16, -4.9D-01, r^2= 1.4D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 19 0.378640 2 H py 24 -0.378640 3 H py + 44 -0.378640 5 H py 49 0.378640 6 H py + 11 -0.277562 1 O dxy 36 0.277562 4 O dxy + 16 0.206782 2 H s 21 -0.206782 3 H s + 41 0.206782 5 H s 46 -0.206782 6 H s + + Vector 27 Occ=0.000000D+00 E= 1.207067D+00 Symmetry=a1 + MO Center= 2.2D-16, -6.6D-16, -2.9D-01, r^2= 1.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 19 0.404126 2 H py 24 0.404126 3 H py + 44 -0.404126 5 H py 49 -0.404126 6 H py + 8 -0.383846 1 O py 33 0.383846 4 O py + 2 -0.349515 1 O s 27 -0.349515 4 O s + 3 0.344875 1 O s 28 0.344875 4 O s + + Vector 28 Occ=0.000000D+00 E= 1.256536D+00 Symmetry=b2 + MO Center= 8.6D-16, -7.7D-18, -3.2D-01, r^2= 1.6D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 9 0.691192 1 O pz 34 -0.691192 4 O pz + 3 0.487998 1 O s 28 -0.487998 4 O s + 8 -0.384814 1 O py 18 0.386711 2 H px + 23 -0.386711 3 H px 33 -0.384814 4 O py + 43 -0.386711 5 H px 48 0.386711 6 H px + + Vector 29 Occ=0.000000D+00 E= 1.299141D+00 Symmetry=b1 + MO Center= -3.5D-16, 1.9D-16, -4.8D-01, r^2= 1.4D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 20 0.499805 2 H pz 25 -0.499805 3 H pz + 45 0.499805 5 H pz 50 -0.499805 6 H pz + 7 0.413866 1 O px 32 0.413866 4 O px + 16 0.206851 2 H s 21 -0.206851 3 H s + 41 0.206851 5 H s 46 -0.206851 6 H s + + Vector 30 Occ=0.000000D+00 E= 1.533577D+00 Symmetry=a1 + MO Center= 4.7D-15, 3.9D-16, -4.5D-01, r^2= 1.3D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 2 0.563198 1 O s 27 0.563198 4 O s + 6 -0.461711 1 O pz 31 -0.461711 4 O pz + 3 -0.417369 1 O s 28 -0.417369 4 O s + 9 0.386217 1 O pz 34 0.386217 4 O pz + 20 -0.320185 2 H pz 25 -0.320185 3 H pz + + Vector 31 Occ=0.000000D+00 E= 1.648950D+00 Symmetry=b1 + MO Center= -6.1D-15, 1.3D-15, -4.7D-01, r^2= 1.6D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 18 0.526967 2 H px 23 0.526967 3 H px + 43 0.526967 5 H px 48 0.526967 6 H px + 4 0.412623 1 O px 29 0.412623 4 O px + 17 0.290631 2 H s 22 -0.290631 3 H s + 42 0.290631 5 H s 47 -0.290631 6 H s + + Vector 32 Occ=0.000000D+00 E= 1.841103D+00 Symmetry=a2 + MO Center= -3.2D-15, -6.0D-17, -5.5D-01, r^2= 1.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 7 0.630393 1 O px 32 -0.630393 4 O px + 20 0.622046 2 H pz 25 -0.622046 3 H pz + 45 -0.622046 5 H pz 50 0.622046 6 H pz + 18 -0.278114 2 H px 23 -0.278114 3 H px + 43 0.278114 5 H px 48 0.278114 6 H px + + Vector 33 Occ=0.000000D+00 E= 2.003614D+00 Symmetry=a2 + MO Center= 3.0D-14, -1.7D-15, -5.3D-01, r^2= 1.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 18 0.568776 2 H px 23 0.568776 3 H px + 43 -0.568776 5 H px 48 -0.568776 6 H px + 17 0.343685 2 H s 19 0.342660 2 H py + 22 -0.343685 3 H s 24 -0.342660 3 H py + 42 -0.343685 5 H s 44 0.342660 5 H py + + Vector 34 Occ=0.000000D+00 E= 2.062803D+00 Symmetry=b2 + MO Center= -3.2D-14, -2.9D-16, -3.5D-01, r^2= 1.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 3.606532 1 O s 28 -3.606532 4 O s + 8 -1.771396 1 O py 33 -1.771396 4 O py + 2 -0.963234 1 O s 27 0.963234 4 O s + 1 -0.473258 1 O s 26 0.473258 4 O s + 16 -0.383506 2 H s 21 -0.383506 3 H s + + Vector 35 Occ=0.000000D+00 E= 2.225064D+00 Symmetry=a1 + MO Center= 1.5D-15, 6.0D-15, -2.8D-02, r^2= 1.3D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 1.792847 1 O s 28 1.792847 4 O s + 16 -0.794050 2 H s 21 -0.794050 3 H s + 41 -0.794050 5 H s 46 -0.794050 6 H s + 2 -0.740365 1 O s 27 -0.740365 4 O s + 9 -0.707975 1 O pz 34 -0.707975 4 O pz + + Vector 36 Occ=0.000000D+00 E= 2.298457D+00 Symmetry=b1 + MO Center= -6.6D-16, -1.6D-16, 1.2D-02, r^2= 9.4D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 11 1.047698 1 O dxy 36 -1.047698 4 O dxy + 19 0.247374 2 H py 24 -0.247374 3 H py + 44 -0.247374 5 H py 49 0.247374 6 H py + 4 0.184315 1 O px 29 0.184315 4 O px + 16 0.140149 2 H s 21 -0.140149 3 H s + + Vector 37 Occ=0.000000D+00 E= 2.339600D+00 Symmetry=b2 + MO Center= 3.1D-15, -3.1D-15, -4.2D-01, r^2= 1.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 3.547907 1 O s 28 -3.547907 4 O s + 8 -1.277043 1 O py 33 -1.277043 4 O py + 16 -0.933404 2 H s 21 -0.933404 3 H s + 41 0.933404 5 H s 46 0.933404 6 H s + 19 0.646368 2 H py 24 0.646368 3 H py + + Vector 38 Occ=0.000000D+00 E= 2.361414D+00 Symmetry=a2 + MO Center= -5.8D-16, -3.1D-16, -5.1D-01, r^2= 1.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 19 0.925901 2 H py 24 -0.925901 3 H py + 44 0.925901 5 H py 49 -0.925901 6 H py + 16 -0.599790 2 H s 21 0.599790 3 H s + 41 0.599790 5 H s 46 -0.599790 6 H s + 17 -0.391754 2 H s 22 0.391754 3 H s + + Vector 39 Occ=0.000000D+00 E= 2.402804D+00 Symmetry=a1 + MO Center= 2.3D-16, -1.3D-16, -4.2D-02, r^2= 1.1D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 1.045922 1 O s 28 1.045922 4 O s + 14 0.744109 1 O dyz 39 -0.744109 4 O dyz + 2 -0.414921 1 O s 27 -0.414921 4 O s + 15 -0.393501 1 O dzz 40 -0.393501 4 O dzz + 9 -0.374074 1 O pz 34 -0.374074 4 O pz + + Vector 40 Occ=0.000000D+00 E= 2.663249D+00 Symmetry=b2 + MO Center= 3.7D-15, 4.3D-14, -8.8D-02, r^2= 1.8D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 6.939873 1 O s 28 -6.939873 4 O s + 8 -2.255433 1 O py 33 -2.255433 4 O py + 9 -1.410673 1 O pz 34 1.410673 4 O pz + 2 -1.254927 1 O s 27 1.254927 4 O s + 1 -0.704349 1 O s 26 0.704349 4 O s + + Vector 41 Occ=0.000000D+00 E= 2.694146D+00 Symmetry=a1 + MO Center= 4.1D-16, -3.9D-14, -1.5D-02, r^2= 1.3D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 1.947734 1 O s 28 1.947734 4 O s + 9 -1.037230 1 O pz 34 -1.037230 4 O pz + 2 -0.908237 1 O s 16 -0.908584 2 H s + 21 -0.908584 3 H s 27 -0.908237 4 O s + 41 -0.908584 5 H s 46 -0.908584 6 H s + + Vector 42 Occ=0.000000D+00 E= 3.092966D+00 Symmetry=b2 + MO Center= 1.3D-15, 4.4D-17, 3.3D-02, r^2= 1.1D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 2.464328 1 O s 28 -2.464328 4 O s + 8 -0.814165 1 O py 33 -0.814165 4 O py + 9 -0.753885 1 O pz 34 0.753885 4 O pz + 10 -0.702704 1 O dxx 35 0.702704 4 O dxx + 15 0.600423 1 O dzz 40 -0.600423 4 O dzz + + Vector 43 Occ=0.000000D+00 E= 3.299922D+00 Symmetry=a1 + MO Center= 1.1D-17, -6.2D-16, 1.5D-01, r^2= 9.0D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 13 0.651013 1 O dyy 38 0.651013 4 O dyy + 10 -0.532858 1 O dxx 15 -0.534366 1 O dzz + 35 -0.532858 4 O dxx 40 -0.534366 4 O dzz + 8 -0.505635 1 O py 33 0.505635 4 O py + 2 -0.368694 1 O s 27 -0.368694 4 O s + + Vector 44 Occ=0.000000D+00 E= 3.311708D+00 Symmetry=b1 + MO Center= -8.7D-17, 1.3D-15, 3.7D-02, r^2= 1.1D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 12 1.530500 1 O dxz 37 1.530500 4 O dxz + 7 -0.634104 1 O px 32 -0.634104 4 O px + 16 -0.517218 2 H s 21 0.517218 3 H s + 41 -0.517218 5 H s 46 0.517218 6 H s + 20 -0.406664 2 H pz 25 0.406664 3 H pz + + Vector 45 Occ=0.000000D+00 E= 3.609479D+00 Symmetry=a2 + MO Center= -2.6D-15, -1.9D-16, 3.9D-02, r^2= 1.0D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 12 1.391019 1 O dxz 37 -1.391019 4 O dxz + 11 -0.878378 1 O dxy 36 -0.878378 4 O dxy + 7 -0.513114 1 O px 32 0.513114 4 O px + 16 -0.438146 2 H s 21 0.438146 3 H s + 41 0.438146 5 H s 46 -0.438146 6 H s + + Vector 46 Occ=0.000000D+00 E= 3.654084D+00 Symmetry=b2 + MO Center= 1.6D-15, 2.3D-16, 1.4D-01, r^2= 9.7D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 14 1.734842 1 O dyz 39 1.734842 4 O dyz + 3 0.694082 1 O s 28 -0.694082 4 O s + 8 -0.403106 1 O py 33 -0.403106 4 O py + 9 -0.395056 1 O pz 34 0.395056 4 O pz + 19 0.284951 2 H py 24 0.284951 3 H py + + Vector 47 Occ=0.000000D+00 E= 3.713793D+00 Symmetry=a2 + MO Center= -9.6D-16, -1.0D-15, 1.1D-01, r^2= 1.1D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 11 1.524886 1 O dxy 36 1.524886 4 O dxy + 7 -0.914518 1 O px 32 0.914518 4 O px + 12 0.854284 1 O dxz 37 -0.854284 4 O dxz + 16 -0.583457 2 H s 21 0.583457 3 H s + 41 0.583457 5 H s 46 -0.583457 6 H s + + Vector 48 Occ=0.000000D+00 E= 3.969843D+00 Symmetry=b2 + MO Center= 3.8D-16, 7.8D-16, 1.0D-01, r^2= 1.1D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 13 1.276751 1 O dyy 38 -1.276751 4 O dyy + 9 0.788039 1 O pz 34 -0.788039 4 O pz + 5 -0.726256 1 O py 30 -0.726256 4 O py + 8 -0.676988 1 O py 33 -0.676988 4 O py + 15 -0.574814 1 O dzz 40 0.574814 4 O dzz + + Vector 49 Occ=0.000000D+00 E= 5.295867D+00 Symmetry=a1 + MO Center= -6.1D-17, 2.6D-16, 1.2D-01, r^2= 8.6D-01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 1.527197 1 O s 28 1.527197 4 O s + 10 -1.087595 1 O dxx 35 -1.087595 4 O dxx + 2 1.065833 1 O s 27 1.065833 4 O s + 13 -1.056523 1 O dyy 38 -1.056523 4 O dyy + 15 -1.032095 1 O dzz 40 -1.032095 4 O dzz + + Vector 50 Occ=0.000000D+00 E= 5.864179D+00 Symmetry=b2 + MO Center= -4.4D-16, -3.1D-15, 1.4D-01, r^2= 1.0D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 3 5.041699 1 O s 28 -5.041699 4 O s + 13 -1.502897 1 O dyy 38 1.502897 4 O dyy + 8 -1.413217 1 O py 33 -1.413217 4 O py + 10 -1.225550 1 O dxx 35 1.225550 4 O dxx + 15 -1.154732 1 O dzz 40 1.154732 4 O dzz + + + center of mass + -------------- + x = 0.00000000 y = 0.00000000 z = 0.12317796 + + moments of inertia (a.u.) + ------------------ + 39.159445893898 0.000000000000 0.000000000000 + 0.000000000000 14.884278749696 0.000000000000 + 0.000000000000 0.000000000000 40.041700909395 + + Multipole analysis of the density + --------------------------------- + + L x y z total alpha beta nuclear + - - - - ----- ----- ---- ------- + 0 0 0 0 -0.000000 -10.000000 -10.000000 20.000000 + + 1 1 0 0 0.000000 0.000000 0.000000 0.000000 + 1 0 1 0 0.000000 0.000000 0.000000 0.000000 + 1 0 0 1 -0.041235 -0.020617 -0.020617 0.000000 + + 2 2 0 0 -12.423419 -10.122739 -10.122739 7.822059 + 2 1 1 0 -0.000000 -0.000000 -0.000000 0.000000 + 2 1 0 1 -0.000000 -0.000000 -0.000000 0.000000 + 2 0 2 0 -10.866464 -14.360893 -14.360893 17.855322 + 2 0 1 1 0.000000 0.000000 0.000000 0.000000 + 2 0 0 2 -10.685584 -8.471616 -8.471616 6.257647 + + + Parallel integral file used 6 records with 0 large values + + + Task times cpu: 2.9s wall: 2.9s + + + NWChem Input Module + ------------------- + + + Summary of allocated global arrays +----------------------------------- + No active global arrays + + +MA_summarize_allocated_blocks: starting scan ... +MA_summarize_allocated_blocks: scan completed: 0 heap blocks, 0 stack blocks +MA usage statistics: + + allocation statistics: + heap stack + ---- ----- + current number of blocks 0 0 + maximum number of blocks 22 55 + current total bytes 0 0 + maximum total bytes 4582064 22512216 + maximum total K-bytes 4583 22513 + maximum total M-bytes 5 23 + + + CITATION + -------- + Please cite the following reference when publishing + results obtained with NWChem: + + E. Apra, E. J. Bylaska, W. A. de Jong, N. Govind, K. Kowalski, + T. P. Straatsma, M. Valiev, H. J. J. van Dam, Y. Alexeev, J. Anchell, + V. Anisimov, F. W. Aquino, R. Atta-Fynn, J. Autschbach, N. P. Bauman, + J. C. Becca, D. E. Bernholdt, K. Bhaskaran-Nair, S. Bogatko, P. Borowski, + J. Boschen, J. Brabec, A. Bruner, E. Cauet, Y. Chen, G. N. Chuev, + C. J. Cramer, J. Daily, M. J. O. Deegan, T. H. Dunning Jr., M. Dupuis, + K. G. Dyall, G. I. Fann, S. A. Fischer, A. Fonari, H. Fruchtl, L. Gagliardi, + J. Garza, N. Gawande, S. Ghosh, K. Glaesemann, A. W. Gotz, J. Hammond, + V. Helms, E. D. Hermes, K. Hirao, S. Hirata, M. Jacquelin, L. Jensen, + B. G. Johnson, H. Jonsson, R. A. Kendall, M. Klemm, R. Kobayashi, V. Konkov, + S. Krishnamoorthy, M. Krishnan, Z. Lin, R. D. Lins, R. J. Littlefield, + A. J. Logsdail, K. Lopata, W. Ma, A. V. Marenich, J. Martin del Campo, + D. Mejia-Rodriguez, J. E. Moore, J. M. Mullin, T. Nakajima, D. R. Nascimento, + J. A. Nichols, P. J. Nichols, J. Nieplocha, A. Otero-de-la-Roza, B. Palmer, + A. Panyala, T. Pirojsirikul, B. Peng, R. Peverati, J. Pittner, L. Pollack, + R. M. Richard, P. Sadayappan, G. C. Schatz, W. A. Shelton, D. W. Silverstein, + D. M. A. Smith, T. A. Soares, D. Song, M. Swart, H. L. Taylor, G. S. Thomas, + V. Tipparaju, D. G. Truhlar, K. Tsemekhman, T. Van Voorhis, + A. Vazquez-Mayagoitia, P. Verma, O. Villa, A. Vishnu, K. D. Vogiatzis, + D. Wang, J. H. Weare, M. J. Williamson, T. L. Windus, K. Wolinski, + A. T. Wong, Q. Wu, C. Yang, Q. Yu, M. Zacharias, Z. Zhang, Y. Zhao, + and R. J. Harrison + "NWChem: Past, present, and future + J. Chem. Phys. 152, 184102 (2020) + doi:10.1063/5.0004997 + + AUTHORS + ------- + E. Apra, E. J. Bylaska, N. Govind, K. Kowalski, M. Valiev, D. Mejia-Rodriguez, + A. Kunitsa, N. P. Bauman, A. Panyala, W. A. de Jong, T. P. Straatsma, + H. J. J. van Dam, D. Wang, T. L. Windus, J. Hammond, J. Autschbach, A. Woods, + K. Bhaskaran-Nair, J. Brabec, K. Lopata, S. A. Fischer, S. Krishnamoorthy, + M. Jacquelin, W. Ma, M. Klemm, O. Villa, Y. Chen, V. Anisimov, F. Aquino, + S. Hirata, M. T. Hackler, E. Hermes, L. Jensen, J. E. Moore, J. C. Becca, + V. Konjkov, T. Risthaus, M. Malagoli, A. Marenich, A. Otero-de-la-Roza, + J. Mullin, P. Nichols, R. Peverati, J. Pittner, Y. Zhao, P.-D. Fan, + A. Fonari, M. J. Williamson, R. J. Harrison, J. R. Rehr, M. Dupuis, + D. Silverstein, D. M. A. Smith, J. Nieplocha, V. Tipparaju, M. Krishnan, + B. E. Van Kuiken, A. Vazquez-Mayagoitia, M. Swart, Q. Wu, T. Van Voorhis, + A. A. Auer, M. Nooijen, L. D. Crosby, E. Brown, G. Cisneros, G. I. Fann, + H. Fruchtl, J. Garza, K. Hirao, R. A. Kendall, J. A. Nichols, K. Tsemekhman, + K. Wolinski, J. Anchell, D. E. Bernholdt, P. Borowski, T. Clark, D. Clerc, + H. Dachsel, M. J. O. Deegan, K. Dyall, D. Elwood, E. Glendening, M. Gutowski, + A. C. Hess, J. Jaffe, B. G. Johnson, J. Ju, R. Kobayashi, R. Kutteh, Z. Lin, + R. Littlefield, X. Long, B. Meng, T. Nakajima, S. Niu, L. Pollack, M. Rosing, + K. Glaesemann, G. Sandrone, M. Stave, H. Taylor, G. Thomas, J. H. van Lenthe, + A. T. Wong, Z. Zhang. + + Total times cpu: 3.4s wall: 3.6s diff --git a/QA/tests/localize-ibo-aa/localize-ibo-aa.nw b/QA/tests/localize-ibo-aa/localize-ibo-aa.nw index 049887f2a7..3a1b422a5c 100644 --- a/QA/tests/localize-ibo-aa/localize-ibo-aa.nw +++ b/QA/tests/localize-ibo-aa/localize-ibo-aa.nw @@ -71,7 +71,7 @@ convergence energy 1e-10 end property - localization ibo + localization ibo 2 end task scf property diff --git a/QA/tests/localize-ibo-aa/localize-ibo-aa.out b/QA/tests/localize-ibo-aa/localize-ibo-aa.out index ee86c74cb0..adfec65d11 100644 --- a/QA/tests/localize-ibo-aa/localize-ibo-aa.out +++ b/QA/tests/localize-ibo-aa/localize-ibo-aa.out @@ -1,4 +1,4 @@ -running on 4 processors +running on 6 processors argument 1 = acrylic-acid.nw @@ -77,12 +77,14 @@ convergence energy 1e-10 end property - localization ibo + localization ibo 2 end +#task scf energy task scf property + ================================================================================ @@ -90,7 +92,7 @@ task scf property - Northwest Computational Chemistry Package (NWChem) 7.0.1 + Northwest Computational Chemistry Package (NWChem) 7.2.0 -------------------------------------------------------- @@ -98,7 +100,7 @@ task scf property Pacific Northwest National Laboratory Richland, WA 99352 - Copyright (c) 1994-2020 + Copyright (c) 1994-2022 Pacific Northwest National Laboratory Battelle Memorial Institute @@ -123,21 +125,21 @@ task scf property Job information --------------- - hostname = ja31 - program = /home/workspace/jochena/nwchem/github-fork-ibo-devel/bin/LINUX64/nwchem - date = Thu May 5 15:37:05 2022 + hostname = ja04 + program = /home/workspace/jochena/nwchem/github-fork-ibovir-devel/bin/LINUX64/nwchem + date = Tue Feb 14 12:19:49 2023 - compiled = Thu_May_05_15:36:59_2022 - source = /home/workspace/jochena/nwchem/github-fork-ibo-devel - nwchem branch = 7.0.0 - nwchem revision = nwchem_on_git-3953-g107e8544ce - ga revision = 5.8.1 - use scalapack = T + compiled = Tue_Feb_14_12:19:44_2023 + source = /home/workspace/jochena/nwchem/github-fork-ibovir-devel + nwchem branch = 7.2.0 + nwchem revision = nwchem_on_git-4622-g8f291f7cfd + ga revision = 5.8.0 + use scalapack = F input = acrylic-acid.nw prefix = testjob. data base = ./testjob.db status = startup - nproc = 3 + nproc = 5 time left = -1s @@ -145,10 +147,10 @@ task scf property Memory information ------------------ - heap = 6553596 doubles = 50.0 Mbytes - stack = 6553601 doubles = 50.0 Mbytes + heap = 6553598 doubles = 50.0 Mbytes + stack = 6553595 doubles = 50.0 Mbytes global = 13107200 doubles = 100.0 Mbytes (distinct from heap & stack) - total = 26214397 doubles = 200.0 Mbytes + total = 26214393 doubles = 200.0 Mbytes verify = yes hardfail = no @@ -265,7 +267,7 @@ task scf property library name resolved from: environment library file name is: < - /home/workspace/jochena/nwchem/github-fork-ibo-devel/src/basis/libraries/> + /home/workspace/jochena/nwchem/github-fork-ibovir-devel/src/basis/libraries/> @@ -278,7 +280,7 @@ task scf property library name resolved from: environment library file name is: < - /home/workspace/jochena/nwchem/github-fork-ibo-devel/src/basis/libraries/> + /home/workspace/jochena/nwchem/github-fork-ibovir-devel/src/basis/libraries/> Basis "iao basis" -> "" (spherical) ----- @@ -502,22 +504,22 @@ task scf property iter energy gnorm gmax time ----- ------------------- --------- --------- -------- - 1 -265.3310324443 1.42D+00 2.92D-01 0.2 - 2 -265.4360577045 4.13D-01 8.78D-02 0.4 - 3 -265.4514376314 3.64D-02 9.22D-03 0.8 - 4 -265.4516512505 1.03D-03 2.34D-04 1.3 - 5 -265.4516513710 7.80D-06 1.92D-06 1.9 + 1 -265.3310324443 1.42D+00 2.92D-01 0.1 + 2 -265.4360577045 4.13D-01 8.78D-02 0.2 + 3 -265.4514376314 3.64D-02 9.22D-03 0.4 + 4 -265.4516512505 1.03D-03 2.34D-04 0.6 + 5 -265.4516513711 7.80D-06 1.92D-06 0.9 Final RHF results ------------------ - Total SCF energy = -265.451651371048 - One-electron energy = -682.442839763839 + Total SCF energy = -265.451651371050 + One-electron energy = -682.442839763841 Two-electron energy = 255.473969802116 Nuclear repulsion energy = 161.517218590675 - Time for solution = 1.8s + Time for solution = 0.9s Final eigenvalues @@ -558,7 +560,7 @@ task scf property ------------------------------------- Vector 6 Occ=2.000000D+00 E=-1.441125D+00 - MO Center= -1.1D+00, 2.6D-02, -3.4D-17, r^2= 1.2D+00 + MO Center= -1.1D+00, 2.6D-02, -2.1D-17, r^2= 1.2D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 58 0.413566 5 O s 30 0.293845 3 C s @@ -566,7 +568,7 @@ task scf property 57 0.208468 5 O s 45 0.150994 4 O s Vector 7 Occ=2.000000D+00 E=-1.338769D+00 - MO Center= -9.1D-01, -4.1D-01, -2.6D-17, r^2= 1.4D+00 + MO Center= -9.1D-01, -4.1D-01, 6.6D-17, r^2= 1.4D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 44 0.424994 4 O s 58 -0.352816 5 O s @@ -575,7 +577,7 @@ task scf property 57 -0.176450 5 O s Vector 8 Occ=2.000000D+00 E=-1.070923D+00 - MO Center= 1.1D+00, 2.8D-01, -4.7D-17, r^2= 1.5D+00 + MO Center= 1.1D+00, 2.8D-01, 3.4D-17, r^2= 1.5D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 16 0.400200 2 C s 2 0.337172 1 C s @@ -583,7 +585,7 @@ task scf property 17 0.160365 2 C s Vector 9 Occ=2.000000D+00 E=-8.974613D-01 - MO Center= 2.3D-01, 2.6D-01, -9.8D-17, r^2= 3.3D+00 + MO Center= 2.3D-01, 2.6D-01, -1.0D-16, r^2= 3.3D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 30 -0.305983 3 C s 2 0.303431 1 C s @@ -592,7 +594,7 @@ task scf property 1 -0.152955 1 C s Vector 10 Occ=2.000000D+00 E=-7.642057D-01 - MO Center= 1.6D-01, 3.0D-01, 1.4D-16, r^2= 4.1D+00 + MO Center= 1.6D-01, 3.0D-01, 5.3D-16, r^2= 4.1D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 60 0.316925 5 O px 16 -0.241192 2 C s @@ -602,7 +604,7 @@ task scf property 4 0.156757 1 C px 71 0.155748 6 H s Vector 11 Occ=2.000000D+00 E=-7.114488D-01 - MO Center= 2.7D-01, 9.8D-03, -1.4D-16, r^2= 3.1D+00 + MO Center= 2.7D-01, 9.8D-03, -3.3D-16, r^2= 3.1D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 19 0.248395 2 C py 81 0.212079 8 H s @@ -612,7 +614,7 @@ task scf property 44 0.168207 4 O s 46 -0.165171 4 O px Vector 12 Occ=2.000000D+00 E=-6.942998D-01 - MO Center= -5.7D-01, -1.8D-01, 7.4D-17, r^2= 3.0D+00 + MO Center= -5.7D-01, -1.8D-01, -2.1D-16, r^2= 3.0D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 61 0.332130 5 O py 47 -0.285481 4 O py @@ -622,7 +624,7 @@ task scf property 33 0.150516 3 C py Vector 13 Occ=2.000000D+00 E=-6.290129D-01 - MO Center= -9.9D-01, 1.2D-01, 2.6D-16, r^2= 1.6D+00 + MO Center= -9.9D-01, 1.2D-01, -3.2D-16, r^2= 1.6D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 62 0.438625 5 O pz 65 0.308876 5 O pz @@ -630,7 +632,7 @@ task scf property 51 0.167682 4 O pz 37 0.158757 3 C pz Vector 14 Occ=2.000000D+00 E=-6.234118D-01 - MO Center= 8.0D-01, 1.3D-02, -1.6D-16, r^2= 3.8D+00 + MO Center= 8.0D-01, 1.3D-02, 4.5D-16, r^2= 3.8D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 4 0.334286 1 C px 76 0.262842 7 H s @@ -639,7 +641,7 @@ task scf property 18 -0.161739 2 C px Vector 15 Occ=2.000000D+00 E=-5.982438D-01 - MO Center= -2.3D-02, 2.4D-01, -5.0D-17, r^2= 3.5D+00 + MO Center= -2.3D-02, 2.4D-01, -3.8D-17, r^2= 3.5D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 61 0.305744 5 O py 18 0.273635 2 C px @@ -649,7 +651,7 @@ task scf property 33 -0.180575 3 C py 71 -0.170295 6 H s Vector 16 Occ=2.000000D+00 E=-5.496397D-01 - MO Center= 1.1D+00, 6.0D-02, 2.5D-17, r^2= 3.3D+00 + MO Center= 1.1D+00, 6.0D-02, 3.0D-16, r^2= 3.3D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 5 0.298431 1 C py 71 -0.271981 6 H s @@ -658,7 +660,7 @@ task scf property 33 0.163556 3 C py 61 -0.150120 5 O py Vector 17 Occ=2.000000D+00 E=-4.889073D-01 - MO Center= -9.0D-01, -2.5D-01, -6.7D-17, r^2= 2.0D+00 + MO Center= -9.0D-01, -2.5D-01, -5.3D-16, r^2= 2.0D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 62 -0.430815 5 O pz 48 0.407766 4 O pz @@ -666,7 +668,7 @@ task scf property 34 0.166236 3 C pz Vector 18 Occ=2.000000D+00 E=-4.582158D-01 - MO Center= -5.2D-01, -7.3D-01, -9.6D-17, r^2= 1.9D+00 + MO Center= -5.2D-01, -7.3D-01, -1.6D-16, r^2= 1.9D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 46 0.549426 4 O px 49 0.417524 4 O px @@ -674,7 +676,7 @@ task scf property 64 -0.174821 5 O py 18 0.151160 2 C px Vector 19 Occ=2.000000D+00 E=-4.009704D-01 - MO Center= 1.1D+00, 1.5D-01, -2.0D-16, r^2= 2.0D+00 + MO Center= 1.1D+00, 1.5D-01, -4.1D-16, r^2= 2.0D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 20 0.384445 2 C pz 6 0.352495 1 C pz @@ -682,7 +684,7 @@ task scf property 48 -0.214439 4 O pz 51 -0.173233 4 O pz Vector 20 Occ=0.000000D+00 E= 9.067747D-02 - MO Center= 8.9D-01, 1.5D-02, 2.7D-17, r^2= 3.0D+00 + MO Center= 8.9D-01, 1.5D-02, 9.9D-17, r^2= 3.0D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 9 0.621145 1 C pz 23 -0.459696 2 C pz @@ -692,7 +694,7 @@ task scf property 65 0.155474 5 O pz Vector 21 Occ=0.000000D+00 E= 1.933962D-01 - MO Center= -2.6D+00, 1.3D-01, -3.0D-16, r^2= 2.6D+00 + MO Center= -2.6D+00, 1.3D-01, 2.0D-16, r^2= 2.6D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 87 1.532433 9 H s 17 -0.762684 2 C s @@ -702,7 +704,7 @@ task scf property 60 0.181785 5 O px 3 0.180050 1 C s Vector 22 Occ=0.000000D+00 E= 1.990748D-01 - MO Center= 2.4D+00, 1.2D+00, -1.1D-16, r^2= 4.4D+00 + MO Center= 2.4D+00, 1.2D+00, 5.2D-17, r^2= 4.4D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 3 1.857859 1 C s 77 -1.791874 7 H s @@ -712,7 +714,7 @@ task scf property 8 0.218519 1 C py 35 0.169789 3 C px Vector 23 Occ=0.000000D+00 E= 2.314259D-01 - MO Center= 1.7D+00, -2.0D-01, -9.3D-17, r^2= 6.0D+00 + MO Center= 1.7D+00, -2.0D-01, 9.0D-16, r^2= 6.0D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 3 1.936960 1 C s 72 -1.805329 6 H s @@ -721,7 +723,7 @@ task scf property 8 -0.489914 1 C py 5 -0.154259 1 C py Vector 24 Occ=0.000000D+00 E= 2.626515D-01 - MO Center= 1.3D-01, -2.5D-02, -4.7D-16, r^2= 2.9D+00 + MO Center= 1.3D-01, -2.5D-02, 7.6D-16, r^2= 2.9D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 37 -0.804941 3 C pz 23 0.756689 2 C pz @@ -731,7 +733,7 @@ task scf property 62 0.158924 5 O pz Vector 25 Occ=0.000000D+00 E= 2.688800D-01 - MO Center= 1.9D+00, 3.8D-01, 5.4D-16, r^2= 6.9D+00 + MO Center= 1.9D+00, 3.8D-01, -1.8D-15, r^2= 6.9D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 77 -1.706163 7 H s 72 1.689090 6 H s @@ -741,7 +743,7 @@ task scf property 87 -0.319009 9 H s 3 -0.288918 1 C s Vector 26 Occ=0.000000D+00 E= 3.855495D-01 - MO Center= -4.6D-01, -2.3D-01, 1.1D-16, r^2= 3.7D+00 + MO Center= -4.6D-01, -2.3D-01, -1.7D-16, r^2= 3.7D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 31 4.026240 3 C s 45 -1.439431 4 O s @@ -751,7 +753,7 @@ task scf property 50 -0.560923 4 O py 82 -0.528079 8 H s Vector 27 Occ=0.000000D+00 E= 4.475195D-01 - MO Center= 5.8D-01, 2.5D-01, -9.4D-17, r^2= 3.9D+00 + MO Center= 5.8D-01, 2.5D-01, 3.4D-16, r^2= 3.9D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 21 3.533345 2 C px 3 -2.731556 1 C s @@ -761,7 +763,7 @@ task scf property 7 0.878572 1 C px 30 0.524028 3 C s Vector 28 Occ=0.000000D+00 E= 4.523376D-01 - MO Center= 1.5D+00, -1.4D-01, 9.3D-17, r^2= 4.3D+00 + MO Center= 1.5D+00, -1.4D-01, -3.7D-16, r^2= 4.3D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 17 6.048068 2 C s 3 -4.672145 1 C s @@ -771,7 +773,7 @@ task scf property 59 -0.983223 5 O s 36 0.975052 3 C py Vector 29 Occ=0.000000D+00 E= 4.789847D-01 - MO Center= 2.6D-01, 3.3D-01, -1.0D-16, r^2= 3.8D+00 + MO Center= 2.6D-01, 3.3D-01, 2.1D-18, r^2= 3.8D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 17 2.858248 2 C s 3 -2.090889 1 C s @@ -781,7 +783,7 @@ task scf property 35 0.814942 3 C px 63 0.614144 5 O px Vector 30 Occ=0.000000D+00 E= 5.702926D-01 - MO Center= 1.4D+00, 5.8D-01, 2.3D-15, r^2= 2.8D+00 + MO Center= 1.4D+00, 5.8D-01, -1.9D-15, r^2= 2.8D+00 Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function ----- ------------ --------------- ----- ------------ --------------- 17 2.332617 2 C s 31 -1.303425 3 C s @@ -831,7 +833,7 @@ task scf property 2 1 1 0 0.077897 0.000000 0.000002 2 1 0 1 0.000000 0.000000 0.000000 2 0 2 0 -24.880694 0.000000 90.697964 - 2 0 1 1 0.000000 0.000000 0.000000 + 2 0 1 1 -0.000000 0.000000 0.000000 2 0 0 2 -22.450650 0.000000 0.000000 @@ -842,19 +844,20 @@ task scf property *** ORBITAL LOCALIZATION *** **************************** - IAO-IBO localization - -------------------- + IAO-IBO localization + -------------------- + (occ and virt orbitals) - IBO loc: largest element in C(iao, trans) S C(iao) -1: 0.000000000000 + IBO loc: largest element in C(iao,T) S C(iao) -1: 0.00000000 Significant deviations from zero may indicate elevated numerical noise in the IAO generation - IBO loc: largest element of C(MO, trans) C(MO) -1: 0.000000000000 + IBO loc: largest element in C(MO,T) C(MO) -1: 0.00000000 should be zero, for CMOs in the IAO basis iter Max. delocal Mean delocal Converge - ---- ------------ ------------ --------- + ---- ------------ ------------ -------- 1 6.4744549430 3.2718681346 0.00D+00 2 2.9502374379 1.7407413313 7.84D-01 3 2.1535052593 1.5156908043 6.80D-01 @@ -863,10 +866,10 @@ task scf property 6 2.1555070209 1.5083589529 8.63D-05 7 2.1555070209 1.5083589538 6.36D-06 8 2.1555070209 1.5083589538 9.22D-08 - 9 2.1555070209 1.5083589538 0.00D+00 + 9 2.1555070209 1.5083589538 3.73D-09 - IBO loc: largest element of C(MO, trans) C(MO) -1: 0.000000000000 - should be zero, for LMOs in the IAO basis + IBO loc: largest element in C(MO,T) C(MO) -1: 0.00000000 + should be zero, for IBOs in the IAO basis IAO-IBO localized orbitals @@ -890,9 +893,59 @@ task scf property 18 -0.507592 2.000 4( 0.93) 3( 0.04) 5( 0.01) 2( 0.01) 19 -0.424380 2.000 2( 0.53) 1( 0.43) 3( 0.04) + + IBO localization (occ): IBOs will be stored + in file locorb.movecs, number + 1 to 19 + + + IBO loc: largest element in C(iao,T) S C(iao) -1: 0.00000000 + Significant deviations from zero may indicate + elevated numerical noise in the IAO generation + + non-zero singular values: 10 + + IBO loc: largest element in C(MO,T) C(MO) -1: 0.00000000 + should be zero, for CMOs in the IAO basis + + iter Max. delocal Mean delocal Converge + ---- ------------ ------------ -------- + 1 5.7963239473 4.2732750386 0.00D+00 + 2 2.4941110119 2.1820228090 7.23D-01 + 3 2.1364906389 1.9920797446 4.32D-01 + 4 2.1348072188 1.9904017968 1.39D-01 + 5 2.1348013497 1.9903805756 9.02D-03 + 6 2.1348017491 1.9903804736 7.84D-04 + 7 2.1348017624 1.9903804751 5.13D-05 + 8 2.1348017624 1.9903804751 3.41D-06 + 9 2.1348017624 1.9903804751 2.26D-07 + 10 2.1348017624 1.9903804751 1.34D-08 + 11 2.1348017624 1.9903804751 5.27D-09 + + IBO loc: largest element in C(MO,T) C(MO) -1: 0.00000000 + should be zero, for IBOs in the IAO basis + + IAO-IBO localized orbitals + + 1 0.209314 0.000 1( 0.55) 2( 0.44) + 2 0.251712 0.000 3( 0.64) 4( 0.25) 5( 0.07) 2( 0.03) + 3 0.441767 0.000 9( 0.69) 5( 0.30) + 4 0.571110 0.000 7( 0.57) 1( 0.42) + 5 0.576430 0.000 6( 0.58) 1( 0.41) + 6 0.588168 0.000 8( 0.57) 2( 0.42) + 7 0.612417 0.000 3( 0.61) 5( 0.34) 4( 0.04) + 8 0.678788 0.000 2( 0.50) 3( 0.47) 4( 0.02) + 9 0.845663 0.000 3( 0.59) 4( 0.40) + 10 0.862369 0.000 1( 0.50) 2( 0.50) + + + IBO localization (vir): IBOs will be stored + in file locorb.movecs, number + 20 to 29 + Exiting Localization driver routine - Task times cpu: 2.0s wall: 2.1s + Task times cpu: 1.0s wall: 1.2s NWChem Input Module @@ -914,7 +967,7 @@ MA usage statistics: current number of blocks 0 0 maximum number of blocks 22 14 current total bytes 0 0 - maximum total bytes 139392 22511336 + maximum total bytes 139376 22511288 maximum total K-bytes 140 22512 maximum total M-bytes 1 23 @@ -954,10 +1007,10 @@ MA usage statistics: ------- E. Apra, E. J. Bylaska, N. Govind, K. Kowalski, M. Valiev, D. Mejia-Rodriguez, A. Kunitsa, N. P. Bauman, A. Panyala, W. A. de Jong, T. P. Straatsma, - H. J. J. van Dam, D. Wang, T. L. Windus, J. Hammond, J. Autschbach, + H. J. J. van Dam, D. Wang, T. L. Windus, J. Hammond, J. Autschbach, A. Woods, K. Bhaskaran-Nair, J. Brabec, K. Lopata, S. A. Fischer, S. Krishnamoorthy, M. Jacquelin, W. Ma, M. Klemm, O. Villa, Y. Chen, V. Anisimov, F. Aquino, - S. Hirata, M. T. Hackler, Eric Hermes, L. Jensen, J. E. Moore, J. C. Becca, + S. Hirata, M. T. Hackler, E. Hermes, L. Jensen, J. E. Moore, J. C. Becca, V. Konjkov, T. Risthaus, M. Malagoli, A. Marenich, A. Otero-de-la-Roza, J. Mullin, P. Nichols, R. Peverati, J. Pittner, Y. Zhao, P.-D. Fan, A. Fonari, M. J. Williamson, R. J. Harrison, J. R. Rehr, M. Dupuis, @@ -972,4 +1025,4 @@ MA usage statistics: K. Glaesemann, G. Sandrone, M. Stave, H. Taylor, G. Thomas, J. H. van Lenthe, A. T. Wong, Z. Zhang. - Total times cpu: 2.0s wall: 2.1s + Total times cpu: 1.0s wall: 1.2s diff --git a/QA/tests/scf_dftguess/scf_dftguess.nw b/QA/tests/scf_dftguess/scf_dftguess.nw new file mode 100644 index 0000000000..75d26f38e7 --- /dev/null +++ b/QA/tests/scf_dftguess/scf_dftguess.nw @@ -0,0 +1,56 @@ +# +# $Id$ +# + +title "3 Water molecules scf with DFT hfexch" + +start h2o + +geometry autosym + O -0.167787 1.645761 0.108747 + H 0.613411 1.102620 0.113724 + H -0.093821 2.209720 -0.643619 + O 1.517569 -0.667424 -0.080674 + H 1.989645 -1.098799 0.612047 + H 0.668397 -1.091798 -0.139744 + O -1.350388 -0.964879 -0.092208 + H -1.908991 -1.211298 0.626207 + H -1.263787 -0.018107 -0.055536 +end + + +basis + H library aug-cc-pvdz + O library aug-cc-pvtz +end +set dftguess t +scf +#uhf +#triplet +end +task scf +eof +driver + clear +end +set movecs:tanalyze 0d0 +task dft +eof +dft +xc hfexch +end +scf +print 'final vector analysis' "final vector analysis" +end +#task dft +#eof +set forces:fakezero t +task scf optimize +eof +task dft gradient +eof + +scf; print low; end +task scf optimize + + diff --git a/QA/tests/scf_dftguess/scf_dftguess.out b/QA/tests/scf_dftguess/scf_dftguess.out new file mode 100644 index 0000000000..47b4736217 --- /dev/null +++ b/QA/tests/scf_dftguess/scf_dftguess.out @@ -0,0 +1,1026 @@ +No protocol specified + argument 1 = /home/edo/park/nwchem-scfhacks/QA/tests/scf_dftguess/scf_dftguess.nw + + + + + Northwest Computational Chemistry Package (NWChem) 7.2.0 + -------------------------------------------------------- + + + Environmental Molecular Sciences Laboratory + Pacific Northwest National Laboratory + Richland, WA 99352 + + Copyright (c) 1994-2022 + Pacific Northwest National Laboratory + Battelle Memorial Institute + + NWChem is an open-source computational chemistry package + distributed under the terms of the + Educational Community License (ECL) 2.0 + A copy of the license is included with this distribution + in the LICENSE.TXT file + + ACKNOWLEDGMENT + -------------- + + This software and its documentation were developed at the + EMSL at Pacific Northwest National Laboratory, a multiprogram + national laboratory, operated for the U.S. Department of Energy + by Battelle under Contract Number DE-AC05-76RL01830. Support + for this work was provided by the Department of Energy Office + of Biological and Environmental Research, Office of Basic + Energy Sciences, and the Office of Advanced Scientific Computing. + + + Job information + --------------- + + hostname = lagrange + program = /home/edo/park/nwchem-scfhacks/bin/LINUX64/nwchem + date = Tue Feb 28 22:19:10 2023 + + compiled = Tue_Feb_28_19:08:02_2023 + source = /home/edo/park/nwchem-scfhacks + nwchem branch = 7.2.0 + nwchem revision = v7.2.0-beta1-333-gdc47eb411b + ga revision = 5.8.0 + use scalapack = T + input = /home/edo/park/nwchem-scfhacks/QA/tests/scf_dftguess/scf_dftguess.nw + prefix = h2o. + data base = ./h2o.db + status = startup + nproc = 3 + time left = -1s + + + + Memory information + ------------------ + + heap = 26214400 doubles = 200.0 Mbytes + stack = 26214397 doubles = 200.0 Mbytes + global = 52428800 doubles = 400.0 Mbytes (distinct from heap & stack) + total = 104857597 doubles = 800.0 Mbytes + verify = yes + hardfail = no + + + Directory information + --------------------- + + 0 permanent = . + 0 scratch = . + + + + + NWChem Input Module + ------------------- + + + 3 Water molecules scf with DFT hfexch + ------------------------------------- + + Scaling coordinates for geometry "geometry" by 1.889725989 + (inverse scale = 0.529177249) + + C1 symmetry detected + + ------ + auto-z + ------ + autoz: The atoms group into disjoint clusters + cluster 1: 1 2 3 + cluster 2: 4 5 6 + cluster 3: 7 8 9 + Connecting clusters 1 2 via atoms 2 4 r = 2.00 + Connecting clusters 1 3 via atoms 1 9 r = 2.00 + Connecting clusters 2 3 via atoms 6 7 r = 2.02 + autoz: regenerating connections with new bonds + no constraints, skipping 0.0000000000000000 + no constraints, skipping 0.0000000000000000 + + + Geometry "geometry" -> "" + ------------------------- + + Output coordinates in angstroms (scale by 1.889725989 to convert to a.u.) + + No. Tag Charge X Y Z + ---- ---------------- ---------- -------------- -------------- -------------- + 1 O 8.0000 1.65703672 0.00926094 0.05148830 + 2 H 1.0000 1.04209083 -0.71634738 0.07661474 + 3 H 1.0000 2.18496508 -0.11719194 -0.71979416 + 4 O 8.0000 -0.81205195 -1.44656074 -0.05488067 + 5 H 1.0000 -1.26243070 -1.87624242 0.65316958 + 6 H 1.0000 -1.15495666 -0.56056462 -0.10073774 + 7 O 8.0000 -0.83375674 1.43671503 -0.06117043 + 8 H 1.0000 -1.00056549 2.01522527 0.66435042 + 9 H 1.0000 0.10107266 1.25979921 -0.05710044 + + Atomic Mass + ----------- + + O 15.994910 + H 1.007825 + + + Effective nuclear repulsion energy (a.u.) 83.5217415311 + + Nuclear Dipole moment (a.u.) + ---------------------------- + X Y Z + ---------------- ---------------- ---------------- + 0.0000000000 0.0000000000 -0.0000000000 + + + + Z-matrix (autoz) + -------- + + Units are Angstrom for bonds and degrees for angles + + Type Name I J K L M Value + ----------- -------- ----- ----- ----- ----- ----- ---------- + 1 Stretch 1 9 1.99917 + 2 Stretch 1 2 0.95147 + 3 Stretch 1 3 0.94317 + 4 Stretch 2 4 1.99708 + 5 Stretch 4 5 0.94276 + 6 Stretch 4 6 0.95114 + 7 Stretch 6 7 2.02333 + 8 Stretch 7 8 0.94280 + 9 Stretch 7 9 0.95143 + 10 Bend 1 9 7 151.79638 + 11 Bend 1 2 4 151.30106 + 12 Bend 2 4 5 124.10594 + 13 Bend 2 4 6 89.84490 + 14 Bend 2 1 9 88.59305 + 15 Bend 2 1 3 106.32667 + 16 Bend 3 1 9 118.36552 + 17 Bend 4 6 7 149.46717 + 18 Bend 5 4 6 106.77013 + 19 Bend 6 7 8 126.34654 + 20 Bend 6 7 9 88.42467 + 21 Bend 8 7 9 106.53777 + 22 Torsion 1 9 7 6 -7.26751 + 23 Torsion 1 9 7 8 120.34445 + 24 Torsion 1 2 4 5 -117.61823 + 25 Torsion 1 2 4 6 -7.33649 + 26 Torsion 2 4 6 7 -3.12649 + 27 Torsion 2 1 9 7 3.70748 + 28 Torsion 3 1 9 7 111.54424 + 29 Torsion 3 1 2 4 -111.67755 + 30 Torsion 4 2 1 9 7.53252 + 31 Torsion 4 6 7 8 -102.38658 + 32 Torsion 4 6 7 9 7.08262 + 33 Torsion 5 4 6 7 122.66365 + + + XYZ format geometry + ------------------- + 9 + geometry + O 1.65703672 0.00926094 0.05148830 + H 1.04209083 -0.71634738 0.07661474 + H 2.18496508 -0.11719194 -0.71979416 + O -0.81205195 -1.44656074 -0.05488067 + H -1.26243070 -1.87624242 0.65316958 + H -1.15495666 -0.56056462 -0.10073774 + O -0.83375674 1.43671503 -0.06117043 + H -1.00056549 2.01522527 0.66435042 + H 0.10107266 1.25979921 -0.05710044 + + ============================================================================== + internuclear distances + ------------------------------------------------------------------------------ + center one | center two | atomic units | angstroms + ------------------------------------------------------------------------------ + 2 H | 1 O | 1.79802 | 0.95147 + 3 H | 1 O | 1.78234 | 0.94317 + 5 H | 4 O | 1.78156 | 0.94276 + 6 H | 4 O | 1.79740 | 0.95114 + 8 H | 7 O | 1.78164 | 0.94280 + 9 H | 7 O | 1.79794 | 0.95143 + ------------------------------------------------------------------------------ + number of included internuclear distances: 6 + ============================================================================== + + + + ============================================================================== + internuclear angles + ------------------------------------------------------------------------------ + center 1 | center 2 | center 3 | degrees + ------------------------------------------------------------------------------ + 2 H | 1 O | 3 H | 106.33 + 5 H | 4 O | 6 H | 106.77 + 8 H | 7 O | 9 H | 106.54 + ------------------------------------------------------------------------------ + number of included internuclear angles: 3 + ============================================================================== + + + + warning:::::::::::::: from_nwchemrc + NWCHEM_BASIS_LIBRARY set to: + but file does not exist ! + using compiled in library + Basis "ao basis" -> "" (cartesian) + ----- + H (Hydrogen) + ------------ + Exponent Coefficients + -------------- --------------------------------------------------------- + 1 S 1.30100000E+01 0.019685 + 1 S 1.96200000E+00 0.137977 + 1 S 4.44600000E-01 0.478148 + + 2 S 1.22000000E-01 1.000000 + + 3 S 2.97400000E-02 1.000000 + + 4 P 7.27000000E-01 1.000000 + + 5 P 1.41000000E-01 1.000000 + + O (Oxygen) + ---------- + Exponent Coefficients + -------------- --------------------------------------------------------- + 1 S 1.53300000E+04 0.000508 + 1 S 2.29900000E+03 0.003929 + 1 S 5.22400000E+02 0.020243 + 1 S 1.47300000E+02 0.079181 + 1 S 4.75500000E+01 0.230687 + 1 S 1.67600000E+01 0.433118 + 1 S 6.20700000E+00 0.350260 + 1 S 6.88200000E-01 -0.008154 + + 2 S 1.53300000E+04 -0.000115 + 2 S 2.29900000E+03 -0.000895 + 2 S 5.22400000E+02 -0.004636 + 2 S 1.47300000E+02 -0.018724 + 2 S 4.75500000E+01 -0.058463 + 2 S 1.67600000E+01 -0.136463 + 2 S 6.20700000E+00 -0.175740 + 2 S 6.88200000E-01 0.603418 + + 3 S 1.75200000E+00 1.000000 + + 4 S 2.38400000E-01 1.000000 + + 5 S 7.37600000E-02 1.000000 + + 6 P 3.44600000E+01 0.015928 + 6 P 7.74900000E+00 0.099740 + 6 P 2.28000000E+00 0.310492 + + 7 P 7.15600000E-01 1.000000 + + 8 P 2.14000000E-01 1.000000 + + 9 P 5.97400000E-02 1.000000 + + 10 D 2.31400000E+00 1.000000 + + 11 D 6.45000000E-01 1.000000 + + 12 D 2.14000000E-01 1.000000 + + 13 F 1.42800000E+00 1.000000 + + 14 F 5.00000000E-01 1.000000 + + + + Summary of "ao basis" -> "" (cartesian) + ------------------------------------------------------------------------------ + Tag Description Shells Functions and Types + ---------------- ------------------------------ ------ --------------------- + H aug-cc-pvdz 5 9 3s2p + O aug-cc-pvtz 14 55 5s4p3d2f + + + + NWChem DFT Module + ----------------- + + + 3 Water molecules scf with DFT hfexch + + + + Caching 1-el integrals + WARNING: movecs_in_org=atomic not equal to movecs_in=./h2o.movecs + Time after variat. SCF: 1.3 + Time prior to 1st pass: 1.3 + + Memory utilization after 1st SCF pass: + Heap Space remaining (MW): 26.18 26180512 + Stack Space remaining (MW): 26.21 26213092 + + convergence iter energy DeltaE RMS-Dens Diis-err time + ---------------- ----- ----------------- --------- --------- --------- ------ + d= 0,ls=0.0,diis 1 -228.1030104443 -3.12D+02 2.92D-03 9.16D-01 12.6 + d= 0,ls=0.0,diis 2 -228.1683081298 -6.53D-02 7.57D-04 2.82D-01 14.5 + d= 0,ls=0.0,diis 3 -228.1894336114 -2.11D-02 1.43D-04 3.89D-03 16.4 + d= 0,ls=0.0,diis 4 -228.1899547843 -5.21D-04 4.13D-05 1.58D-04 18.2 + d= 0,ls=0.0,diis 5 -228.1899904893 -3.57D-05 1.17D-05 7.65D-06 20.1 + Resetting Diis + d= 0,ls=0.0,diis 6 -228.1899927980 -2.31D-06 2.57D-06 4.97D-07 22.0 + d= 0,ls=0.0,diis 7 -228.1899929057 -1.08D-07 8.34D-07 1.11D-07 23.8 + d= 0,ls=0.0,diis 8 -228.1899929178 -1.21D-08 2.99D-07 4.08D-08 25.7 + d= 0,ls=0.0,diis 9 -228.1899929215 -3.79D-09 2.43D-07 2.71D-09 27.5 + d= 0,ls=0.0,diis 10 -228.1899929224 -8.72D-10 2.07D-08 1.59D-11 29.4 + d= 0,ls=0.0,diis 11 -228.1899929224 -9.66D-12 3.24D-09 7.84D-13 31.2 + + + Total DFT energy = -228.189992922429 + One electron energy = -480.943718640420 + Coulomb energy = 196.133039768455 + Exchange-Corr. energy = -26.901055581521 + Nuclear repulsion energy = 83.521741531058 + + Numeric. integr. density = 0.000000000000 + + Total iterative time = 29.9s + + + NWChem SCF Module + ----------------- + + + 3 Water molecules scf with DFT hfexch + + + + ao basis = "ao basis" + functions = 219 + atoms = 9 + closed shells = 15 + open shells = 0 + charge = 0.00 + wavefunction = RHF + input vectors = ./h2o.movecs + output vectors = ./h2o.movecs + use symmetry = F + symmetry adapt = F + + + Summary of "ao basis" -> "ao basis" (cartesian) + ------------------------------------------------------------------------------ + Tag Description Shells Functions and Types + ---------------- ------------------------------ ------ --------------------- + H aug-cc-pvdz 5 9 3s2p + O aug-cc-pvtz 14 55 5s4p3d2f + + + + Forming initial guess at 31.5s + + + Loading old vectors from job with title : + +3 Water molecules scf with DFT hfexch + + + Starting SCF solution at 31.5s + + + + ---------------------------------------------- + Quadratically convergent ROHF + + Convergence threshold : 1.000E-04 + Maximum no. of iterations : 30 + Final Fock-matrix accuracy: 1.000E-12 + ---------------------------------------------- + + + Integral file = ./h2o.aoints.0 + Record size in doubles = 65536 No. of integs per rec = 43688 + Max. records in memory = 0 Max. records in file = 75188 + No. of bits per label = 8 No. of bits per value = 64 + + + #quartets = 3.391D+06 #integrals = 2.716D+08 #direct = 0.0% #cached =100.0% + + +File balance: exchanges= 2 moved= 1267 time= 2.8 + + + iter energy gnorm gmax time + ----- ------------------- --------- --------- -------- + 1 -228.1899929224 5.10D-07 5.97D-08 38.6 + + + Final RHF results + ------------------ + + Total SCF energy = -228.189992922427 + One-electron energy = -480.943716099008 + Two-electron energy = 169.231981645524 + Nuclear repulsion energy = 83.521741531058 + + Time for solution = 10.0s + + + Final eigenvalues + ----------------- + + 1 + 1 -20.5600 + 2 -20.5583 + 3 -20.5578 + 4 -1.3687 + 5 -1.3541 + 6 -1.3526 + 7 -0.7467 + 8 -0.7222 + 9 -0.7209 + 10 -0.5999 + 11 -0.5954 + 12 -0.5693 + 13 -0.5208 + 14 -0.5085 + 15 -0.5046 + 16 0.0316 + 17 0.0487 + 18 0.0509 + 19 0.0715 + 20 0.0808 + 21 0.0917 + 22 0.1422 + 23 0.1609 + 24 0.1627 + 25 0.1893 + + ROHF Final Molecular Orbital Analysis + ------------------------------------- + + Vector 4 Occ=2.000000D+00 E=-1.368675D+00 + MO Center= -3.4D-02, -1.3D-01, 1.0D-02, r^2= 3.2D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 75 0.311077 4 O s 2 0.285597 1 O s + 148 0.269690 7 O s + + Vector 5 Occ=2.000000D+00 E=-1.354092D+00 + MO Center= -3.7D-01, -5.9D-01, 2.5D-02, r^2= 2.8D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 75 0.400511 4 O s 2 -0.228194 1 O s + 148 -0.219267 7 O s 129 0.178593 5 H s + 138 0.166432 6 H s + + Vector 6 Occ=2.000000D+00 E=-1.352645D+00 + MO Center= 4.0D-01, 7.3D-01, -3.3D-03, r^2= 2.6D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 148 -0.368793 7 O s 2 0.352772 1 O s + 202 -0.165052 8 H s 65 0.156428 3 H s + 211 -0.150383 9 H s + + Vector 7 Occ=2.000000D+00 E=-7.467368D-01 + MO Center= -1.4D-01, -9.0D-02, 2.7D-02, r^2= 3.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 129 0.225412 5 H s 202 0.205641 8 H s + 138 -0.198397 6 H s 65 0.188657 3 H s + 211 -0.175764 9 H s 56 -0.166757 2 H s + 83 -0.160368 4 O py 80 -0.156188 4 O py + + Vector 8 Occ=2.000000D+00 E=-7.221744D-01 + MO Center= 8.2D-01, -3.9D-01, -3.9D-02, r^2= 2.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 65 -0.283743 3 H s 56 0.279898 2 H s + 138 -0.197070 6 H s 66 -0.194468 3 H s + 9 -0.186104 1 O px 57 0.185691 2 H s + 6 -0.179154 1 O px 129 0.157199 5 H s + + Vector 9 Occ=2.000000D+00 E=-7.208598D-01 + MO Center= -6.9D-01, 4.7D-01, 6.2D-02, r^2= 2.8D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 211 -0.282832 9 H s 202 0.261260 8 H s + 129 -0.207795 5 H s 155 -0.191435 7 O px + 138 0.186448 6 H s 152 -0.183110 7 O px + 203 0.159674 8 H s 83 0.153294 4 O py + + Vector 10 Occ=2.000000D+00 E=-5.999242D-01 + MO Center= 4.4D-01, -6.3D-01, -4.5D-04, r^2= 2.9D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 4 0.225141 1 O s 77 -0.216752 4 O s + 82 -0.193398 4 O px 11 0.174168 1 O pz + 79 -0.173840 4 O px 10 0.171958 1 O py + 65 -0.172103 3 H s 8 0.158888 1 O pz + 7 0.154018 1 O py 138 0.151910 6 H s + + Vector 11 Occ=2.000000D+00 E=-5.954291D-01 + MO Center= -5.3D-01, 6.2D-01, -5.8D-02, r^2= 2.8D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 150 0.257696 7 O s 155 -0.186543 7 O px + 202 -0.181551 8 H s 157 -0.172534 7 O pz + 152 -0.167482 7 O px 154 -0.157967 7 O pz + 211 -0.156470 9 H s + + Vector 12 Occ=2.000000D+00 E=-5.693499D-01 + MO Center= 1.1D-01, 1.6D-02, -3.0D-02, r^2= 3.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 4 0.191365 1 O s 150 0.175121 7 O s + 77 0.172032 4 O s 11 0.157545 1 O pz + 10 0.152077 1 O py + + Vector 13 Occ=2.000000D+00 E=-5.207764D-01 + MO Center= -3.1D-01, -1.5D-01, -1.2D-02, r^2= 3.2D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 82 0.221830 4 O px 79 0.190490 4 O px + 156 -0.190000 7 O py 84 0.166968 4 O pz + 153 -0.160480 7 O py 85 0.154494 4 O px + + Vector 14 Occ=2.000000D+00 E=-5.085322D-01 + MO Center= 1.1D+00, -1.9D-01, 1.9D-02, r^2= 2.3D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 9 0.261044 1 O px 6 0.224917 1 O px + 11 0.204930 1 O pz 12 0.187169 1 O px + 8 0.174323 1 O pz 10 -0.165752 1 O py + + Vector 15 Occ=2.000000D+00 E=-5.045579D-01 + MO Center= -7.7D-01, 3.4D-01, -5.2D-02, r^2= 2.8D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 156 0.258890 7 O py 153 0.223072 7 O py + 157 -0.201951 7 O pz 159 0.200074 7 O py + 84 0.177932 4 O pz 154 -0.171874 7 O pz + 81 0.151741 4 O pz + + Vector 16 Occ=0.000000D+00 E= 3.162657D-02 + MO Center= -6.1D-01, -2.1D-02, 9.1D-01, r^2= 1.9D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 204 1.573078 8 H s 131 1.557273 5 H s + 67 1.210698 3 H s 151 -1.104810 7 O s + 5 -1.078306 1 O s 78 -1.048359 4 O s + 203 0.824792 8 H s 66 0.727470 3 H s + 213 -0.727770 9 H s 130 0.721697 5 H s + + Vector 17 Occ=0.000000D+00 E= 4.872657D-02 + MO Center= 2.0D+00, -2.2D-01, -8.2D-01, r^2= 1.9D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 67 2.491222 3 H s 5 -1.643321 1 O s + 66 1.318606 3 H s 131 -1.213096 5 H s + 58 -0.997498 2 H s 204 -0.869588 8 H s + 140 0.639516 6 H s 130 -0.618275 5 H s + 78 0.589644 4 O s 15 -0.520346 1 O px + + Vector 18 Occ=0.000000D+00 E= 5.086184D-02 + MO Center= -1.4D+00, 4.1D-01, 1.2D+00, r^2= 2.0D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 204 2.247753 8 H s 131 -1.918765 5 H s + 151 -1.645105 7 O s 78 1.588816 4 O s + 203 1.310384 8 H s 130 -1.185169 5 H s + 213 -0.600569 9 H s 77 0.519982 4 O s + 162 -0.503185 7 O py 163 -0.446830 7 O pz + + Vector 19 Occ=0.000000D+00 E= 7.148337D-02 + MO Center= -7.1D-01, -8.7D-01, 2.4D-02, r^2= 2.0D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 58 5.057651 2 H s 140 -5.016663 6 H s + 5 -1.909253 1 O s 67 -1.875506 3 H s + 78 1.568217 4 O s 139 -1.542413 6 H s + 57 1.201261 2 H s 204 1.168324 8 H s + 131 1.036439 5 H s 88 -0.738312 4 O px + + Vector 20 Occ=0.000000D+00 E= 8.078357D-02 + MO Center= 4.5D-01, 9.0D-01, -4.5D-01, r^2= 2.2D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 213 7.272144 9 H s 140 -4.017403 6 H s + 58 -3.039647 2 H s 131 2.821211 5 H s + 204 -2.731109 8 H s 151 -1.668077 7 O s + 212 1.538603 9 H s 78 1.082919 4 O s + 161 -0.950194 7 O px 16 -0.799895 1 O py + + Vector 21 Occ=0.000000D+00 E= 9.171058D-02 + MO Center= 3.9D-01, -2.1D-01, -3.6D-01, r^2= 2.2D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 58 4.500422 2 H s 67 -3.773852 3 H s + 213 3.475166 9 H s 131 -2.708314 5 H s + 204 -2.670749 8 H s 140 2.546532 6 H s + 78 -1.757482 4 O s 151 -1.641374 7 O s + 5 -1.502755 1 O s 57 1.260164 2 H s + + Vector 22 Occ=0.000000D+00 E= 1.422028D-01 + MO Center= 7.3D-02, -3.8D-01, 3.3D-01, r^2= 1.4D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 139 -3.333616 6 H s 78 3.104061 4 O s + 5 -2.753792 1 O s 130 -1.617091 5 H s + 140 1.574363 6 H s 57 1.531730 2 H s + 66 1.531209 3 H s 77 1.203306 4 O s + 89 1.162825 4 O py 203 -1.065675 8 H s + + Vector 23 Occ=0.000000D+00 E= 1.608980D-01 + MO Center= 9.3D-02, -7.3D-01, -3.9D-02, r^2= 1.5D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 5 4.874628 1 O s 78 4.597387 4 O s + 130 -3.802628 5 H s 57 -3.750665 2 H s + 66 -3.413202 3 H s 139 -1.790313 6 H s + 90 1.683351 4 O pz 17 -1.570531 1 O pz + 4 1.560480 1 O s 77 1.338779 4 O s + + Vector 24 Occ=0.000000D+00 E= 1.626521D-01 + MO Center= -4.6D-01, 1.1D+00, 1.1D-01, r^2= 1.3D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 151 5.967266 7 O s 212 -4.244705 9 H s + 203 -4.083124 8 H s 5 2.173436 1 O s + 163 1.994003 7 O pz 150 1.939221 7 O s + 66 -1.898333 3 H s 130 1.389191 5 H s + 78 -1.331231 4 O s 161 1.322605 7 O px + + Vector 25 Occ=0.000000D+00 E= 1.892699D-01 + MO Center= -7.9D-02, -3.8D-01, -1.7D-02, r^2= 1.5D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 130 -2.176026 5 H s 78 2.105047 4 O s + 57 2.073701 2 H s 151 1.970934 7 O s + 203 -1.616662 8 H s 139 1.552029 6 H s + 131 -1.378254 5 H s 89 -1.344452 4 O py + 15 1.317860 1 O px 212 1.203537 9 H s + + Vector 26 Occ=0.000000D+00 E= 1.956586D-01 + MO Center= 1.5D+00, -5.2D-01, -2.5D-01, r^2= 1.5D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 66 3.815092 3 H s 67 2.856360 3 H s + 130 -2.622529 5 H s 5 -2.415819 1 O s + 15 -2.382502 1 O px 139 1.821926 6 H s + 131 -1.675385 5 H s 89 -1.663740 4 O py + 57 -1.524868 2 H s 17 1.341091 1 O pz + + Vector 27 Occ=0.000000D+00 E= 1.970578D-01 + MO Center= -1.3D+00, 9.5D-01, 6.1D-01, r^2= 1.6D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 203 4.054539 8 H s 204 2.961877 8 H s + 130 -2.629040 5 H s 151 -2.411065 7 O s + 162 -2.300712 7 O py 78 2.204875 4 O s + 212 -2.053383 9 H s 131 -1.976538 5 H s + 161 1.578746 7 O px 89 -1.495623 4 O py + + Vector 28 Occ=0.000000D+00 E= 2.069122D-01 + MO Center= -8.4D-02, -7.8D-02, -6.6D-02, r^2= 1.6D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 139 2.646497 6 H s 212 2.292191 9 H s + 57 2.241395 2 H s 16 1.741823 1 O py + 88 1.696847 4 O px 161 -1.665356 7 O px + 78 -1.501122 4 O s 89 -1.325264 4 O py + 145 -1.290802 6 H py 151 -1.161256 7 O s + + Vector 29 Occ=0.000000D+00 E= 2.307823D-01 + MO Center= -3.0D-01, -7.7D-01, -2.5D-01, r^2= 1.5D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 140 -5.412677 6 H s 58 5.193652 2 H s + 139 -3.866829 6 H s 78 2.975395 4 O s + 88 -2.006532 4 O px 16 1.737438 1 O py + 57 1.695132 2 H s 213 -1.609499 9 H s + 89 1.455921 4 O py 204 1.376746 8 H s + + Vector 30 Occ=0.000000D+00 E= 2.385220D-01 + MO Center= 1.1D-01, 7.3D-01, -4.2D-02, r^2= 1.6D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 213 7.383604 9 H s 140 -4.425230 6 H s + 212 3.468482 9 H s 5 2.867642 1 O s + 57 -2.622750 2 H s 16 -2.442921 1 O py + 78 -2.258873 4 O s 161 -2.212287 7 O px + 204 -2.120443 8 H s 131 1.869531 5 H s + + Vector 31 Occ=0.000000D+00 E= 2.471081D-01 + MO Center= 1.9D-01, -2.5D-01, -2.1D-01, r^2= 1.3D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 58 5.319519 2 H s 57 3.203779 2 H s + 67 -3.064115 3 H s 66 -2.593891 3 H s + 131 -2.401077 5 H s 151 -2.312792 7 O s + 17 -1.986387 1 O pz 140 1.878137 6 H s + 78 -1.805669 4 O s 212 1.767141 9 H s + + Vector 32 Occ=0.000000D+00 E= 2.557624D-01 + MO Center= 7.3D-01, 2.5D-01, 4.0D-01, r^2= 1.1D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 5 5.737644 1 O s 151 -3.298470 7 O s + 15 -3.167002 1 O px 57 -2.957443 2 H s + 213 -1.541636 9 H s 162 1.183121 7 O py + 78 -1.154977 4 O s 88 -1.147516 4 O px + 67 1.110380 3 H s 161 -1.103467 7 O px + + Vector 33 Occ=0.000000D+00 E= 2.670124D-01 + MO Center= -3.5D-01, -6.3D-02, -7.9D-01, r^2= 1.1D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 78 5.016388 4 O s 151 -4.561498 7 O s + 212 3.665386 9 H s 139 -3.056107 6 H s + 213 2.594675 9 H s 89 2.478138 4 O py + 162 2.162370 7 O py 204 -1.614374 8 H s + 161 -1.500130 7 O px 145 1.395178 6 H py + + Vector 34 Occ=0.000000D+00 E= 3.057316D-01 + MO Center= -8.0D-01, 1.6D-01, 4.1D-01, r^2= 9.3D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 151 3.516638 7 O s 78 2.554838 4 O s + 203 -2.189954 8 H s 130 -2.100903 5 H s + 212 -1.784521 9 H s 213 -1.625462 9 H s + 140 -1.163590 6 H s 139 -1.097261 6 H s + 204 1.088784 8 H s 131 0.791602 5 H s + + Vector 35 Occ=0.000000D+00 E= 3.226513D-01 + MO Center= 1.1D+00, -1.9D-01, -3.9D-01, r^2= 8.0D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 5 4.802632 1 O s 66 -3.254339 3 H s + 78 -2.487281 4 O s 57 -2.344642 2 H s + 212 1.533210 9 H s 151 -1.159063 7 O s + 4 1.079635 1 O s 58 -1.020192 2 H s + 139 0.984355 6 H s 217 -0.840468 9 H px + + Vector 36 Occ=0.000000D+00 E= 3.321422D-01 + MO Center= 8.8D-02, -5.6D-02, 1.6D-01, r^2= 9.1D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 151 3.480069 7 O s 78 -2.988930 4 O s + 203 -2.331109 8 H s 130 1.945207 5 H s + 212 -1.520704 9 H s 139 1.466859 6 H s + 72 -0.838304 3 H py 88 0.811178 4 O px + 150 0.783629 7 O s 5 -0.740381 1 O s + + Vector 37 Occ=0.000000D+00 E= 3.565544D-01 + MO Center= -7.1D-01, 3.9D-01, 3.0D-02, r^2= 7.7D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 151 2.954827 7 O s 139 -2.226731 6 H s + 66 1.657720 3 H s 212 -1.651592 9 H s + 78 1.211037 4 O s 158 1.195509 7 O px + 145 0.947323 6 H py 161 0.941722 7 O px + 159 0.906271 7 O py 87 -0.815819 4 O pz + + Vector 38 Occ=0.000000D+00 E= 3.944037D-01 + MO Center= -3.3D-01, -7.9D-02, 1.3D-01, r^2= 8.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 212 2.840710 9 H s 57 -2.201979 2 H s + 213 2.104417 9 H s 130 1.537853 5 H s + 151 -1.284098 7 O s 5 1.239358 1 O s + 78 -1.230174 4 O s 16 -1.212212 1 O py + 163 1.211356 7 O pz 135 1.171226 5 H px + + Vector 39 Occ=0.000000D+00 E= 4.046940D-01 + MO Center= 1.2D-01, -3.7D-02, -1.4D-02, r^2= 7.9D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 139 3.383252 6 H s 78 -2.436366 4 O s + 140 2.346584 6 H s 57 -2.005708 2 H s + 58 -1.855759 2 H s 5 1.825492 1 O s + 4 1.392237 1 O s 203 1.264558 8 H s + 212 -1.243337 9 H s 73 -1.127213 3 H pz + + Vector 40 Occ=0.000000D+00 E= 4.223041D-01 + MO Center= -1.1D-01, -6.8D-01, -4.0D-02, r^2= 8.9D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 78 9.004432 4 O s 130 -6.938691 5 H s + 139 -5.422252 6 H s 57 -4.211123 2 H s + 5 3.802658 1 O s 77 3.067084 4 O s + 66 -2.828937 3 H s 151 2.358100 7 O s + 4 2.274088 1 O s 203 -2.183312 8 H s + + Vector 41 Occ=0.000000D+00 E= 4.308966D-01 + MO Center= 8.5D-01, -6.5D-03, -3.2D-02, r^2= 9.3D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 5 8.327589 1 O s 66 -5.866831 3 H s + 212 -4.089082 9 H s 57 -3.979347 2 H s + 151 3.464534 7 O s 203 -2.899716 8 H s + 78 -2.724531 4 O s 4 2.238771 1 O s + 130 2.178104 5 H s 150 2.163769 7 O s + + Vector 42 Occ=0.000000D+00 E= 4.375423D-01 + MO Center= -6.6D-01, 9.9D-02, 4.3D-01, r^2= 9.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 151 7.072399 7 O s 203 -6.265725 8 H s + 212 -4.126218 9 H s 130 3.430805 5 H s + 78 -2.933106 4 O s 150 2.397394 7 O s + 57 2.178027 2 H s 163 1.895582 7 O pz + 5 -1.608851 1 O s 160 1.509990 7 O pz + + Vector 43 Occ=0.000000D+00 E= 4.561659D-01 + MO Center= 5.6D-01, 1.4D-01, -1.4D-01, r^2= 8.6D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 5 7.053444 1 O s 66 -5.491084 3 H s + 151 -5.162705 7 O s 57 -4.462242 2 H s + 203 4.230571 8 H s 17 -2.148311 1 O pz + 4 2.112282 1 O s 160 -1.702766 7 O pz + 58 1.687011 2 H s 150 -1.606091 7 O s + + Vector 44 Occ=0.000000D+00 E= 4.684593D-01 + MO Center= 1.7D-01, 2.7D-01, 8.0D-02, r^2= 9.5D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 78 5.190608 4 O s 139 -4.095775 6 H s + 5 -3.399209 1 O s 212 3.209299 9 H s + 130 -3.184660 5 H s 66 2.439123 3 H s + 213 2.372141 9 H s 77 1.698485 4 O s + 158 -1.508703 7 O px 15 1.357688 1 O px + + Vector 45 Occ=0.000000D+00 E= 4.805042D-01 + MO Center= -5.6D-01, 1.1D+00, 4.0D-01, r^2= 9.0D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 151 6.277624 7 O s 212 -5.482652 9 H s + 203 -3.314224 8 H s 162 -2.210959 7 O py + 139 -2.077320 6 H s 209 2.067238 8 H py + 5 2.018522 1 O s 150 1.826451 7 O s + 89 -1.570154 4 O py 160 1.551421 7 O pz + + Vector 46 Occ=0.000000D+00 E= 4.852983D-01 + MO Center= 1.1D-02, -8.9D-01, 1.8D-01, r^2= 9.2D+00 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 57 4.911413 2 H s 78 -4.655267 4 O s + 130 3.447908 5 H s 12 2.034454 1 O px + 139 2.006003 6 H s 58 1.866349 2 H s + 88 -1.874364 4 O px 151 1.788868 7 O s + 135 1.756639 5 H px 87 -1.676622 4 O pz + + Vector 47 Occ=0.000000D+00 E= 5.061698D-01 + MO Center= -4.3D-02, 2.3D-02, -1.5D-01, r^2= 1.1D+01 + Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function + ----- ------------ --------------- ----- ------------ --------------- + 66 6.448977 3 H s 139 6.069754 6 H s + 203 -5.619641 8 H s 130 -5.184951 5 H s + 57 -4.554583 2 H s 86 -2.617402 4 O py + 15 -2.370714 1 O px 212 2.374753 9 H s + 73 2.332311 3 H pz 162 2.003091 7 O py + + + center of mass + -------------- + x = 0.00311497 y = -0.00016223 z = -0.01791152 + + moments of inertia (a.u.) + ------------------ + 279.032702923001 0.000000000000 0.000000000000 + 0.000000000000 275.051313939757 -0.000000000000 + 0.000000000000 -0.000000000000 542.928404278519 + + Mulliken analysis of the total density + -------------------------------------- + + Atom Charge Shell Charges + ----------- ------ ------------------------------------------------------- + 1 O 8 7.88 1.94 1.00 0.22 0.38 -0.00 1.30 1.98 0.89 0.02 0.00 -0.05 -0.10 0.16 0.14 + 2 H 1 1.05 0.71 0.25 0.00 0.07 0.01 + 3 H 1 1.07 0.74 0.23 0.00 0.07 0.02 + 4 O 8 7.87 1.94 1.00 0.22 0.39 -0.01 1.30 1.99 0.89 0.02 0.00 -0.06 -0.10 0.16 0.14 + 5 H 1 1.09 0.74 0.25 0.00 0.07 0.03 + 6 H 1 1.04 0.71 0.25 0.00 0.07 0.01 + 7 O 8 7.86 1.94 1.00 0.22 0.38 -0.01 1.30 1.98 0.90 0.02 0.00 -0.06 -0.11 0.16 0.13 + 8 H 1 1.08 0.74 0.24 0.00 0.07 0.03 + 9 H 1 1.06 0.71 0.26 0.00 0.07 0.01 + + Multipole analysis of the density wrt the origin + ------------------------------------------------ + + L x y z total open nuclear + - - - - ----- ---- ------- + 0 0 0 0 -0.000000 0.000000 30.000000 + + 1 1 0 0 -0.076807 0.000000 0.000000 + 1 0 1 0 -0.007536 0.000000 0.000000 + 1 0 0 1 0.435918 0.000000 -0.000000 + + 2 2 0 0 -13.345864 0.000000 152.133852 + 2 1 1 0 0.207876 0.000000 0.220405 + 2 1 0 1 -4.921451 0.000000 -5.087105 + 2 0 2 0 -13.212564 0.000000 154.497896 + 2 0 1 1 0.214656 0.000000 0.225556 + 2 0 0 2 -13.705803 0.000000 5.287361 + + +------------------------------------------------------------ +EAF file 0: "./h2o.aoints.0" size=1087897600 bytes +------------------------------------------------------------ + write read awrite aread wait + ----- ---- ------ ----- ---- + calls: 3342 2 0 1265 1265 + data(b): 1.75e+09 1.05e+06 0.00e+00 6.63e+08 + time(s): 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00 +rate(mb/s): 0.00e+00 0.00e+00 +------------------------------------------------------------ + + + Parallel integral file used 6219 records with 0 large values + + + Task times cpu: 39.1s wall: 43.1s + + + NWChem Input Module + ------------------- + + + Summary of allocated global arrays +----------------------------------- + No active global arrays + + +MA_summarize_allocated_blocks: starting scan ... +MA_summarize_allocated_blocks: scan completed: 0 heap blocks, 0 stack blocks +MA usage statistics: + + allocation statistics: + heap stack + ---- ----- + current number of blocks 0 0 + maximum number of blocks 18 19 + current total bytes 0 0 + maximum total bytes 270616 30899272 + maximum total K-bytes 271 30900 + maximum total M-bytes 1 31 + + + CITATION + -------- + Please cite the following reference when publishing + results obtained with NWChem: + + E. Apra, E. J. Bylaska, W. A. de Jong, N. Govind, K. Kowalski, + T. P. Straatsma, M. Valiev, H. J. J. van Dam, Y. Alexeev, J. Anchell, + V. Anisimov, F. W. Aquino, R. Atta-Fynn, J. Autschbach, N. P. Bauman, + J. C. Becca, D. E. Bernholdt, K. Bhaskaran-Nair, S. Bogatko, P. Borowski, + J. Boschen, J. Brabec, A. Bruner, E. Cauet, Y. Chen, G. N. Chuev, + C. J. Cramer, J. Daily, M. J. O. Deegan, T. H. Dunning Jr., M. Dupuis, + K. G. Dyall, G. I. Fann, S. A. Fischer, A. Fonari, H. Fruchtl, L. Gagliardi, + J. Garza, N. Gawande, S. Ghosh, K. Glaesemann, A. W. Gotz, J. Hammond, + V. Helms, E. D. Hermes, K. Hirao, S. Hirata, M. Jacquelin, L. Jensen, + B. G. Johnson, H. Jonsson, R. A. Kendall, M. Klemm, R. Kobayashi, V. Konkov, + S. Krishnamoorthy, M. Krishnan, Z. Lin, R. D. Lins, R. J. Littlefield, + A. J. Logsdail, K. Lopata, W. Ma, A. V. Marenich, J. Martin del Campo, + D. Mejia-Rodriguez, J. E. Moore, J. M. Mullin, T. Nakajima, D. R. Nascimento, + J. A. Nichols, P. J. Nichols, J. Nieplocha, A. Otero-de-la-Roza, B. Palmer, + A. Panyala, T. Pirojsirikul, B. Peng, R. Peverati, J. Pittner, L. Pollack, + R. M. Richard, P. Sadayappan, G. C. Schatz, W. A. Shelton, D. W. Silverstein, + D. M. A. Smith, T. A. Soares, D. Song, M. Swart, H. L. Taylor, G. S. Thomas, + V. Tipparaju, D. G. Truhlar, K. Tsemekhman, T. Van Voorhis, + A. Vazquez-Mayagoitia, P. Verma, O. Villa, A. Vishnu, K. D. Vogiatzis, + D. Wang, J. H. Weare, M. J. Williamson, T. L. Windus, K. Wolinski, + A. T. Wong, Q. Wu, C. Yang, Q. Yu, M. Zacharias, Z. Zhang, Y. Zhao, + and R. J. Harrison + "NWChem: Past, present, and future + J. Chem. Phys. 152, 184102 (2020) + doi:10.1063/5.0004997 + + AUTHORS + ------- + E. Apra, E. J. Bylaska, N. Govind, K. Kowalski, M. Valiev, D. Mejia-Rodriguez, + A. Kunitsa, N. P. Bauman, A. Panyala, W. A. de Jong, T. P. Straatsma, + H. J. J. van Dam, D. Wang, T. L. Windus, J. Hammond, J. Autschbach, A. Woods, + K. Bhaskaran-Nair, J. Brabec, K. Lopata, S. A. Fischer, S. Krishnamoorthy, + M. Jacquelin, W. Ma, M. Klemm, O. Villa, Y. Chen, V. Anisimov, F. Aquino, + S. Hirata, M. T. Hackler, E. Hermes, L. Jensen, J. E. Moore, J. C. Becca, + V. Konjkov, T. Risthaus, M. Malagoli, A. Marenich, A. Otero-de-la-Roza, + J. Mullin, P. Nichols, R. Peverati, J. Pittner, Y. Zhao, P.-D. Fan, + A. Fonari, M. J. Williamson, R. J. Harrison, J. R. Rehr, M. Dupuis, + D. Silverstein, D. M. A. Smith, J. Nieplocha, V. Tipparaju, M. Krishnan, + B. E. Van Kuiken, A. Vazquez-Mayagoitia, M. Swart, Q. Wu, T. Van Voorhis, + A. A. Auer, M. Nooijen, L. D. Crosby, E. Brown, G. Cisneros, G. I. Fann, + H. Fruchtl, J. Garza, K. Hirao, R. A. Kendall, J. A. Nichols, K. Tsemekhman, + K. Wolinski, J. Anchell, D. E. Bernholdt, P. Borowski, T. Clark, D. Clerc, + H. Dachsel, M. J. O. Deegan, K. Dyall, D. Elwood, E. Glendening, M. Gutowski, + A. C. Hess, J. Jaffe, B. G. Johnson, J. Ju, R. Kobayashi, R. Kutteh, Z. Lin, + R. Littlefield, X. Long, B. Meng, T. Nakajima, S. Niu, L. Pollack, M. Rosing, + K. Glaesemann, G. Sandrone, M. Stave, H. Taylor, G. Thomas, J. H. van Lenthe, + A. T. Wong, Z. Zhang. + + Total times cpu: 39.2s wall: 43.4s diff --git a/contrib/git.nwchem/github_actions_selfhosted.txt b/contrib/git.nwchem/github_actions_selfhosted.txt index 3177b3daa7..c61064d8d0 100644 --- a/contrib/git.nwchem/github_actions_selfhosted.txt +++ b/contrib/git.nwchem/github_actions_selfhosted.txt @@ -141,8 +141,11 @@ jobs: export TRAVIS_BUILD_DIR=`pwd` unset USE_SIMINT mytee=tee - if [[ `uname -s` == "Darwin" ]]; then mytee=gtee; fi - source travis/nwchem.bashrc; cd QA && ./doqmtests.mpi 3 | $mytee >(ts "%d%b%Y %H:%M:%S" > ../../../../doqmtests.mpi.log.` date +%b%d%Y_%H:%M`) + if [[ `uname -s` == "Darwin" ]]; then mytee=gtee; dist=Darwin; fi + if test -f "/usr/lib/os-release"; then dist=$(grep ID= /etc/os-release |grep -v VERSION|head -1 |cut -c4-| sed 's/\"//g') ; fi + if [[ $dist == "fedora" ]]; then nprocs=2; else nprocs=3 ;fi + echo nprocs is $nprocs + source travis/nwchem.bashrc; cd QA && ./doqmtests.mpi $nprocs | $mytee >(ts "%d%b%Y %H:%M:%S" > ../../../../doqmtests.mpi.log.` date +%b%d%Y_%H:%M`) shell: bash - name: Check if QA testing has failed if: ${{ failure() }} && steps.qa_test.outcome == 'failure' diff --git a/src/NWints/simint/libsimint_source/build_simint.sh b/src/NWints/simint/libsimint_source/build_simint.sh index e0d69c0a5d..d518112ba6 100755 --- a/src/NWints/simint/libsimint_source/build_simint.sh +++ b/src/NWints/simint/libsimint_source/build_simint.sh @@ -238,6 +238,7 @@ cd ../.. echo ln -sf simint.l${SIMINT_MAXAM}_p${PERMUTE_SLOW}_d${DERIV}.install simint_install ln -sf simint.l${SIMINT_MAXAM}_p${PERMUTE_SLOW}_d${DERIV}.install simint_install cd simint_install/lib +strip --strip-debug libsimint.a ln -sf libsimint.a libnwc_simint.a export SIMINT_HOME=${SRC_HOME}/simint.l${SIMINT_MAXAM}_p${PERMUTE_SLOW}_d${DERIV}.install echo 'SIMINT library built with maximum angular momentum='${SIMINT_MAXAM} diff --git a/src/ddscf/localize.F b/src/ddscf/localize.F index 6e42a46c1b..8b0862c79a 100644 --- a/src/ddscf/localize.F +++ b/src/ddscf/localize.F @@ -276,9 +276,9 @@ subroutine localizePM(basis, c, sc, nloc, iloc, nbf, nmo, gamma_tol = 1d-10 c if (ga_nodeid() .eq. 0) then - write(6,2) - 2 format(/10x,' iter Max. delocal Mean delocal Converge'/ - $ 10x,' ---- ------------ ------------ ---------') + write(6,9001) + 9001 format(/10x,' iter Max. delocal Mean delocal Converge'/ + & 10x,' ---- ------------ ------------ --------') call util_flush(6) end if c @@ -323,9 +323,9 @@ subroutine localizePM(basis, c, sc, nloc, iloc, nbf, nmo, call ga_dgop(2, d , 1, '+') c if (ga_nodeid() .eq. 0) then - write(6,1) iter, dmax, d/dble(nloc), gamma_max - 1 format(10x, i5, 2f15.10, 1p,d12.2,d12.2) - call util_flush(6) + write(6,'(10x, i5, 2f15.10, 1p,d12.2,d12.2)') + & iter, dmax, d/dble(nloc), gamma_max + call util_flush(6) end if call ga_sync c @@ -439,8 +439,8 @@ subroutine localizePM(basis, c, sc, nloc, iloc, nbf, nmo, end if end do end do - write(6,77) s, (list(a), pop(a), a=1,nlist) - 77 format(i5, 100(2x,i4,'(',f5.2,')')) + write(6,9002) s, (list(a), pop(a), a=1,nlist) + 9002 format(i5, 100(2x,i4,'(',f5.2,')')) end do call util_flush(6) end if @@ -498,10 +498,10 @@ subroutine localizeFB(basis, c, uc, nloc, iloc, nbf, nmo, u21 = util_random(12345) c if (ga_nodeid() .eq. 0) then - write(6,2) - 2 format(/10x,' iter Max. dipole2 Mean dipole2 Converge'/ - $ 10x,' ---- ------------ ------------ ---------') - call util_flush(6) + write(6,9001) + 9001 format(/10x,' iter Max. dipole2 Mean dipole2 Converge'/ + & 10x,' ---- ------------ ------------ --------') + call util_flush(6) end if c dprev = 0.0d0 @@ -544,9 +544,9 @@ subroutine localizeFB(basis, c, uc, nloc, iloc, nbf, nmo, call ga_dgop(2, d , 1, '+') c if (ga_nodeid() .eq. 0) then - write(6,1) iter, dmax, d/dble(nloc), gamma_max - 1 format(10x, i5, 2f17.8, 1p,2d12.2) - call util_flush(6) + write(6,'(10x, i5, 2f17.8, 1p,2d12.2)') + & iter, dmax, d/dble(nloc), gamma_max + call util_flush(6) end if call ga_sync c @@ -663,8 +663,8 @@ subroutine localizeFB(basis, c, uc, nloc, iloc, nbf, nmo, end if end do end do - write(6,77) s, (list(a), pop(a), a=1,nlist) - 77 format(i5, 100(2x,i4,'(',f5.2,')')) + write(6,9002) s, (list(a), pop(a), a=1,nlist) + 9002 format(i5, 100(2x,i4,'(',f5.2,')')) end do call util_flush(6) end if @@ -674,16 +674,19 @@ subroutine localizeFB(basis, c, uc, nloc, iloc, nbf, nmo, end c c ================================================================= -c - subroutine localizeIBO(basis, minbas, - & c, nloc, iloc, nbf, nmo, - & g_c, g_smat, g_iao, mnbf, eval, occ) c -c IAO-IBO localization -c - + subroutine localizeIBO(minbas, c, g_c, nloc, nbf, mnbf, + & natoms) +c +c IBO localization. Similar to Pipek-Mezey, but in an orthonormal +c IAO basis. Analysis of the resulting IBOs is done in the calling +c routine. +c +c written by Jochen Autschbach, jochena@buffalo.edu, +c adapted from routine localizePM + implicit none - + #include "errquit.fh" #include "nwc_const.fh" #include "mafdecls.fh" @@ -692,136 +695,92 @@ subroutine localizeIBO(basis, minbas, #include "bas.fh" #include "util.fh" #include "stdio.fh" -c -c Localize the nloc orbitals in iloc(*) by mixing with each other -c - integer basis, minbas, nloc, iloc(*), nbf, nmo, mnbf - double precision c(mnbf, 2), eval(nbf), occ(nbf) - integer g_c, g_smat, g_iao - integer maxat, nlist -*............................ these should be dynamically allocated ? - parameter (maxat = nw_max_atom) - integer list(maxat) - double precision pop(maxat) - integer iter, ss, s, tt, t, a, u, bflo, bfhi, natoms, geom +c subroutine arguments: + + integer minbas ! minimal basis for IAOs (in) + integer nloc ! number of orbitals to localize (in) + integer nbf ! size of AO basis (in) + integer mnbf ! size of minimal basis (in) + integer natoms ! number of atoms (in) + double precision c(nbf, 2) ! memory used for MO transformations + integer g_c ! orbital coefficients in IAO basis (inout) + +c local variables: + + integer nlist + integer iter, s, t, a, u, bflo, bfhi, geom double precision ast, bst, qast, qat, qas, gamma, cosg, sing, d, & qs, dprev, tol, dmax, gamma_tol, gamma_max, tmp double precision minval, swap integer nrot, set, pair, neven - integer ntmp1, ntmp2 logical master, debug - integer imo, jmo, kmo - - integer g_tmp1, g_tmp2, g_cibocc - - character*(11) pname - - character*(256) lmotrans - logical file_write_ga - external file_write_ga + integer g_tmp + character*(12) pname c ----------------------------------------------------------------- - pname = 'iao-ibo loc' + pname = 'iao-ibo iter' master = (ga_nodeid() .eq. 0) debug = .false. ! true, during development if (debug.and.master) write(luout,*) 'entering '//pname -c - if (.not. bas_geom(basis, geom)) call errquit - $ (pname//': basis ', 0, BASIS_ERR) - if (.not. geom_ncent(geom, natoms)) call errquit - $ (pname//': geom',0, GEOM_ERR) -c - if (natoms.gt.maxat) call errquit - & (pname//': maxat too small ', 911, UNKNOWN_ERR) -c note sure if we need this for sure, but later we assume this - if (nloc.gt.mnbf) call errquit - & (pname//': nloc > mnbf', 66, UNKNOWN_ERR) - if (nloc.gt.nbf) call errquit - & (pname//': nloc > nbf', 66, UNKNOWN_ERR) +c sanity checks, so we don't crash later: - -c DEBUG some things related to the basis function centers + if (.not. bas_geom(minbas, geom)) call errquit + & (pname//': minbas ', 0, BASIS_ERR) + if (.not. geom_ncent(geom, natoms)) call errquit + & (pname//': geom',0, GEOM_ERR) + if (mnbf>nbf) call errquit + & (pname//': mnbf>nbf', 0, UNKNOWN_ERR) + if (nloc>nbf) call errquit + & (pname//': nloc>nbf', 0, UNKNOWN_ERR) + if (nloc>mnbf) call errquit + & (pname//': nloc>mnbf', 0, UNKNOWN_ERR) + +c DEBUG some things related to the minimal basis centers if (debug) then do a = 1, natoms - if (.not. bas_ce2bfr(basis, a, bflo, bfhi)) - $ call errquit('localized: basis ', 0, BASIS_ERR) - if (master) then - write(luout,'(1x,a,3i4)') 'ao basis, atom = ', a, bflo, bfhi - end if if (.not. bas_ce2bfr(minbas, a, bflo, bfhi)) - & call errquit('localized: basis ', 0, BASIS_ERR) + & call errquit(pname//': minbas', 0, BASIS_ERR) if (master) then - write(luout,'(1x,a,3i4)') 'minbas , atom = ', a, bflo, bfhi + write(luout,'(1x,a,3i4)') 'minbas, atom = ', a, bflo, bfhi end if end do end if ! debug -c transform the set of occupied MOs to be localized to the IAO basis -c via C(iao, trans) S C(MO) - - if (.not. ga_create(MT_DBL, mnbf, nloc , 'loc:cibocc', - & mnbf, 0, g_cibocc)) call errquit(pname//': cibocc',0, GA_ERR) - - if (.not. ga_create(MT_DBL, nbf, nloc , 'loc:tmp1', - & nbf, 0, g_tmp1)) call errquit(pname//': tmp1',0, GA_ERR) - - call ga_dgemm('n', 'n', nbf, nloc, nbf, - & 1.0d0, g_smat, g_c, 0.0d0, g_tmp1) - - call ga_dgemm('t', 'n', mnbf, nloc, nbf, - & 1.0d0, g_iao, g_tmp1, 0.0d0, g_cibocc) - - if (.not. ga_destroy(g_tmp1)) - & call errquit(pname//': ga_destroy failed g_tmp1',0, GA_ERR) - -c if (debug) call ga_print(g_cibocc) - - if (debug .and. master) write(luout,*) 'cibocc done' - -c save a copy of the starting MOs for later - - if (.not.ga_duplicate(g_cibocc, g_tmp2, 'g_tmp2')) call - & errquit(pname//': ga_dup cibocc', 0, GA_ERR) - - call ga_copy(g_cibocc, g_tmp2) - c the MOs in the orthonormal IAO basis must form an orthogonal c matrix. test that before localization, and again later - if (.not. ga_create(MT_DBL, nloc, nloc , 'loc:tmp1', - & mnbf, 0, g_tmp1)) call errquit(pname//': tmp1',0, GA_ERR) + if (.not. ga_create(MT_DBL, nloc, nloc , 'ibo:tmp', + & 0, 0, g_tmp)) call errquit(pname//': tmp',0, GA_ERR) - call ga_dgemm('t', 'n', nloc, nloc, mnbf, - & 1.0d0, g_cibocc, g_cibocc, 0.0d0, g_tmp1) + call ga_dgemm('t', 'n', nloc, nloc, mnbf, + & 1.0d0, g_c, g_c, 0.0d0, g_tmp) - call ga_add_todiag(g_tmp1, -1.0d0) + call ga_add_todiag(g_tmp, -1.0d0) - call ga_maxelt(g_tmp1, tmp) + call ga_maxelt(g_tmp, tmp) if (master) then - write(luout,'(/1x,a,1x,f18.12)') - & 'IBO loc: largest element of C(MO, trans) C(MO) -1: ', + write(luout,'(/1x,a,1x,f18.8)') + & 'IBO loc: largest element in C(MO,T) C(MO) -1: ', & tmp write(luout,'(1x,a)') & 'should be zero, for CMOs in the IAO basis' end if - if (.not. ga_destroy(g_tmp1)) - & call errquit(pname//': ga_destroy failed g_tmp1',0, GA_ERR) + if (.not. ga_destroy(g_tmp)) + & call errquit(pname//': ga_destroy failed g_tmp',0, GA_ERR) - -c tol = 1d-8 gamma_tol = 1d-10 c if (master) then - write(luout,2) - 2 format(/10x,' iter Max. delocal Mean delocal Converge'/ - $ 10x,' ---- ------------ ------------ ---------') - call util_flush(luout) + write(luout,9001) + 9001 format(/10x,' iter Max. delocal Mean delocal Converge'/ + & 10x,' ---- ------------ ------------ --------') + call util_flush(luout) end if c dprev = 0.0d0 @@ -832,25 +791,24 @@ subroutine localizeIBO(basis, minbas, c c Analyze convergence by forming P c - d = 0.0d0 - dmax = 0.0d0 - do ss = 1+ga_nodeid(), nloc, ga_nnodes() - s = iloc(ss) - call ga_get(g_cibocc, 1, mnbf, s, s, c(1,1), 1) - qs = 0.0d0 - do a = 1, natoms - if (.not. bas_ce2bfr(minbas, a, bflo, bfhi)) - & call errquit(pname//': basis ', 1, BASIS_ERR) - qas = 0.0d0 - do u = bflo, bfhi - qas = qas + c(u,1)*c(u,1) - end do - qs = qs + qas**2 + d = 0.0d0 + dmax = 0.0d0 + do s = 1+ga_nodeid(), nloc, ga_nnodes() + call ga_get(g_c, 1, mnbf, s, s, c(1,1), 1) + qs = 0.0d0 + do a = 1, natoms + if (.not. bas_ce2bfr(minbas, a, bflo, bfhi)) + & call errquit(pname//': basis ', 1, BASIS_ERR) + qas = 0.0d0 + do u = bflo, bfhi + qas = qas + c(u,1)*c(u,1) end do -* write(luout,*) ' ds ', s, 1.0d0/qs - dmax = max(dmax, 1.0d0/qs) - d = d + 1.0d0/qs - end do + qs = qs + qas**2 + end do +* write(luout,*) ' ds ', s, 1.0d0/qs + dmax = max(dmax, 1.0d0/qs) + d = d + 1.0d0/qs + end do c #ifdef NWCHEM_USE_GOP_ABSMAX call ga_dgop(1, gamma_max, 1, 'absmax') @@ -861,84 +819,77 @@ subroutine localizeIBO(basis, minbas, call ga_dgop(1, gamma_max, 1, 'max') call ga_dgop(1, dmax, 1, 'max') #endif - call ga_dgop(2, d , 1, '+') + call ga_dgop(2, d , 1, '+') c - if (ga_nodeid() .eq. 0) then - write(luout,1) iter, dmax, d/dble(nloc), gamma_max - 1 format(10x, i5, 2f15.10, 1p,d12.2,d12.2) - call util_flush(luout) - end if - call ga_sync + if (ga_nodeid() .eq. 0) then + write(luout,'(10x, i5, 2f15.10, 1p,d12.2,d12.2)') + & iter, dmax, d/dble(nloc), gamma_max + call util_flush(luout) + end if + call ga_sync + + if (iter.gt.1 .and. gamma_max.lt.tol) goto 1000 + gamma_max = 0.0d0 + +c Loop over pairs with as much parallelism as possible + + neven = nloc + mod(nloc,2) + do set = 1, neven-1 + do pair = 1+ga_nodeid(), neven/2, ga_nnodes() + call localize_pairs(neven, set, pair, s, t) + if (t .le. nloc) then + + call ga_get(g_c, 1, mnbf, s, s, c(1,1), 1) + call ga_get(g_c, 1, mnbf, t, t, c(1,2), 1) c -** if (abs(d-dprev)/dble(nloc) .lt. tol) goto 1000 -** dprev = d - if (iter.gt.1 .and. gamma_max.lt.tol) goto 1000 - gamma_max = 0.0d0 +c Form rotation information c -c Loop over pairs with as much parallelism as possible + ast = 0.0d0 + bst = 0.0d0 + do a = 1, natoms + if (.not. bas_ce2bfr(minbas, a, bflo, bfhi)) + & call errquit(pname//': basis ', 2, + & BASIS_ERR) c - neven = nloc + mod(nloc,2) - do set = 1, neven-1 - do pair = 1+ga_nodeid(), neven/2, ga_nnodes() - call localize_pairs(neven, set, pair, ss, tt) - if (tt .le. nloc) then - s = iloc(ss) - t = iloc(tt) -* write(luout,*) nloc, neven, set, pair, ss, tt, s, t - call ga_get(g_cibocc, 1, mnbf, s, s, c(1,1), 1) - call ga_get(g_cibocc, 1, mnbf, t, t, c(1,2), 1) -c -c Form rotation information -c - ast = 0.0d0 - bst = 0.0d0 - do a = 1, natoms - if (.not. bas_ce2bfr(minbas, a, bflo, bfhi)) - & call errquit(pname//': basis ', 2, - & BASIS_ERR) -c - qast = 0.0d0 - qas = 0.0d0 - qat = 0.0d0 - do u = bflo, bfhi - qast = qast + c(u,2)*c(u,1) + c(u,1)*c(u,2) - qas = qas + c(u,1)*c(u,1) - qat = qat + c(u,2)*c(u,2) - end do - qast = qast * 0.5d0 -c -c ast = ast + qast**2 - 0.25d0*(qas - qat)**2 -c bst = bst + qast*(qas - qat) - tmp = -1.0d0*(qas**4 + qat**4) - tmp = tmp + 6.0d0*((qas**2 + qat**2)* qast**2) - tmp = tmp + qas**3 * qat + qas * qat**3 - ast = ast + 0.25d0*tmp - tmp = 4.0d0 * qast*(qas**3 - qat**3) - bst = bst + 0.25d0*tmp - end do -c - gamma = 0.25d0*acos(-ast/sqrt(ast**2+bst**2)) - gamma = sign(gamma,bst) - gamma_max = max(gamma_max, abs(gamma)) -* if (iter .eq. 1 .and. abs(gamma).lt.0.01d0) then -* gamma = (util_random(0)-0.5d0)*3.14d0 -* endif -c - if (abs(gamma) .gt. gamma_tol) then - nrot = nrot + 1 - cosg = cos(gamma) - sing = sin(gamma) -c -c Do the rotation of C -c - call drot(mnbf, c(1,1), 1, c(1,2), 1, cosg, sing) - call ga_put(g_cibocc, 1, mnbf, s, s, c(1,1), 1) - call ga_put(g_cibocc, 1, mnbf, t, t, c(1,2), 1) - end if - end if - end do - call ga_sync - end do + qast = 0.0d0 + qas = 0.0d0 + qat = 0.0d0 + do u = bflo, bfhi + qast = qast + c(u,2)*c(u,1) + c(u,1)*c(u,2) + qas = qas + c(u,1)*c(u,1) + qat = qat + c(u,2)*c(u,2) + end do + qast = qast * 0.5d0 +c +c ast = ast + qast**2 - 0.25d0*(qas - qat)**2 +c bst = bst + qast*(qas - qat) + tmp = -1.0d0*(qas**4 + qat**4) + tmp = tmp + 6.0d0*((qas**2 + qat**2)* qast**2) + tmp = tmp + qas**3 * qat + qas * qat**3 + ast = ast + 0.25d0*tmp + tmp = 4.0d0 * qast*(qas**3 - qat**3) + bst = bst + 0.25d0*tmp + end do +c + gamma = 0.25d0*acos(-ast/sqrt(ast**2+bst**2)) + gamma = sign(gamma,bst) + gamma_max = max(gamma_max, abs(gamma)) + + if (abs(gamma) .gt. gamma_tol) then + nrot = nrot + 1 + cosg = cos(gamma) + sing = sin(gamma) +c +c Do the rotation of C +c + call drot(mnbf, c(1,1), 1, c(1,2), 1, cosg, sing) + call ga_put(g_c, 1, mnbf, s, s, c(1,1), 1) + call ga_put(g_c, 1, mnbf, t, t, c(1,2), 1) + end if + end if + end do + call ga_sync + end do end do c 1000 continue @@ -947,178 +898,29 @@ subroutine localizeIBO(basis, minbas, c the MOs in the orthonormal IAO basis must form an orthogonal c matrix. test that after localization - if (.not. ga_create(MT_DBL, nloc, nloc , 'loc:tmp1', - & mnbf, 0, g_tmp1)) call errquit(pname//': tmp1',0, GA_ERR) + if (.not. ga_create(MT_DBL, nloc, nloc , 'ibo:tmp', + & mnbf, 0, g_tmp)) call errquit(pname//': tmp',0, GA_ERR) - call ga_dgemm('t', 'n', nloc, nloc, mnbf, - & 1.0d0, g_cibocc, g_cibocc, 0.0d0, g_tmp1) + call ga_dgemm('t', 'n', nloc, nloc, mnbf, + & 1.0d0, g_c, g_c, 0.0d0, g_tmp) - call ga_add_todiag(g_tmp1, -1.0d0) + call ga_add_todiag(g_tmp, -1.0d0) - call ga_maxelt(g_tmp1, tmp) + call ga_maxelt(g_tmp, tmp) if (master) then - write(luout,'(/1x,a,1x,f18.12)') - & 'IBO loc: largest element of C(MO, trans) C(MO) -1: ', + write(luout,'(/1x,a,1x,f18.8)') + & 'IBO loc: largest element in C(MO,T) C(MO) -1: ', & tmp write(luout,'(1x,a)') - & 'should be zero, for LMOs in the IAO basis' + & 'should be zero, for IBOs in the IAO basis' end if -c Following steps: - -c 1. while we have array g_tmp1 allocated, also calculate the -c localization transform. The starting MOs were saved in g_tmp2 in -c the IAO basis - -c 2. calculate LMO energies and order the LMO set by energy - -c 3. save the localization transform to a file, instead of -c generating it again in the calling routine and saving it from -c there - -c 4. We then transform the CMOs to re-ordered LMOs in the -c AO basis and store the transformed MOs back in g_c - - -c CMOs(iao, trans) * LMOs(iao) = localization transform -> g_tmp1 - call ga_dgemm('t', 'n', nloc, nloc, mnbf, - & 1.0d0, g_tmp2, g_cibocc, 0.0d0, g_tmp1) - - if (.not. ga_destroy(g_tmp2)) - & call errquit(pname//': ga_destroy failed g_tmp2',0, GA_ERR) - -c transform MO energies. We assume that the first nloc MOs were -c localized, and that the Fock matrix was diagonal in the basis of -c input MOs. We also assume (this is tested upon entry) that -c nloc is smaller than the column sizes of arays eval, c(:,1:2) -c so we don't segfault when using c(:,:) as temp memory - - do jmo = 1,nloc - call ga_get(g_tmp1, 1, nloc, jmo, jmo, c(1,1), 1) - tmp = 0.0d0 - do imo = 1,nloc - tmp = tmp + eval(imo) * c(imo,1)**2 - end do ! jmo - c(jmo,2) = tmp ! temp storage for transformed MO energies - end do ! imo - do imo = 1,nloc - eval(imo) = c(imo,2) - end do - -c sort LMOs by energy. We'll have to do this on the master node, or -c otherwise avoid having multiple nodes working on the same data - - if (master) then - do imo = 1,nloc -1 - minval = eval(imo) -c find lowest eval(kmo) below eval(imo) - kmo = 0 - do jmo = imo+1, nloc - if (eval(jmo).lt.minval) then - kmo = jmo - minval = eval(jmo) - end if - end do -c if kmo > 0 we swap imo and jmo - if (kmo.ne.0) then - if (debug.and.master) write(luout,*) 'swap ',imo,kmo -c swap eigenvalues - swap = eval(imo) - eval(imo) = eval(kmo) - eval(kmo) = swap -c swap columns of LMO transformation - call ga_get(g_tmp1, 1, nloc, imo, imo, c(1,1), 1) - call ga_get(g_tmp1, 1, nloc, kmo, kmo, c(1,2), 1) - call ga_put(g_tmp1, 1, nloc, imo, imo, c(1,2), 1) - call ga_put(g_tmp1, 1, nloc, kmo, kmo, c(1,1), 1) -c swap LMOs in IAO basis, for the analysis below - call ga_get(g_cibocc, 1, mnbf, imo, imo, c(1,1), 1) - call ga_get(g_cibocc, 1, mnbf, kmo, kmo, c(1,2), 1) - call ga_put(g_cibocc, 1, mnbf, imo, imo, c(1,2), 1) - call ga_put(g_cibocc, 1, mnbf, kmo, kmo, c(1,1), 1) - end if - end do - end if ! master + if (.not. ga_destroy(g_tmp)) + & call errquit(pname//': ga_destroy failed g_tmp',0, GA_ERR) - call ga_sync - -c write transformation to scratch file - - call util_file_name('lmotrans',.true.,.true.,lmotrans) - if(.not.file_write_ga(lmotrans,g_tmp1)) call errquit - & (pname//': could not write lmotrans',0, DISK_ERR) - - if (debug.and.master) write (luout,*) - & pname//': lmos reordered and lmotrans written' - -c transform CMOs to re-ordered LMOs - - if (.not. ga_create(MT_DBL, nbf, nloc , 'loc:tmp2', - & nbf, 0, g_tmp2)) call errquit(pname//': tmp2',0, GA_ERR) - - call ga_dgemm('n', 'n', nbf, nloc, nloc, - & 1.0d0, g_c, g_tmp1, 0.0d0, g_tmp2) - - call ga_copy(g_tmp2, g_c) - - if (debug.and.master) write (luout,*) pname//': g_c now has LMOs' - - if (.not. ga_destroy(g_tmp1)) - & call errquit(pname//': ga_destroy failed g_tmp1',0, GA_ERR) - - if (.not. ga_destroy(g_tmp2)) - & call errquit(pname//': ga_destroy failed g_tmp2',0, GA_ERR) - -c Analyze localization of each MO: -c per LMO, a list of atomic populations is printed -c in decreasing magnitude, with the polulations in parentheses - - if (master) then - write(luout,'(/1x,a/)') 'IAO-IBO localized orbitals' - do ss = 1, nloc - s = iloc(ss) - call ga_get(g_cibocc, 1, mnbf, s, s, c(1,1), 1) - nlist = 0 - do a = 1, natoms - if (.not. bas_ce2bfr(minbas, a, bflo, bfhi)) - & call errquit('localized: basis ', 3, - & BASIS_ERR) - qas = 0.0d0 - do u = bflo, bfhi - qas = qas + c(u,1)*c(u,1) - end do - if (abs(qas) .gt. 0.01d0) then - nlist = nlist + 1 - list(nlist) = a - pop(nlist) = qas - end if - end do - do u = 1, nlist - do t = 1, u-1 - if (abs(pop(t)).lt.abs(pop(u))) then - tmp = pop(u) - pop(u) = pop(t) - pop(t) = tmp - tt = list(u) - list(u) = list(t) - list(t) = tt - end if - end do - end do - write(luout,77) s, eval(s), - & occ(s),(list(a), pop(a), a=1,nlist) - 77 format(i5, 1x, f14.6,1x, f5.3, 1x,100(2x,i4,'(',f5.2,')')) - end do - write(luout,*) - call util_flush(luout) - end if - - if (.not. ga_destroy(g_cibocc)) - & call errquit(pname//': ga_destroy failed g_cibocc',0, GA_ERR) - - if (debug.and.master) write(luout,*) 'leaving '//pname + return + end - end c c ================================================================= c diff --git a/src/libext/elpa/build_elpa.sh b/src/libext/elpa/build_elpa.sh index 0c36e241a4..e553320298 100755 --- a/src/libext/elpa/build_elpa.sh +++ b/src/libext/elpa/build_elpa.sh @@ -211,6 +211,8 @@ if [[ "$?" != "0" ]]; then echo " " echo "Elpa compilation failed" echo " " + echo "****** config.log *****" + cat config.log exit 1 fi make V=0 install diff --git a/src/libext/libxc/build_libxc.sh b/src/libext/libxc/build_libxc.sh index e69952de38..2a91936b1b 100755 --- a/src/libext/libxc/build_libxc.sh +++ b/src/libext/libxc/build_libxc.sh @@ -125,6 +125,8 @@ $CMAKE -DCMAKE_INSTALL_PREFIX=${NWCHEM_TOP}/src/libext/libxc/install -DCMAKE_C_ make -j4 | tee make.log make install +strip --strip-debug ../../install/lib/libxc.a +strip --strip-debug ../../install/lib/libxcf03.a ln -sf ../../install/lib/libxc.a ../../install/lib/libnwc_xc.a ln -sf ../../install/lib/libxcf03.a ../../install/lib/libnwc_xcf03.a diff --git a/src/libext/openblas/build_openblas.sh b/src/libext/openblas/build_openblas.sh index 174a049bd0..20d8a0eb4e 100755 --- a/src/libext/openblas/build_openblas.sh +++ b/src/libext/openblas/build_openblas.sh @@ -235,6 +235,7 @@ if [[ "$?" != "0" ]]; then fi mkdir -p ../../lib +strip --strip-debug libopenblas*-*.a cp libopenblas.a ../../lib/libnwc_openblas.a #make PREFIX=. install if [[ ! -z "${NWCHEM_USE_OPENMP}" ]]; then diff --git a/src/libext/scalapack/build_scalapa.sh b/src/libext/scalapack/build_scalapa.sh index 7068439eb0..12c9d5aea3 100755 --- a/src/libext/scalapack/build_scalapa.sh +++ b/src/libext/scalapack/build_scalapa.sh @@ -301,6 +301,7 @@ if [[ "$?" != "0" ]]; then exit 1 fi mkdir -p ../../../lib +strip --strip-debug lib/libscalapack.a cp lib/libscalapack.a ../../../lib/libnwc_scalapack.a if [[ "$KNL_SWAP" == "1" ]]; then module swap craype-haswell craype-mic-knl diff --git a/src/libext/tblite/build_tblite_cmake.sh b/src/libext/tblite/build_tblite_cmake.sh index d20ff4bb74..41a720ab36 100755 --- a/src/libext/tblite/build_tblite_cmake.sh +++ b/src/libext/tblite/build_tblite_cmake.sh @@ -219,5 +219,5 @@ fi $CMAKE --install _build cd .. - +strip --strip-debug ../lib/libtblite.a ln -sf ../lib/libtblite.a ../lib/libnwc_tblite.a diff --git a/src/nwdft/input_dft/dft_inpana.F b/src/nwdft/input_dft/dft_inpana.F index bcad136130..0b3cb1d668 100644 --- a/src/nwdft/input_dft/dft_inpana.F +++ b/src/nwdft/input_dft/dft_inpana.F @@ -212,7 +212,7 @@ subroutine dft_inpana(rtdb) c c write noc (consistent with definition in ddscf) to rtdb c - if (.not. rtdb_put(rtdb, 'dft:noc', mt_int, 2, noc)) + if (.not. rtdb_put(rtdb, 'dft:noc', mt_int, 2, noc(1))) & call errquit('inpana: rtdb_put of noc failed', 0, RTDB_ERR) cHvD use_nwxc = util_module_avail("nwxc") @@ -1049,3 +1049,115 @@ subroutine dft_inpanae(rtdb) endif return end + subroutine dft_sethfx(rtdb) + implicit none +#include "geom.fh" +#include "rtdb.fh" +#include "mafdecls.fh" +#include "cdft.fh" +#include "errquit.fh" + integer rtdb +c + character*10 pname + integer i,nopen + double precision thresh,tol2e + pname='dft_sethfx' +c multiplicity + if(rtdb_get(rtdb, 'scf:nopen', MT_INT, 1, nopen)) then + mult=nopen+1 + ipol=2 + if (.not. rtdb_put(rtdb, 'dft:ipol', mt_int, 1, ipol)) + & call errquit(pname//': rtdb_put failed', 0, RTDB_ERR) + if (.not. rtdb_put(rtdb, 'dft:mult', mt_int, 1, mult)) + & call errquit(pname//': rtdb_put failed', 1, RTDB_ERR) + endif + do i = 1, numfunc + xfac(i)=0.d0 + cfac(i)=0.d0 + lcfac(i)=.false. + nlcfac(i)=.false. + lxfac(i)=.false. + nlxfac(i)=.false. + xccomb(i)=.false. + enddo + lxfac(1) = .true. + nlxfac(1) = .true. + xfac(1) = 1.0d0 + if (.not. rtdb_put(rtdb, 'dft:cfac', + & mt_dbl, numfunc, cfac(1))) + & call errquit(pname//': rtdb_put failed', 2, RTDB_ERR) + if (.not. rtdb_put(rtdb, 'dft:xfac', + & mt_dbl, numfunc, xfac(1))) + & call errquit(pname//': rtdb_put failed', 3, RTDB_ERR) + if (.not. rtdb_put(rtdb, 'dft:lcfac', + & mt_log, numfunc, lcfac(1))) + & call errquit(pname//': rtdb_put failed', 4, RTDB_ERR) + if (.not. rtdb_put(rtdb, 'dft:nlcfac', + & mt_log, numfunc, nlcfac(1))) + & call errquit(pname//': rtdb_put failed', 5, RTDB_ERR) + if (.not. rtdb_put(rtdb, 'dft:lxfac', + & mt_log, numfunc, lxfac(1))) + & call errquit(pname//': rtdb_put failed', 6, RTDB_ERR) + if (.not. rtdb_put(rtdb, 'dft:nlxfac', + & mt_log, numfunc, nlxfac(1))) + & call errquit(pname//': rtdb_put failed', 7, RTDB_ERR) + if (.not. rtdb_cput(rtdb, 'dft:theory', 1, 'dft')) + $ call errquit('rtdb_cput failed',0, RTDB_ERR) + if (.not.rtdb_put(rtdb,'dft:e_conv',mt_dbl,1,1d-8)) + . call errquit(pname//': rtdbput econv failed',0, RTDB_ERR) + if (.not.rtdb_get(rtdb, 'scf:thresh', MT_DBL, 1, thresh)) + & thresh=1d-4 + d_conv=thresh*thresh +cdbg write(6,*) ' d_conv is ',d_conv + if(.not. rtdb_put(rtdb, 'dft:d_conv', mt_dbl, 1, d_conv)) + & call errquit('dft_rdinput: rtdb_put failed', 106, RTDB_ERR) + if (.not. rtdb_get(rtdb, 'scf:tol2e', MT_DBL, 1, tol2e)) + * tol2e=1d-12 + itol2e=-log10(tol2e) +cdbg write(6,*) ' itol2e is ',itol2e + if (.not. rtdb_put(rtdb, 'dft:itol2e', mt_int, 1, 12)) + . call errquit(pname//': rtdbput itol2e failed',0, RTDB_ERR) + return + end + subroutine dft_sethfx_cleanup(rtdb) + implicit none +#include "geom.fh" +#include "bas.fh" +#include "rtdb.fh" +#include "mafdecls.fh" +#include "cdft.fh" +#include "errquit.fh" + integer level_org + common /dftg/ level_org + integer rtdb + character*18 pname + integer i + pname='dft_sethfx_cleanup' + call util_print_set_level(level_org) + return + end + logical function dft_guesshfx(rtdb) + implicit none +#include "rtdb.fh" +#include "mafdecls.fh" +#include "cdft.fh" +#include "errquit.fh" + integer level_org + common /dftg/ level_org + integer rtdb +c + logical dftguess +c + dft_guesshfx=.false. + if(.not.rtdb_get(rtdb,'dftguess',mt_log,1,dftguess)) + D dftguess=.false. + if(dftguess) then + if(.not.rtdb_delete(rtdb,'dftguess')) + D call errquit(' rtdb_delete failed',0,RTDB_ERR) + call dft_sethfx(rtdb) + dft_guesshfx=.true. + call util_print_get_level(level_org) + call util_print_set_level(10) + endif + return + end diff --git a/src/nwdft/scf_dft/dft_scf.F b/src/nwdft/scf_dft/dft_scf.F index 819e45a58c..0ff9eea384 100644 --- a/src/nwdft/scf_dft/dft_scf.F +++ b/src/nwdft/scf_dft/dft_scf.F @@ -248,6 +248,7 @@ logical function dft_scf(rtdb, Etold, Enuc, iVcoul_opt, iVxc_opt, logical lprint_mats !print matrices to stdout? logical lsave_mats !save matrices to file? logical molden, forceatguess, save_evals, densmat + integer back_to_atguess character*256 file_mat1,movecs_in_org integer ma_type, no_sflip,l_at_flip,k_at_flip character*26 date @@ -301,7 +302,7 @@ logical function dft_scf(rtdb, Etold, Enuc, iVcoul_opt, iVxc_opt, oprint_info = util_print('common', print_debug) oprint_parm = util_print('parameters', print_default) oprint_3c2e = util_print('3c 2e integrals', print_default) - oprint_conv = util_print('convergence', print_default) + oprint_conv = util_print('convergence', print_low) oprint_conv_details = util_print('convergence details', & print_high) oprint_vecs = util_print('intermediate vectors', print_high) @@ -862,9 +863,13 @@ logical function dft_scf(rtdb, Etold, Enuc, iVcoul_opt, iVxc_opt, end if ! do_x2c c c == determine guess == + if(.not.rtdb_get(rtdb,'back_to_atguess',mt_int,1, + N back_to_atguess)) + . back_to_atguess=0 if(.not.rtdb_get(rtdb,'forceatguess',mt_log,1,forceatguess)) . forceatguess=.false. - if(forceatguess) movecs_in='atomic' + 1993 if(forceatguess) movecs_in='atomic' + if(movecs_in.eq.'atomic') back_to_atguess=0 call dft_guessin(movecs_in,ldmix,ncanorg,fon, , vecs_or_dens, , ipol,nbf_ao,g_movecs,g_gmovecs, @@ -1820,8 +1825,21 @@ logical function dft_scf(rtdb, Etold, Enuc, iVcoul_opt, iVxc_opt, call dft_scfcvg(rms, derr, Etold, Etnew, & e_conv, d_conv, g_conv, ipol, & iter, iterations, idone, rtdb, - & converged, diising) + & converged, diising, + B back_to_atguess) c + if(movecs_in.ne.'atomic'.and.back_to_atguess.lt.0) then + movecs_in='atomic' + if(ga_nodeid().eq.0) + W write(luout,*) ' restart from atomic guess' + if (.not. ga_destroy(g_denso(1))) call errquit + & ('dft_scf: could not destroy g_denso', 0, GA_ERR) + if(ipol.eq.2) then + if (.not. ga_destroy(g_denso(2))) call errquit + & ('dft_scf: could not destroy g_dens2', 0, GA_ERR) + endif + goto 1993 + endif if (oprint_time) & call dft_tstamp(' called scfcvg ') c diff --git a/src/nwdft/scf_dft/dft_scfcvg.F b/src/nwdft/scf_dft/dft_scfcvg.F index c5028312b0..993ea4a42e 100644 --- a/src/nwdft/scf_dft/dft_scfcvg.F +++ b/src/nwdft/scf_dft/dft_scfcvg.F @@ -1,6 +1,7 @@ subroutine dft_scfcvg(rms, derr, etold, etnew, e_conv, & d_conv, g_conv, ipol, iter, iterations, - & idone, rtdb, converged, diising) + & idone, rtdb, converged, diising, + B back_to_atguess) c c $Id$ c @@ -21,6 +22,7 @@ subroutine dft_scfcvg(rms, derr, etold, etnew, e_conv, integer rtdb ! [input] logical converged ! [output] logical diising ! [input] + integer back_to_atguess ! [in/out] c #include "mafdecls.fh" #include "rtdb.fh" @@ -89,6 +91,13 @@ subroutine dft_scfcvg(rms, derr, etold, etnew, e_conv, c converged = e_conv_logical.and.d_conv_logical.and.g_conv_logical if (converged)idone = 1 +c +c try at guess if d_e > 1d-1 after back_to_atguess iterations +c + if(.not.converged.and.back_to_atguess.gt.0) then + if(abde.gt.1d-1.and.iter.gt.back_to_atguess) + B back_to_atguess=-1 + endif c c Check iteration value. c diff --git a/src/nwdft/so_dft/dft_scf_so.F b/src/nwdft/so_dft/dft_scf_so.F index 6b81a1a0a6..0faeb153e9 100644 --- a/src/nwdft/so_dft/dft_scf_so.F +++ b/src/nwdft/so_dft/dft_scf_so.F @@ -1945,7 +1945,7 @@ logical function dft_scf_so call dft_scfcvg(rms, derr, Etold, Etnew, & e_conv, d_conv, g_conv, ipol, & iter, iterations, idone, rtdb, - & converged, diising) + & converged, diising, 0) c #ifdef LOOSE_START if (delta.lt.1.d-3)then diff --git a/src/property/GNUmakefile b/src/property/GNUmakefile index e85f2e9bfb..9a0611c846 100644 --- a/src/property/GNUmakefile +++ b/src/property/GNUmakefile @@ -63,6 +63,7 @@ CalcPerturbedTDPmat1.o \ CalcPerturbedTDPmat1_opt.o \ localization_driver.o \ + ibo_localization.o \ hnd_vec_write.o \ giao_b1_movecs_tools.o \ aor_r1_beta_anl_tools.o\ diff --git a/src/property/ibo_localization.F b/src/property/ibo_localization.F new file mode 100644 index 0000000000..db5b52c44b --- /dev/null +++ b/src/property/ibo_localization.F @@ -0,0 +1,967 @@ + + subroutine ibo_localization(rtdb, geom, ltyp, basis, g_movecs, + & nocc, nvir, nmo, nbf, natoms, eval, occ, c, pop, list) + +c ================================================================= +c IAO construction and generation of occupied or virtual IBOs. +c Written by J. Autschbach, jochena@buffalo.edu +c +c The formalism is described in G. Knizia, J. Chem. Theory +c Comput. 2013, 9, 4834 (with additional useful information provided +c in Senjean et al., J. Chem. Theory Comput. 2021, 17, 1337 and the +c SI of that article). What is implemented here corresponds to +c Knizia's original formulation, and the equations for p = 4 in +c Appendix D as given in the 'bugfixed' version of the article on +c the author's web page [https://sites.psu.edu/knizia/software/ +c (accessed 02/2023)]. + +c g_movecs and arrays occ and eval are for the MOs of a given +c spin (alpha or beta) + +c The localization routine called from here is in +c src/ddscf/localize.F + +c ================================================================= + + implicit none + +#include "errquit.fh" +#include "mafdecls.fh" +#include "global.fh" +#include "msgids.fh" +#include "geom.fh" +#include "rtdb.fh" +#include "bas.fh" +#include "util.fh" +#include "stdio.fh" +#include "apiP.fh" +#include "prop.fh" +#include "bgj.fh" + + +c subroutine arguments: + + integer rtdb, geom, basis + character*(3) ltyp + integer g_movecs + integer nocc, nvir, nmo, nbf, natoms + double precision eval(nbf), occ(nbf), c(nbf,2) + double precision pop(natoms) + integer list(natoms) + +c local GA handles: + + integer g_s2, g_s12, g_p12, g_p21 + integer g_ctilde, g_iao, g_mo + integer g_temp, g_tmp1, g_tmp2, g_cib, g_u, g_vt + integer g_smat + +c local variables: + + logical master, debug + integer dbg, info + + integer ncore, imo, jmo, kmo + + integer n1, n2, nsing, noff + + integer s, nlist, a, i, t, tt, u, bflo, bfhi + + double precision rtemp, qas + + double precision small + parameter (small=1d-8) + + integer + & mnbf, iao_mxprim, iao_mxang, iao_mxcont, + & iao_mxnbf_cn, iao_mxnbf_ce, iao_nshells, + & minbas + + double precision minval, swap + integer l_val, k_val + + logical int_normalize + external int_normalize + + integer ga_create_atom_blocked + external ga_create_atom_blocked + + + character*(256) lmotrans + logical file_write_ga + external file_write_ga + + character*(16) pname + +c ================================================================= + + pname = 'ibo_localization' + + dbg = 0 + master = ga_nodeid().eq.0 + debug = (dbg>0) .and. master ! .true. during development + + if (ltyp.ne.'occ' .and. ltyp.ne.'vir') call errquit + & (pname//': loc. type unknown', 0, BASIS_ERR) + + if(debug) then + if (ltyp.eq.'occ') write (luout,*) + & 'entering occupied IBO localization' + if (ltyp.eq.'vir') write (luout,*) + & 'entering virtual IBO localization' + end if + + if (.not. geom_num_core(rtdb, geom, 'ddscf', ncore)) ncore = 0 + + if (debug) write (luout,*) 'ncore = ',ncore + + + +c ------------------------------ +c construct IAOs in the AO basis +c ------------------------------ + +c Note: +c Basis 1 is the AO basis used in the SCF calculation +c Basis 2 is the minimal auxiliary basis + +c AO Overlap Matrix S1 -> g_smat: + + g_smat = ga_create_atom_blocked(geom, basis, 'loc:smat') + call ga_zero(g_smat) + call int_1e_ga(basis, basis, g_smat, 'overlap', .false.) + +c auxiliary basis overlap S2 -> g_s2 basis needs to defined in +c the input as "iao basis". we will now create the basis here and +c then calculate the overlap and the mixed ao-iao basis overlap +c S12 + + if (.not. bas_create(minbas, 'iao basis')) + & call errquit(pname//': cannot create iao bas', 86, BASIS_ERR) + + if (.not. bas_rtdb_load(rtdb, geom, minbas, 'iao basis')) + & call errquit(pname//': iao basis not present', 86, BASIS_ERR) + + if (.not. int_normalize(rtdb,minbas)) + & call errquit(pname//': int_normalize iao', 86, INT_ERR) + + if (.not. bas_numbf(minbas, mnbf)) + & call errquit(pname//': bas err iao mnbf', 86, BASIS_ERR) + + if (.not. bas_nprim_cn_max(minbas,iao_mxprim)) + & call errquit(pname//': bas err iao mxprim', 86, BASIS_ERR) + + if (.not. bas_high_angular(minbas,iao_mxang)) + & call errquit(pname//': bas err iao mxang', 86, BASIS_ERR) + + if (.not. bas_ncontr_cn_max(minbas,iao_mxcont)) + & call errquit(pname//': bas err iao mxcont', 86, BASIS_ERR) + + if (.not. bas_nbf_cn_max(minbas,iao_mxnbf_cn)) + & call errquit(pname//': bas err iao mcnbf_cn', 86, BASIS_ERR) + + if (.not. bas_nbf_ce_max(minbas,iao_mxnbf_ce)) + & call errquit(pname//': bas err iao mxnbf_ce', 86, BASIS_ERR) + + if (.not. bas_numcont(minbas,iao_nshells)) + & call errquit(pname//': bas err iao nshells', 86, BASIS_ERR) + +c not sure if it makes much sense in case the minimal basis for +c the IAOs is larger than our regular basis, so let's check that +c here and exit with an error if nbf < mnbf + + if (nbf.lt.mnbf) call errquit + & (pname//': nbf < mnbf. cannot handle!', 66, UNKNOWN_ERR) + +c create overlap for minbas, and the mixed basis-minbas +c overlap S12. +c Then we calculate the projectors P12 and P21 +c via solving S1 P12 = S12 for P12 etc. + + g_s2 = ga_create_atom_blocked(geom, minbas, 'loc:s2') + call ga_zero(g_s2) + call int_1e_ga(minbas, minbas, g_s2, 'overlap', .false.) + + if (.not. ga_create(MT_DBL, nbf, mnbf, 'loc:s12', + & nbf, 0, g_s12)) call errquit(pname//': S12',61, GA_ERR) + + call ga_zero(g_s12) + call int_1e_ga(basis, minbas, g_s12, 'overlap', .false.) + + if (.not.ga_duplicate(g_s12, g_p12, 'g_p12')) call + & errquit(pname//': ga_dup P12',62,GA_ERR) + + call ga_copy(g_s12, g_p12) + +#ifdef SCALAPACK + info = ga_solve(g_smat, g_p12) + if (debug) write(luout,*) + & 'info from ga_solve P12:', info +#else + if (debug) write(luout,*) 'call 1 ma_solve' + call ma_solve(g_smat, g_p12) +#endif + + if (.not. ga_create(MT_DBL, mnbf, nbf, 'loc:p21', + & mnbf, 0, g_p21)) call errquit(pname//': P21',63, GA_ERR) + + call ga_transpose(g_s12, g_p21) + if (debug) write(luout,*) 'P12 assembled' + +c S12 no longer needed + if (.not. ga_destroy(g_s12)) + & call errquit(pname//': ga_destroy failed g_s12',61, GA_ERR) + +c : scalapack throws a 'ga_to_SL: rows/cols error' so we're using +c ma_solve for the time being +c#ifdef SCALAPACK +c info = ga_solve(g_s2, g_p21) +c if (debug) write(luout,*) +c & 'info from ga_solve P21:', info +c#else + if (debug) write(luout,*) 'call 2 ma_solve' + call ma_solve(g_s2, g_p21) +c#endif + +c g_s2 no longer needed + if (.not. ga_destroy(g_s2)) call errquit( + & pname//': error destroying g_s2',0, GA_ERR) + + if (dbg>1) then + call ga_print(g_p12) + call ga_print(g_p21) + end if + +c store P12 * P21 in array g_temp; we'll need it soon + + if (.not.ga_duplicate(g_smat, g_temp, 'g_temp')) call + & errquit(pname//': ga_dup temp', 71, GA_ERR) + + call ga_dgemm('n', 'n', nbf, nbf, mnbf, + & 1.0d0, g_p12, g_p21, 0.0d0, g_temp) + + if (debug) write (luout,*) 'p12 p21 -> temp' + +c P21 is no longer needed + + if (.not. ga_destroy(g_p21)) + & call errquit(pname//': ga_destroy failed g_p21',61, GA_ERR) + +c construct IAOS from occ. MOs: + +c copy the relevant CMOs to g_mo + + if (.not. ga_create(MT_DBL, nbf, nocc, 'loc:g_mo', + & nbf, 0, g_mo)) call errquit(pname//': g_mo',0, GA_ERR) + + call ga_copy_patch('n', + & g_movecs, 1, nbf, 1, nocc, + & g_mo, 1, nbf, 1, nocc) + + if (debug) write (luout,*) 'movecs(occ) -> mo' + +c create C-tilde from Appendix C of Knizia's IBO paper. g_temp +c holds P12 * P21; we won't need it after the next matrix +c multiplication + + if (.not. ga_create(MT_DBL, nbf, nocc, 'loc:ctilde', + & nbf, 0, g_ctilde)) call errquit('loc_driver: sc',0, GA_ERR) + + call ga_dgemm('n', 'n', nbf, nocc, nbf, + & 1.0d0, g_temp, g_mo, 0.0d0, g_ctilde) + + if (.not. ga_destroy(g_temp)) + & call errquit(pname//': ga_destroy failed g_temp',71, GA_ERR) + + if (debug) write (luout,*) 'pre sym_orth 1' + call sym_orth(g_ctilde, g_smat, nbf, nocc) + + if (dbg>1) call ga_print(g_ctilde) + +c now assemble the matrix products to form matrix A from Appendix +c C of the IBO paper. The result will be accumulated in array +c g_iao which are the IAOs in basis 1. The shape of the array is +c the same as P12 + + if (.not.ga_duplicate(g_smat, g_tmp1, 'g_tmp1')) call + & errquit(pname//': ga_dup tmp1', 72, GA_ERR) + + if (.not.ga_duplicate(g_smat, g_tmp2, 'g_tmp2')) call + & errquit(pname//': ga_dup tmp2', 72, GA_ERR) + + if (.not.ga_duplicate(g_smat, g_temp, 'g_temp')) call + & errquit(pname//': ga_dup temp', 72, GA_ERR) + + if (.not.ga_duplicate(g_p12, g_iao, 'g_iao')) call + & errquit(pname//': ga_dup iao', 72, GA_ERR) + + +c C * C(T) + call ga_dgemm('n', 't', nbf, nbf, nocc, + & 1.0d0, g_mo, g_mo, 0.0d0, g_temp) + +c C * C(T) * S1 -> tmp1 + call ga_dgemm('n', 'n', nbf, nbf, nbf, + & 1.0d0, g_temp, g_smat, 0.0d0, g_tmp1) + +c tilde-C * tilde-C(T) + call ga_dgemm('n', 't', nbf, nbf, nocc, + & 1.0d0, g_ctilde, g_ctilde, 0.0d0, g_temp) + +c tilde-C * tilde-C(T) * S1 -> tmp2 + call ga_dgemm('n', 'n', nbf, nbf, nbf, + & 1.0d0, g_temp, g_smat, 0.0d0, g_tmp2) + +c C * C(T) * S1 * tilde-C * tilde-C(T) * S1 + + call ga_dgemm('n', 'n', nbf, nbf, nbf, + & 1.0d0, g_tmp1, g_tmp2, 0.0d0, g_temp) + +c multiply prev. result by P12 and store in g_iao + + call ga_dgemm('n', 'n', nbf, mnbf, nbf, + & 1.0d0, g_temp, g_p12, 0.0d0, g_iao) + +c form C * C(T) -1 + call ga_add_todiag(g_tmp1, -1.0d0) + +c form tilde-C * tilde-C(T) -1 + call ga_add_todiag(g_tmp2, -1.0d0) + +c multiply the two prev. results with each other, then multiply +c the result with P12 and add to g_iao + + call ga_dgemm('n', 'n', nbf, nbf, nbf, + & 1.0d0, g_tmp1, g_tmp2, 0.0d0, g_temp) + + call ga_dgemm('n', 'n', nbf, mnbf, nbf, + & 1.0d0, g_temp, g_p12, 1.0d0, g_iao) + +c g_ctilde no longer needed + + if (.not. ga_destroy(g_ctilde)) + & call errquit(pname//': ga_destroy failed ctilde',62, GA_ERR) + +c delete temp arrays before calling sym_orth, which allocates its +c own temp memory + + if (.not. ga_destroy(g_tmp1)) + & call errquit(pname//': ga_destroy failed g_tmp1',71, GA_ERR) + + if (.not. ga_destroy(g_tmp2)) + & call errquit(pname//': ga_destroy failed g_tmp2',71, GA_ERR) + + if (.not. ga_destroy(g_temp)) + & call errquit(pname//': ga_destroy failed g_temp',71, GA_ERR) +c last step: orthonormalize g_iao + + if (debug) write (luout,*) 'pre sym_orth 2' + call sym_orth(g_iao, g_smat, nbf, mnbf) + + call ga_sync + + if (dbg>1) call ga_print(g_iao) + +c check orthogonality of IAOs w.r.t. metric S1 +c g_p12 is used for scratch + + if (.not. ga_create(MT_DBL, mnbf, mnbf, 'g_temp', + & mnbf, 0, g_temp)) call errquit(pname//': temp',73, GA_ERR) + + call ga_dgemm('n', 'n', nbf, mnbf, nbf, + & 1.0d0, g_smat, g_iao, 0.0d0, g_p12) + + call ga_dgemm('t', 'n', mnbf, mnbf, nbf, + & 1.0d0, g_iao, g_p12, 0.0d0, g_temp) + + if (dbg>1) call ga_print(g_temp) + + call ga_add_todiag(g_temp, -1.0d0) + + call ga_maxelt(g_temp, rtemp) + if (master) then + write(luout,'(/1x,a,1x,f18.8)') + & 'IBO loc: largest element in C(iao,T) S C(iao) -1: ', + & rtemp + write(luout,'(1x,a/1x,a/)') + & 'Significant deviations from zero may indicate', + & 'elevated numerical noise in the IAO generation' + end if + + if (.not. ga_destroy(g_temp)) + & call errquit(pname//': ga_destroy failed g_temp',73, GA_ERR) + +c g_p12 no longer needed + + if (.not. ga_destroy(g_p12)) + & call errquit(pname//': ga_destroy failed g_p12',61, GA_ERR) + +c --------------------------------------------------------------- +c IAOs are now in array g_iao. Next, generate occupied or virtual +c IBOs, depending on the input settings (ltyp) +c --------------------------------------------------------------- + + if (ltyp.eq.'occ') then + +c ----------------------- +c generate occupied IBOs: +c ----------------------- + +c note: g_mo already holds the occupied MOs + + if (debug) then + write(luout,*) 'movecs(occ) -> mo' + end if + +c few more sanity check, just in case + if (nocc.gt.mnbf) call errquit + & (pname//': nocc > mnbf', 66, UNKNOWN_ERR) + if (nocc.gt.nbf) call errquit + & (pname//': nocc > nbf', 66, UNKNOWN_ERR) + +c transform the set of occupied MOs to be localized to the IAO +c basis via C(iao,T) S C(MO) + + if (.not. ga_create(MT_DBL, mnbf, nocc , 'loc:cib', + & mnbf, 0, g_cib)) + & call errquit(pname//': cib',0, GA_ERR) + + if (.not. ga_create(MT_DBL, nbf, nocc , 'loc:tmp1', + & 0, 0, g_tmp1)) call errquit(pname//': tmp1',0, GA_ERR) + + call ga_dgemm('n', 'n', nbf, nocc, nbf, + & 1.0d0, g_smat, g_mo, 0.0d0, g_tmp1) + + call ga_dgemm('t', 'n', mnbf, nocc, nbf, + & 1.0d0, g_iao, g_tmp1, 0.0d0, g_cib) + + if (.not. ga_destroy(g_tmp1)) + & call errquit(pname//': ga_destroy failed g_tmp1',0, GA_ERR) + + if (dbg>1) call ga_print(g_cib) + + if (debug) write(luout,*) 'cib done' + +c save a copy of the starting MOs for later + + if (.not.ga_duplicate(g_cib, g_tmp2, 'g_tmp2')) call + & errquit(pname//': ga_dup cib', 0, GA_ERR) + + call ga_copy(g_cib, g_tmp2) + +c perform localization of the MOs in IAO basis: + + call localizeIBO(minbas, c, g_cib, nocc, nbf, mnbf, + & natoms) + + + else if (ltyp.eq.'vir') then + +c ---------------------- +c generate virtual IBOs: +c ---------------------- + +c store the virtual MOs in g_mo. The array is allocated, so we +c destroy it frst + + if (.not. ga_destroy(g_mo)) call errquit( + & pname//': error destroying g_mo',1, GA_ERR) + + if (.not. ga_create(MT_DBL, nbf, nvir, 'loc:g_mo', + & nbf, 0, g_mo)) call errquit(pname//': g_mo',1, GA_ERR) + + call ga_copy_patch('n', + & g_movecs, 1, nbf, nocc+1, nmo, + & g_mo, 1, nbf, 1, nvir) + +c sanity check: for virtual localization, assume no. of +c virtuals >= (mnbf-nocc) + + if (nvir.lt.(mnbf-nocc)) call errquit + & (pname//': nvir < mnbf-nocc. Cannot handle', 66, + & UNKNOWN_ERR) + + if (debug) then + write(luout,*) 'movecs(vir) -> mo' + write(luout,*) 'nocc, nvir, nmo, nbf, mnbf', + & nocc, nvir, nmo, nbf, mnbf + end if + +c transform the set of virtual MOs to the IAO basis +c via C(iao,T) S C(MO), store in g_tmp2 (and keep the array) + + if (.not. ga_create(MT_DBL, mnbf, nvir , 'loc:tmp2', + & 0, 0, g_tmp2)) call errquit(pname//': tmp2',0, GA_ERR) + + if (.not. ga_create(MT_DBL, nbf, nvir , 'loc:tmp1', + & 0, 0, g_tmp1)) call errquit(pname//': tmp1',0, GA_ERR) + + call ga_dgemm('n', 'n', nbf, nvir, nbf, + & 1.0d0, g_smat, g_mo, 0.0d0, g_tmp1) + + call ga_dgemm('t', 'n', mnbf, nvir, nbf, + & 1.0d0, g_iao, g_tmp1, 0.0d0, g_tmp2) + + if (.not. ga_destroy(g_tmp1)) + & call errquit(pname//': ga_destroy failed g_tmp1',0, GA_ERR) + + if (debug .and. master) write(luout,*) 'cib before svd' + +c now perform SVD on the matrix C(vir) that we just calculated and +c stored in array g_tmp2. The "eigenvector" matrix U gives the +c true virtual MOs in the IAO basis that we want to localize + +c #(sing. values) = min(mnbf,nvir) = mnbf , assuming virtuals. +c The non-zero singular values must number mnbf - nocc, which +c means we will localize a number of virtuals that's smaller than +c nvir and also smaller than min(mnbf,nvir). + + nsing=min(mnbf,nvir) + + if (.not. ma_push_get(MT_DBL, nsing, 'svd-vals', l_val, k_val)) + & call errquit(pname//': svd-vals', nsing, MA_ERR) + + if (.not. ga_create(MT_DBL, mnbf, nsing,'g_u', 0, 0, g_u)) + & call errquit(pname//': svd-U', mnbf*nsing, GA_ERR) + + if (.not. ga_create(MT_DBL, nsing, nvir, 'g_vt',0, 0, g_vt)) + & call errquit(pname//': svd-vT', nsing*nvir, GA_ERR) + + if (debug) write(luout,*) 'svd: m,n,nsing=',mnbf,nvir,nsing + + call wrap_dgesvd(g_tmp2, g_u, g_vt, dbl_mb(k_val)) + +c wrap_dgesvd leaves the content of the array in arg 1 intact, no +c matter what the options in the call to dgesvd are inside the +c routine, so g_tmp2 still contains the initial (redundant) +c virtual MO set expressed in the IAO basis. We'll use it later. + + if (debug) then + write(luout,*) pname//' singular values:' + do imo = 1,mnbf + write(luout,*) imo, dbl_mb(k_val+imo-1) + end do + end if + +c count the non-zero singular values: re-define nsing + + nsing = 0 + do imo = 1,mnbf + if (dbl_mb(k_val+imo-1) .gt.small) nsing = nsing+1 + end do + if (master) write(luout,'(1x,a,i10)') + & 'non-zero singular values: ',nsing + +c we should have as many non-zero singlular values as we have +c additional IAOs beyond the number of occupied MOs. Check that, +c and print a warning if the values differ. + + if (nsing .ne. (mnbf-nocc)) then + if (master) + & write(luout,'(/1x,a/1x,a/1x,a/1x,a,i6/1x,a,i6/1x,a)') + & 'WARNING: number of non-zero singular values differs from', + & ' the number of IAOs minus the number of occupied MOs.', + & ' Will continue suspiciously!', + & ' nsing : ', nsing, + & ' mnbf - nocc : ', mnbf - nocc, + & ' The numbers in the two previous lines should be the same.' + end if + +c array g_cib will hold the left-singular vectors corresponding to +c non-zero singlular values. Since dgesvd returns them in +c descending order, and they are by definition positive, we simply +c take the first nsing vectors + + if (.not. ga_create(MT_DBL, mnbf, nsing,'loc:cib', 0, 0, g_cib)) + & call errquit(pname//': cib', mnbf*nsing, GA_ERR) + + call ga_copy_patch('n', + & g_u, 1, mnbf, 1, nsing, + & g_cib, 1, mnbf, 1, nsing ) + +c dellocate memory used for SVD + + if (.not. ga_destroy(g_vt)) + & call errquit(pname//': ga_destroy failed g_vt',0, GA_ERR) + + if (.not. ga_destroy(g_u)) + & call errquit(pname//': ga_destroy failed g_u',0, GA_ERR) + + if (.not. ma_pop_stack(l_val)) call errquit( + & pname//': error MA pop svd-vals',0, MA_ERR) + + if (dbg>1) call ga_print(g_cib) + + if (debug) write(luout,*) 'cib done' + +c perform localization of the MOs in IAO basis: + + call localizeIBO(minbas, c, g_cib, nsing, nbf, mnbf, + & natoms) + + end if ! ltyp occ or vir + +c localization interations done + +c calculate the localization transform. The starting MOs were +c saved in g_tmp2 in the IAO basis +c CMOs(iao,T) * LMOs(iao) = localization transform -> g_tmp1 + + if (ltyp.eq.'occ') then + + if (.not. ga_create(MT_DBL, nocc, nocc, 'loc:tmp1', + & 0, 0, g_tmp1)) call errquit(pname//': tmp1',0, GA_ERR) + + n1 = nocc ! dimensioning used later + n2 = nocc + noff = 0 + + call ga_dgemm('t', 'n', nocc, nocc, mnbf, + & 1.0d0, g_tmp2, g_cib, 0.0d0, g_tmp1) + + if (debug) write(luout,*) 'ibo occ: transformation in g_tmp1' + + elseif (ltyp.eq.'vir') then + + n1 = nvir ! dimensioning used later + n2 = nsing + noff = nocc ! offset for virtual orbitals + + if (.not. ga_create(MT_DBL, nvir, nsing, 'loc:tmp1', + & 0, 0, g_tmp1)) call errquit(pname//': tmp1',0, GA_ERR) + + call ga_dgemm('t', 'n', nvir, nsing, mnbf, + & 1.0d0, g_tmp2, g_cib, 0.0d0, g_tmp1) + + end if ! ltyp + + if(noff+n1 > nbf) call errquit (pname// + & ': noff + n1 > nbf', noff, UNKNOWN_ERR) + + if (.not. ga_destroy(g_tmp2)) + & call errquit(pname//': ga_destroy failed g_tmp2',0, GA_ERR) + +c transform MO energies. We assume that the Fock matrix was diagonal +c in the basis of input MOs. We also assume that the loop dimensions +c do not exceed the capacity of array c(:,:) + + do jmo = 1,n2 + call ga_get(g_tmp1, 1, n1, jmo, jmo, c(1,1), 1) + rtemp = 0.0d0 + do imo = 1,n1 + rtemp = rtemp + eval(imo+noff) * c(imo,1)**2 + end do ! jmo + c(jmo,2) = rtemp ! transformed MO energies + end do ! imo + do imo = 1,n2 + eval(imo+noff) = c(imo,2) + end do + + if (debug) write(luout,*) 'transformed MO energies' + +c sort IBOs by energy. We'll have to do this on the master +c node, or otherwise avoid having multiple nodes working on the +c same data + + if (master) then + do imo = 1,n2 -1 + minval = eval(imo+noff) +c find lowest eval(kmo) below eval(imo) (with offsets) + kmo = 0 + do jmo = imo+1, n2 + if (eval(jmo+noff).lt.minval) then + kmo = jmo + minval = eval(jmo+noff) + end if + end do +c if kmo > 0 we swap imo and jmo + if (kmo.ne.0) then + if (debug) write(luout,*) 'swap ',imo,kmo +c swap eigenvalues + swap = eval(imo+noff) + eval(imo+noff) = eval(kmo+noff) + eval(kmo+noff) = swap +c swap columns of LMO transformation + call ga_get(g_tmp1, 1, n1, imo, imo, c(1,1), 1) + call ga_get(g_tmp1, 1, n1, kmo, kmo, c(1,2), 1) + call ga_put(g_tmp1, 1, n1, imo, imo, c(1,2), 1) + call ga_put(g_tmp1, 1, n1, kmo, kmo, c(1,1), 1) +c swap LMOs in IAO basis, for the analysis below + call ga_get(g_cib, 1, mnbf, imo, imo, c(1,1), 1) + call ga_get(g_cib, 1, mnbf, kmo, kmo, c(1,2), 1) + call ga_put(g_cib, 1, mnbf, imo, imo, c(1,2), 1) + call ga_put(g_cib, 1, mnbf, kmo, kmo, c(1,1), 1) + end if + end do + end if ! master + + call ga_sync + +c write transformation to scratch file + + call util_file_name('lmotrans',.true.,.true.,lmotrans) + if(.not.file_write_ga(lmotrans,g_tmp1)) call errquit + & (pname//': could not write lmotrans',0, DISK_ERR) + + if (debug) write (luout,*) + & pname//': lmos reordered and lmotrans written' + +c transform CMOs to re-ordered LMOs + + if (.not. ga_create(MT_DBL, nbf, n2 , 'loc:tmp2', + & nbf, 0, g_tmp2)) call errquit(pname//': tmp2',0, GA_ERR) + + call ga_dgemm('n', 'n', nbf, n2, n1, + & 1.0d0, g_mo, g_tmp1, 0.0d0, g_tmp2) + + + if (debug) write (luout,*) pname//': g_tmp2 now has LMOs' + + if (.not. ga_destroy(g_tmp1)) + & call errquit(pname//': ga_destroy failed g_tmp1',0, GA_ERR) + +c copy the IBOs into the relevant part of movecs + + if (ltyp.eq.'occ') then + call ga_copy_patch('n', + & g_tmp2, 1, nbf, 1, nocc, + & g_movecs, 1, nbf, 1, nocc) + + else if (ltyp.eq.'vir') then + call ga_copy_patch('n', + & g_tmp2, 1, nbf, 1, nsing, + & g_movecs, 1, nbf, nocc+1, nocc+nsing) + end if + + if (debug) write (luout,*) pname//': IBOs copied to g_movecs' + + if (.not. ga_destroy(g_tmp2)) + & call errquit(pname//': ga_destroy failed g_tmp2',0, GA_ERR) + +c Analyze localization of each MO: per LMO, a list of atomic +c populations is printed in decreasing magnitude, with the +c polulations in parentheses. This code is equivalent to the on +c found in the Pipek-Mezey localization routine + + if (master) then + write(luout,'(/1x,a/)') 'IAO-IBO localized orbitals' + do s = 1, n2 + call ga_get(g_cib, 1, mnbf, s, s, c(1,1), 1) + nlist = 0 + do a = 1, natoms + if (.not. bas_ce2bfr(minbas, a, bflo, bfhi)) + & call errquit('localized: basis ', 3, + & BASIS_ERR) + qas = 0.0d0 + do u = bflo, bfhi + qas = qas + c(u,1)*c(u,1) + end do + if (abs(qas) .gt. 0.01d0) then + nlist = nlist + 1 + list(nlist) = a + pop(nlist) = qas + end if + end do + do u = 1, nlist + do t = 1, u-1 + if (abs(pop(t)).lt.abs(pop(u))) then + rtemp = pop(u) + pop(u) = pop(t) + pop(t) = rtemp + tt = list(u) + list(u) = list(t) + list(t) = tt + end if + end do + end do + write(luout,9002) s, eval(s+noff), + & occ(s+noff),(list(a), pop(a), a=1,nlist) + 9002 format(i5, 1x, f14.6,1x, f5.3, 1x,100(2x,i4,'(',f5.2,')')) + end do + write(luout,*) + call util_flush(luout) + end if + + if (.not. ga_destroy(g_cib)) + & call errquit(pname//': ga_destroy failed g_cib',0, GA_ERR) + +c deallocate remaining arrays that are no longer needed + + if (.not. ga_destroy(g_iao)) call errquit( + & pname//': error destroying g_iao',0, GA_ERR) + + if (.not. ga_destroy(g_mo)) call errquit( + & pname//': error destroying g_mo',0, GA_ERR) + +c smat not needed anymore + if (.not. ga_destroy(g_smat)) call errquit( + & pname//': error destroying g_smat',0, GA_ERR) + +c destroy minimal basis (iao basis) + if (.not.bas_destroy(minbas)) + & call errquit(pname//'iao bas_destroy failed',0,BASIS_ERR) + + if (ltyp.eq.'occ') then + n1 = 1 + n2 = nocc + else if (ltyp.eq.'vir') then + n1 = nocc + 1 + n2 = nocc + nsing + end if + + if (master) write(luout, + & '(/1x,a,a,a/1x,a/1x,i10,2x,a,1x,i10/)') + & 'IBO localization (',ltyp,'): IBOs will be stored', + & 'in file locorb.movecs, number ',n1, 'to', n2 + + return + + end + + + +c ================================================================= + + subroutine sym_orth(g_c, g_s, n1, n2) + + implicit none + +#include "global.fh" +#include "mafdecls.fh" +#include "errquit.fh" +#include "stdio.fh" +#include "numerical_constants.fh" + +c Given input vectors collected in matrix C, and a metric S, +c calculate +c C' = C times [transpose(C) S C]**(-1/2) such that +c transpose(C') S C' = unit matrix + +c matrix S is square symmetric, dimension n1, n1 +c matrix C has dimension n1, n2 + +c in the calling routine, matrix C may be allocated with more than +c n2 columns, which is the reason we use ga_copy_patch below + + integer g_c ! in/out + integer g_s ! input + + integer n1, n2 ! input + + integer g_sc, g_csc + + character*(8) pname + + logical debug + +c ----------------------------------------------------------------- + + pname = 'sym_orth' + + debug = .false. .and. ga_nodeid().eq.0 !during development + + if (debug) write(luout,*) 'entering '//pname + + if(.not.ga_create(mt_dbl,n1,n2,'g_sc',0,0,g_sc)) + & call errquit(pname//': error creating g_sc',141, GA_ERR) + + if(.not.ga_create(mt_dbl,n2,n2,'g_csc',0,0,g_csc)) + & call errquit(pname//': error creating g_csc',142, GA_ERR) + + call ga_dgemm('n','n',n1, n2, n1, 1.0d0, + & g_s, g_c, 0.0d0, g_sc) + + call ga_dgemm('t','n',n2, n2, n1, 1.0d0, + & g_c, g_sc, 0.0d0, g_csc) + + call ga_matpow(g_csc, -FP_Half, 1d-12) + + call ga_copy_patch('n', + & g_c, 1, n1, 1, n2, + & g_sc, 1, n1, 1, n2) + + call ga_dgemm('n','n',n1, n2, n2, 1.0d0, + & g_sc, g_csc, 0.0d0, g_c) + + + if (.not. ga_destroy(g_sc)) + & call errquit(pname//': error destroy g_sc',141, GA_ERR) + + if (.not. ga_destroy(g_csc)) + & call errquit(pname//': error destroy g_csc',142, GA_ERR) + + if (debug) write(luout,*) 'leaving '//pname + + return + + end + +c ================================================================= + + subroutine wrap_dgesvd(g_a, g_u, g_vt, values) + + implicit none + +#include "errquit.fh" +#include "global.fh" +#include "mafdecls.fh" + + integer g_a, g_u, g_vt + double precision values(*) + +c wrapper routine for call to dgesvd. This is similar to ga_svd_seq +c in util/ga_it2.F but some of the array dimensions had to be +c adjusted to match the usage case in the virtual IBO construction +c where m < n + + integer n, m, type, l_a, k_a, l_u, k_u, l_vt, k_vt, + & l_work, k_work, lwork, info, nsing + + character*(11) pname + +c ----------------------------------------------------------------- + + pname = 'wrap_dgesvd' + + call ga_inquire(g_a, type, m, n) + + if (type.ne.MT_DBL) then + call errquit (pname//': array type not MT_DBL', + & type, UNKNOWN_ERR) + end if + + nsing = min(m,n) + + if (ga_nodeid() .eq. 0) then + + lwork = 10*max(m,n) + if (.not. ma_push_get(type, m*n, 'svd', l_a, k_a)) + & call errquit(pname//': a',m*n, MA_ERR) + if (.not. ma_push_get(type, m*nsing, 'svd', l_u, k_u)) + & call errquit(pname//': u',m*nsing, MA_ERR) + if (.not. ma_push_get(type, nsing*n, 'svd', l_vt, k_vt)) + & call errquit(pname//': vt',nsing*n, MA_ERR) + if (.not. ma_push_get(type, lwork, 'svd', l_work, k_work)) + & call errquit(pname//': work',lwork, MA_ERR) + + call ga_get(g_a, 1, m, 1, n, dbl_mb(k_a), m) + + call dgesvd('s','s',m,n,dbl_mb(k_a),m,values, + & dbl_mb(k_u),m,dbl_mb(k_vt),nsing, + & dbl_mb(k_work),lwork,info) + + if (info.ne.0) call errquit(pname//':svd failed',info,MEM_ERR) + + call ga_put(g_u, 1, m, 1, nsing, dbl_mb(k_u), m) + call ga_put(g_vt, 1, nsing, 1, n, dbl_mb(k_vt), nsing) + + if (.not. ma_chop_stack(l_a)) call errquit(pname//': svd ma',0, + & MA_ERR) + + end if + + call ga_sync() + call ga_brdcst(1,values,nsing*8,0) + call ga_sync() + + end diff --git a/src/property/localization_driver.F b/src/property/localization_driver.F index b8ff16c6ca..cfe09c94df 100644 --- a/src/property/localization_driver.F +++ b/src/property/localization_driver.F @@ -34,8 +34,8 @@ subroutine localization_driver (rtdb, basis, geom, loctype) #include "apiP.fh" #include "prop.fh" #include "bgj.fh" -#include "util.fh" - +#include "util.fh" +#include "nwc_const.fh" c subroutine arguments: integer rtdb ! [input] rtdb handle @@ -46,17 +46,18 @@ subroutine localization_driver (rtdb, basis, geom, loctype) c local GA handles: integer g_uc(4), g_smat, g_sc, g_tran integer g_movecs(2), g_cmo(2), g_temp, g_tmp1, g_tmp2 - integer g_s2, g_s12, g_p12, g_p21 - integer g_ctilde, g_iao, g_mo c MA variables: integer l_c, k_c, l_sc, k_sc, l_eval, k_eval, l_occ, k_occ integer l_dip(3), k_dip(3) + integer l_pop, k_pop, l_list, k_list c other local variables: - integer nclosed(2), nopen(2), nvirt(2), ncore, - & ndens, nbf, nmo, nloc, i + integer loc_opt + + integer nclosed(2), nopen(2), nvirt(2), ncore, nocc, nvir, + & ndens, nbf, nmo, nloc, i, natoms integer info, dbg, ispin @@ -92,13 +93,8 @@ subroutine localization_driver (rtdb, basis, geom, loctype) logical int_normalize external int_normalize -c variables for IAO basis - integer - & nbf_iao, nbf_iao_mxprim, nbf_iao_mxang, nbf_iao_mxcont, - & nbf_iao_mxnbf_cn, nbf_iao_mxnbf_ce, nshells_iao, - & minbas - character*(19) pname + character*(3) ltyp c ================================================================== @@ -124,20 +120,52 @@ subroutine localization_driver (rtdb, basis, geom, loctype) write (luout,9000) ! general header if (loctype.eq.1) then call util_print_centered(luout, - & 'Pipek-Mezey localization', 32, .true.) + & 'Pipek-Mezey localization', 25, .true.) elseif (loctype.eq.2) then call util_print_centered(luout, & 'Boys localization', 25, .true.) elseif (loctype.eq.3) then call util_print_centered(luout, - & 'IAO-IBO localization', 20, .true.) + & 'IAO-IBO localization', 25, .true.) else write (luout,*) 'loctype =',loctype write (luout,*) 'LocType value not supported. Exiting.' return end if end if - + +c retrieve localization option from rtdb if it exists + + if (.not. rtdb_get(rtdb, 'prop:loc_opt', mt_int, 1, + & loc_opt )) + & loc_opt = 0 + +c option is currently only implemented for IBOs: + + if (loc_opt.gt.0 .and. (loctype.ne.3)) then + if (oprint) write(luout,'(/1x,a/1x,a)') + & 'localization option not implemented for chosen loc. type', + & 'setting option to 0 ...' + loc_opt = 0 + end if + + if (oprint) then + if (loc_opt .eq.0) then + call util_print_centered(luout, + & '(occupied orbitals)', 25, .false.) + else if (loc_opt.eq.1) then + call util_print_centered(luout, + & '(virtual orbitals)', 25, .false.) + else if (loc_opt.eq.2) then + call util_print_centered(luout, + & '(occ and virt orbitals)', 25, .false.) + else + call errquit(pname//': localization option out of range', + & loc_opt, INPUT_ERR) + end if + end if + + c ------------------------------------------------------- c assemble some data: @@ -160,8 +188,19 @@ subroutine localization_driver (rtdb, basis, geom, loctype) if (debug) & write (luout,*) 'loc driver: nclosed,nopen,nvirt',nclosed(1), - & nopen(1), nvirt(1) - + & nopen(1), nvirt(1) + + natoms = 0 + + if (.not. geom_ncent(geom, natoms)) call errquit + & (pname//': geom',0, GEOM_ERR) + + if (natoms.lt.1) call errquit + & (pname//': could not get natoms from rtdb', 911, UNKNOWN_ERR) + + if (natoms.gt.nw_max_atom) call errquit + & (pname//': nw_max_atom too small ', 911, UNKNOWN_ERR) + c Skip localization if we have an open-shell system c (to be extended eventually, localizing alpha and c beta spin orbitals separately): @@ -190,9 +229,15 @@ subroutine localization_driver (rtdb, basis, geom, loctype) c bounds: if (nmo.gt.maxnloc) call - & errquit('loc_driver: maxnloc too small',0, BASIS_ERR) + & errquit('loc_driver: maxnloc too small',0, BASIS_ERR) + +c for the time being, we set these variables here: + + ispin = 1 + nocc = nclosed(1) + nvir = nvirt(ispin) + - c -------------------------------------------- c setup complete. Now proceed to the localization c -------------------------------------------- @@ -471,335 +516,72 @@ subroutine localization_driver (rtdb, basis, geom, loctype) if (.not. ga_destroy(g_smat)) call errquit( & 'loc_driver: error destroying g_smat',0, GA_ERR) -c ================================================================ - - else if (loctype.eq.3) then - -c ==================== -c IAO-IBO localization -c ==================== - -c AO Overlap Matrix S1 -> g_smat: - - g_smat = ga_create_atom_blocked(geom, basis, 'loc:smat') - call ga_zero(g_smat) - call int_1e_ga(basis, basis, g_smat, 'overlap', .false.) - -c auxiliary basis overlap S2 -> g_s2 basis needs to defined in the -c input as "iao basis". we will now create the basis here and then -c calculate the overlap and the mixed ao-iao basis overlap S12 - - if (.not. bas_create(minbas, 'iao basis')) - & call errquit(pname//': cannot create iao bas', 86, BASIS_ERR) - - if (.not. bas_rtdb_load(rtdb, geom, minbas, 'iao basis')) - & call errquit(pname//': iao basis not present', 86, BASIS_ERR) - - if (.not. int_normalize(rtdb,minbas)) - & call errquit(pname//': int_normalize failed iao', 86, INT_ERR) - - if (.not. bas_numbf(minbas, nbf_iao)) - & call errquit(pname//': bas error nbf_iao', 86, BASIS_ERR) - - if (.not. bas_nprim_cn_max(minbas,nbf_iao_mxprim)) - & call errquit(pname//': bas error iao mxprim', 86, BASIS_ERR) - - if (.not. bas_high_angular(minbas,nbf_iao_mxang)) - & call errquit(pname//': bas error iao mxang', 86, BASIS_ERR) - - if (.not. bas_ncontr_cn_max(minbas,nbf_iao_mxcont)) - & call errquit(pname//': bas error iao mxcont', 86, BASIS_ERR) - - if (.not. bas_nbf_cn_max(minbas,nbf_iao_mxnbf_cn)) - & call errquit(pname//': bas error iao mcnbf_cn', 86, BASIS_ERR) - - if (.not. bas_nbf_ce_max(minbas,nbf_iao_mxnbf_ce)) - & call errquit(pname//': bas error iao mxnbf_ce', 86, BASIS_ERR) - - if (.not. bas_numcont(minbas,nshells_iao)) - & call errquit(pname//': bas error iao nshells', 86, BASIS_ERR) - -c create overlap for minbas, and the mixed basis-minbas -c overlap S12. -c Then we calculate the projectors P12 and P21 -c via solving S1 P12 = S12 for P12 etc. - - g_s2 = ga_create_atom_blocked(geom, minbas, 'loc:s2') - call ga_zero(g_s2) - call int_1e_ga(minbas, minbas, g_s2, 'overlap', .false.) - - if (.not. ga_create(MT_DBL, nbf, nbf_iao, 'loc:s12', - & nbf, 0, g_s12)) call errquit(pname//': S12',61, GA_ERR) - - call ga_zero(g_s12) - call int_1e_ga(basis, minbas, g_s12, 'overlap', .false.) - - if (.not.ga_duplicate(g_s12, g_p12, 'g_p12')) call - & errquit(pname//': ga_dup P12',62,GA_ERR) - - call ga_copy(g_s12, g_p12) - -#ifdef SCALAPACK - info = ga_solve(g_smat, g_p12) - if (debug) write(luout,*) - & 'info from ga_solve P12:', info -#else - if (debug) write(luout,*) 'call 1 ma_solve' - call ma_solve(g_smat, g_p12) -#endif - - if (.not. ga_create(MT_DBL, nbf_iao, nbf, 'loc:p21', - & nbf_iao, 0, g_p21)) call errquit(pname//': P21',63, GA_ERR) - - call ga_transpose(g_s12, g_p21) - if (debug) write(luout,*) 'P12 assembled' - -c S12 no longer needed - if (.not. ga_destroy(g_s12)) - & call errquit(pname//': ga_destroy failed g_s12',61, GA_ERR) - -c : scalapack throws a 'ga_to_SL: rows/cols error' so we're using -c ma_solve for the time being -c#ifdef SCALAPACK -c info = ga_solve(g_s2, g_p21) -c if (debug) write(luout,*) -c & 'info from ga_solve P21:', info -c#else - if (debug) write(luout,*) 'call 2 ma_solve' - call ma_solve(g_s2, g_p21) -c#endif - -c g_s2 no longer needed - if (.not. ga_destroy(g_s2)) call errquit( - & pname//': error destroying g_s2',0, GA_ERR) - - if (dbg>1) then - call ga_print(g_p12) - call ga_print(g_p21) - end if - -c store P12 * P21 in array g_temp; we'll need it soon - - if (.not.ga_duplicate(g_smat, g_temp, 'g_temp')) call - & errquit(pname//': ga_dup temp', 71, GA_ERR) - - call ga_dgemm('n', 'n', nbf, nbf, nbf_iao, - & 1.0d0, g_p12, g_p21, 0.0d0, g_temp) - - if (debug) write (luout,*) 'p12 p21 -> temp' - -c P21 is no longer needed - - if (.not. ga_destroy(g_p21)) - & call errquit(pname//': ga_destroy failed g_p21',61, GA_ERR) - -c we will localize the doubly occupied orbitals, assuming a -c closed-shell calculation and no designated core -c corbitals. Eventually, this will need to be extended to a loop -c over spins, for unrestricted SCF, and we may want to add -c localization of the virtual space, too - - if (.not. geom_num_core(rtdb, geom, 'ddscf', ncore)) ncore = 0 - - if (debug) write (luout,*) 'ncore = ',ncore - - ispin = 1 - - do i = 1, nclosed(ispin) - iloc(i) = i - end do - nloc = nclosed(ispin) - -c copy the relevant CMOs to g_mo - - if (.not. ga_create(MT_DBL, nbf, nloc, 'loc:g_mo', - & nbf, 0, g_mo)) call errquit(pname//': g_mo',0, GA_ERR) - - call ga_copy_patch('n', - & g_movecs(ispin), 1, nbf, 1, nloc, - & g_mo, 1, nbf, 1, nloc) - - if (debug) write (luout,*) 'movecs -> mo' - -c create C-tilde from Appendix C of Knizia's IBO paper. g_temp -c holds P12 * P21; we won't need it after the next matrix -c multiplication - - if (.not. ga_create(MT_DBL, nbf, nloc, 'loc:ctilde', - & nbf, 0, g_ctilde)) call errquit('loc_driver: sc',0, GA_ERR) - - call ga_dgemm('n', 'n', nbf, nloc, nbf, - & 1.0d0, g_temp, g_mo, 0.0d0, g_ctilde) - - if (.not. ga_destroy(g_temp)) - & call errquit(pname//': ga_destroy failed g_temp',71, GA_ERR) - - if (debug) write (luout,*) 'pre sym_orth 1' - call sym_orth(g_ctilde, g_smat, nbf, nloc) - - if (dbg>1) call ga_print(g_ctilde) - -c now assemble the matrix products to form matrix A from Appendix -c C of the IBO paper. The result will be accumulated in array -c g_iao which are the IAOs in basis 1. The shape of the array is -c the same as P12 - - if (.not.ga_duplicate(g_smat, g_tmp1, 'g_tmp1')) call - & errquit(pname//': ga_dup tmp1', 72, GA_ERR) - - if (.not.ga_duplicate(g_smat, g_tmp2, 'g_tmp2')) call - & errquit(pname//': ga_dup tmp2', 72, GA_ERR) - - if (.not.ga_duplicate(g_smat, g_temp, 'g_temp')) call - & errquit(pname//': ga_dup temp', 72, GA_ERR) - - if (.not.ga_duplicate(g_p12, g_iao, 'g_iao')) call - & errquit(pname//': ga_dup iao', 72, GA_ERR) +c =============================================================== -c C * C(trans) - call ga_dgemm('n', 't', nbf, nbf, nloc, - & 1.0d0, g_mo, g_mo, 0.0d0, g_temp) - -c C * C(trans) * S1 -> tmp1 - call ga_dgemm('n', 'n', nbf, nbf, nbf, - & 1.0d0, g_temp, g_smat, 0.0d0, g_tmp1) - -c tilde-C * tilde-C(trans) - call ga_dgemm('n', 't', nbf, nbf, nloc, - & 1.0d0, g_ctilde, g_ctilde, 0.0d0, g_temp) - -c tilde-C * tilde-C(trans) * S1 -> tmp2 - call ga_dgemm('n', 'n', nbf, nbf, nbf, - & 1.0d0, g_temp, g_smat, 0.0d0, g_tmp2) - -c C * C(trans) * S1 * tilde-C * tilde-C(trans) * S1 - - call ga_dgemm('n', 'n', nbf, nbf, nbf, - & 1.0d0, g_tmp1, g_tmp2, 0.0d0, g_temp) - -c multiply prev. result by P12 and store in g_iao - - call ga_dgemm('n', 'n', nbf, nbf_iao, nbf, - & 1.0d0, g_temp, g_p12, 0.0d0, g_iao) - -c form C * C(trans) -1 - call ga_add_todiag(g_tmp1, -1.0d0) - -c form tilde-C * tilde-C(trans) -1 - call ga_add_todiag(g_tmp2, -1.0d0) - -c multiply the two prev. results with each other, then multiply -c the result with P12 and add to g_iao - - call ga_dgemm('n', 'n', nbf, nbf, nbf, - & 1.0d0, g_tmp1, g_tmp2, 0.0d0, g_temp) - - call ga_dgemm('n', 'n', nbf, nbf_iao, nbf, - & 1.0d0, g_temp, g_p12, 1.0d0, g_iao) - -c g_ctilde no longer needed - - if (.not. ga_destroy(g_ctilde)) - & call errquit(pname//': ga_destroy failed ctilde',62, GA_ERR) - -c delete temp arrays before calling sym_orth, which allocates its -c own temp memory - - if (.not. ga_destroy(g_tmp1)) - & call errquit(pname//': ga_destroy failed g_tmp1',71, GA_ERR) - - if (.not. ga_destroy(g_tmp2)) - & call errquit(pname//': ga_destroy failed g_tmp2',71, GA_ERR) - - if (.not. ga_destroy(g_temp)) - & call errquit(pname//': ga_destroy failed g_temp',71, GA_ERR) -c last step: orthonormalize g_iao - - if (debug) write (luout,*) 'pre sym_orth 2' - call sym_orth(g_iao, g_smat, nbf, nbf_iao) - - call ga_sync - - if (dbg>1) call ga_print(g_iao) - -c check orthogonality of IAOs w.r.t. metric S1 -c g_p12 is used for scratch - - if (.not. ga_create(MT_DBL, nbf_iao, nbf_iao, 'g_temp', - & nbf_iao, 0, g_temp)) call errquit(pname//': temp',73, GA_ERR) - - call ga_dgemm('n', 'n', nbf, nbf_iao, nbf, - & 1.0d0, g_smat, g_iao, 0.0d0, g_p12) - - call ga_dgemm('t', 'n', nbf_iao, nbf_iao, nbf, - & 1.0d0, g_iao, g_p12, 0.0d0, g_temp) - - if (dbg>1) call ga_print(g_temp) - - call ga_add_todiag(g_temp, -1.0d0) - - call ga_maxelt(g_temp, rtemp) - if (master) then - write(luout,'(/1x,a,1x,f18.12)') - & 'IBO loc: largest element in C(iao, trans) S C(iao) -1: ', - & rtemp - write(luout,'(1x,a/1x,a/)') - & 'Significant deviations from zero may indicate', - & 'elevated numerical noise in the IAO generation' - end if - - if (.not. ga_destroy(g_temp)) - & call errquit(pname//': ga_destroy failed g_temp',73, GA_ERR) - -c g_p12 no longer needed - - if (.not. ga_destroy(g_p12)) - & call errquit(pname//': ga_destroy failed g_p12',61, GA_ERR) - -c allocate some memory used in the localization routine: - - if (.not. ma_push_get(mt_dbl, 2*nbf_iao, 'c', l_c, k_c)) - & call errquit(pname//': ma for c', 0, MA_ERR) - - -c jochen: comment -c IBO localization was modeled on the pre-existing PM -c localization code - call localizeIBO(basis, minbas, - & dbl_mb(k_c), - & nloc, iloc, nbf, nmo, g_mo, g_smat, g_iao, nbf_iao, - & dbl_mb(k_eval+(ispin-1)*nbf), dbl_mb(k_occ+(ispin-1)*nbf)) - -c g_mo now holds the localized MOs in the AO basis - -c assuming occupied MO localization, we copy the LMOs into the -c relevant part of movecs - - call ga_copy_patch('n', - & g_mo, 1, nbf, 1, nloc, - & g_movecs(1), 1, nbf, 1, nloc) - - -c deallocate remaining arrays that are no longer needed - - if (.not. ma_pop_stack(l_c)) call errquit( - & pname//': error MA pop c',0, MA_ERR) - - if (.not. ga_destroy(g_iao)) call errquit( - & pname//': error destroying g_iao',0, GA_ERR) + else if (loctype.eq.3) then - if (.not. ga_destroy(g_mo)) call errquit( - & pname//': error destroying g_mo',0, GA_ERR) - -c smat not needed anymore - if (.not. ga_destroy(g_smat)) call errquit( - & pname//': error destroying g_smat',0, GA_ERR) +c =================================================== +c IAO-IBO localization (occupied or virtual orbitals) +c =================================================== -c destroy minimal basis (iao basis) - if (.not.bas_destroy(minbas)) - & call errquit(pname//'iao bas_destroy failed',0,BASIS_ERR) + ispin = 1 + nocc = nclosed(ispin) + nvir = nvirt(ispin) + +c allocate MA array for pairs of MOs. The actual dimensions +c needed are less or equal to 2*nbf + + if (.not. ma_push_get(mt_dbl, 2*nbf, 'c mo', l_c, k_c)) + & call errquit(pname//': ma for c', 0, MA_ERR) + + if (.not. ma_push_get(mt_dbl, natoms, 'pop', l_pop, k_pop)) + & call errquit(pname//': loc:pop', 0, MA_ERR) + + if (.not. ma_push_get(mt_int, natoms, 'list', l_list, k_list)) + & call errquit(pname//': loc:list', 0, MA_ERR) + + if (loc_opt.eq.0) then + ltyp = 'occ' + call ibo_localization(rtdb, geom, ltyp, basis, + & g_movecs(ispin),nocc,nvir, nmo, nbf, natoms, + & dbl_mb(k_eval+(ispin-1)*nbf), + & dbl_mb(k_occ+(ispin-1)*nbf), + & dbl_mb(k_c), + & dbl_mb(k_pop), int_mb(k_list)) + + else if (loc_opt.eq.1) then + ltyp = 'vir' + call ibo_localization(rtdb, geom, ltyp, basis, + & g_movecs(ispin),nocc,nvir, nmo, nbf, natoms, + & dbl_mb(k_eval+(ispin-1)*nbf), + & dbl_mb(k_occ+(ispin-1)*nbf), + & dbl_mb(k_c), + & dbl_mb(k_pop), int_mb(k_list)) + + else if(loc_opt.eq.2) then + ltyp = 'occ' + call ibo_localization(rtdb, geom, ltyp, basis, + & g_movecs(ispin),nocc,nvir, nmo, nbf, natoms, + & dbl_mb(k_eval+(ispin-1)*nbf), + & dbl_mb(k_occ+(ispin-1)*nbf), + & dbl_mb(k_c), + & dbl_mb(k_pop), int_mb(k_list)) + + ltyp = 'vir' + call ibo_localization(rtdb, geom, ltyp, basis, + & g_movecs(ispin),nocc,nvir, nmo, nbf, natoms, + & dbl_mb(k_eval+(ispin-1)*nbf), + & dbl_mb(k_occ+(ispin-1)*nbf), + & dbl_mb(k_c), + & dbl_mb(k_pop), int_mb(k_list)) + + else + call errquit(pname//': loc_opt out of range',loc_opt, + & UNKNOWN_ERR) + + end if ! loc_opt end if ! loctype @@ -849,84 +631,6 @@ subroutine localization_driver (rtdb, basis, geom, loctype) & 10x,28(1h*),/,10x,'*** ORBITAL LOCALIZATION ***',/, & 10x,28(1h*)/) - 9020 format(/,10x,'Open shell calculations not yet implemented', + 9020 format(/,10x,'Spin-unrestricted calculations not yet implemented', & ' for the Localization module. Exiting') end - -c ================================================================= - - subroutine sym_orth(g_c, g_s, n1, n2) - - implicit none - -#include "global.fh" -#include "mafdecls.fh" -#include "errquit.fh" -#include "stdio.fh" -#include "numerical_constants.fh" - -c Given input vectors collected in matrix C, and a metric S, -c calculate -c C' = C times [transpose(C) S C]**(-1/2) such that -c transpose(C') S C = unit matrix - -c matrix S is square symmetric, dimension n1, n1 -c matrix C has dimension n1, n2 - -c in the calling routine, matrix C may be allocated with more than -c n2 columns, which is the reason we use ga_copy_patch below - - integer g_c ! in/out - integer g_s ! input - - integer n1, n2 ! input - - integer g_sc, g_csc - - character*(8) pname - - logical debug - -c ----------------------------------------------------------------- - - pname = 'sym_orth' - - debug = .false. .and. ga_nodeid().eq.0 !during development - - if (debug) write(luout,*) 'entering '//pname - - if(.not.ga_create(mt_dbl,n1,n2,'g_sc',0,0,g_sc)) - & call errquit(pname//': error creating g_sc',141, GA_ERR) - - if(.not.ga_create(mt_dbl,n2,n2,'g_csc',0,0,g_csc)) - & call errquit(pname//': error creating g_csc',142, GA_ERR) - - call ga_dgemm('n','n',n1, n2, n1, 1.0d0, - & g_s, g_c, 0.0d0, g_sc) - - call ga_dgemm('t','n',n2, n2, n1, 1.0d0, - & g_c, g_sc, 0.0d0, g_csc) - - call ga_matpow(g_csc, -FP_Half, 1d-12) - - call ga_copy_patch('n', - & g_c, 1, n1, 1, n2, - & g_sc, 1, n1, 1, n2) - - call ga_dgemm('n','n',n1, n2, n2, 1.0d0, - & g_sc, g_csc, 0.0d0, g_c) - - - if (.not. ga_destroy(g_sc)) - & call errquit(pname//': error destroy g_sc',141, GA_ERR) - - if (.not. ga_destroy(g_csc)) - & call errquit(pname//': error destroy g_csc',142, GA_ERR) - - if (debug) write(luout,*) 'leaving '//pname - - return - - end - - diff --git a/src/property/prop_input.F b/src/property/prop_input.F index 79f41912b9..1d4c5fe842 100644 --- a/src/property/prop_input.F +++ b/src/property/prop_input.F @@ -68,7 +68,7 @@ subroutine prop_input(rtdb) integer aoresponse, nfreq, l_fr, k_fr, & velocity, magneticpert, aor_giao, aor_damp, aor_conv, & aor_orbeta, aor_gprime, aor_quad, aor_analyze, - & loc_boys, loc_pm, loc_ibo + & loc_boys, loc_pm, loc_ibo, loc_opt, itmp double precision gamwidth, convergence c c>>> declarations from NWdft @@ -144,7 +144,8 @@ subroutine prop_input(rtdb) loc_boys = 1 loc_pm = 1 loc_ibo = 1 -c + loc_opt = 0 +c c read inputs; store in rtdb c do iline = 1,infinity ! infinite loop over input lines @@ -315,15 +316,29 @@ subroutine prop_input(rtdb) if (inp_a(test)) then if ( inp_compare(.false., 'boys', test)) then loc_boys = 0 + itmp = 0 + if (inp_i(itmp)) then ! localization option + loc_opt = itmp + end if elseif ( inp_compare(.false., 'ibo', test)) then loc_ibo = 0 + itmp = 0 + if (inp_i(itmp)) then ! localization option + loc_opt = itmp + end if elseif ( inp_compare(.false., 'pm', test)) then loc_pm = 0 + itmp = 0 + if (inp_i(itmp)) then ! localization option + loc_opt = itmp + end if else ! default is PM loc_pm = 0 + loc_opt = 0 end if else loc_pm = 0 + loc_opt = 0 end if c ... jochen end elseif ( inp_compare(.false., 'stoneanalysis', test)) then @@ -687,7 +702,12 @@ subroutine prop_input(rtdb) c if (.not. rtdb_put(rtdb, 'prop:loc_ibo', mt_int, 1, $ loc_ibo )) - $ call errquit('prop_input: rtdb_put failed', 0, RTDB_ERR) + $ call errquit('prop_input: rtdb_put failed', 0, RTDB_ERR) +c + if (.not. rtdb_put(rtdb, 'prop:loc_opt', mt_int, 1, + $ loc_opt )) + $ call errquit('prop_input: rtdb_put failed', 0, RTDB_ERR) +c if (.not. rtdb_put(rtdb, 'prop:spinspin', mt_int, 1, $ spinspin )) $ call errquit('prop_input: rtdb_put failed', 0, RTDB_ERR) diff --git a/src/property/prp.F b/src/property/prp.F index 7dfed962d9..dbcf23ff74 100644 --- a/src/property/prp.F +++ b/src/property/prp.F @@ -34,8 +34,8 @@ subroutine hnd_propty(rtdb,basis,geom) 2 nogiao,nogshift,noston,nospinspin,noaoresponse,noboysloc, 3 nopmloc,noiboloc,noelpiso 4 / 1, 1, 1, 1, 1, 1, 1, 1, 1, - 5 1, 1, 1, 1, 1, 1, 1, 1, - 6 1, 1, 1, 1, 1, 1, 1, 1, 1 / + 5 1, 1, 1, 1, 1, 1, 1, 1, 1, + 6 1, 1, 1, 1, 1, 1, 1, 1 / c out =.false. some =.true. @@ -63,6 +63,7 @@ subroutine hnd_propty(rtdb,basis,geom) status=rtdb_get(rtdb,'prop:loc_ibo',MT_INT,1,noiboloc) status=rtdb_get(rtdb,'prop:esp',MT_INT,1,noelp) !done + status=rtdb_get(rtdb,'prop:espiso',MT_INT,1,noelpiso) !done status=rtdb_get(rtdb,'prop:efield',MT_INT,1,noelf) !done status=rtdb_get(rtdb,'prop:efieldgrad',MT_INT,1,noelfg) !done @@ -89,8 +90,8 @@ subroutine hnd_propty(rtdb,basis,geom) if (noboysloc.eq.0) then call localization_driver(rtdb, basis, geom, 2) end if -c -c Boys localization + +c IBO localization if (noiboloc.eq.0) then call localization_driver(rtdb, basis, geom, 3) end if diff --git a/src/task/task_energy.F b/src/task/task_energy.F index f5560a47e0..932436bd3a 100644 --- a/src/task/task_energy.F +++ b/src/task/task_energy.F @@ -239,12 +239,14 @@ logical function task_energy_doit(rtdb,theory,energy) external wfn1_task_energy logical xtb_energy external xtb_energy + logical dft_guesshfx,nwdft + external dft_guesshfx,nwdft c logical status double precision dipole(3) character*80 key, prefix c - logical dftmp2 + logical dftmp2,dftguess integer which_mp2 c #ifndef SKIP_ECCE @@ -267,6 +269,11 @@ logical function task_energy_doit(rtdb,theory,energy) c prefix = theory ! Most common scenario if (theory .eq. 'scf') then + if(dft_guesshfx(rtdb)) then + if(.not.nwdft(rtdb)) call errquit + D ('scfvecguess failed dft call',0,0) + call dft_sethfx_cleanup(rtdb) + endif status = scf(rtdb) else if (theory .eq. 'smd') then status = task_smd_energy(rtdb) diff --git a/travis/cache_fetch.sh b/travis/cache_fetch.sh index 840bb05656..f0a9b1932f 100755 --- a/travis/cache_fetch.sh +++ b/travis/cache_fetch.sh @@ -1,4 +1,5 @@ #!/bin/bash +set -v ls -Rla ~/cache [ -d ~/cache/libext ] && rsync -av ~/cache/libext/* src/libext/. [ -d ~/cache/simint/simint_install/lib ] && \ @@ -7,3 +8,7 @@ [ -f ~/cache/tarballs/dftd3.tgz ] && rsync -av ~/cache/tarballs/dftd3.tgz src/nwpw/nwpwlib/nwpwxc/dftd3.tgz || true [ -f ~/cache/libxc/install/lib/libxc.a ] && rsync -av ~/cache/libxc/install src/libext/libxc/. || true echo "cache fetched" + echo " mpich debug " + ls -lart /home/runner/work/nwchem/nwchem/src/libext/mpich/mpich/../../include || true + ls -lart /home/runner/work/nwchem/nwchem/src/libext/include || true + ls -lart /home/runner/work/nwchem/nwchem/src/libext/mpich || true diff --git a/travis/cache_store.sh b/travis/cache_store.sh index 0b26d89a42..3eeb71ab8a 100755 --- a/travis/cache_store.sh +++ b/travis/cache_store.sh @@ -1,7 +1,7 @@ #!/bin/bash - mkdir -p ~/apps || true mkdir -p ~/cache/libext/lib ~/cache/libext/bin ~/cache/libext/include ~/cache/libext/mpich || true mkdir -p ~/cache/libext/mpich/mpich || true + mkdir -p ~/cache/libext/lib ~/cache/libext/bin ~/cache/libext/include || true mkdir -p ~/cache/simint/simint_install || true mkdir -p ~/cache/tarballs || true mkdir -p ~/cache/libxc || true @@ -14,3 +14,6 @@ [ -f "src/libext/libxc/install/lib/libxc.a" ] && rsync -av src/libext/libxc/install ~/cache/libxc/. || true echo "cache stored" ls -Rla ~/cache + du -sh ~/cache + du -sh ~/cache/* || true + du -sh ~/cache/*/* || true diff --git a/travis/run_qas.sh b/travis/run_qas.sh index f415fb4412..45bccac426 100755 --- a/travis/run_qas.sh +++ b/travis/run_qas.sh @@ -113,6 +113,7 @@ fi # check if dft is among modules if [[ ! $(grep -i dft $TRAVIS_BUILD_DIR/src/stubs.F| awk '/dft_input/') ]]; then cd $TRAVIS_BUILD_DIR/QA && ./runtests.mpi.unix procs $nprocs dft_he2+ + cd $TRAVIS_BUILD_DIR/QA && ./runtests.mpi.unix procs $nprocs bas_details cd $TRAVIS_BUILD_DIR/QA && NWCHEM_BASIS_LIBRARY=${NWCHEM_TOP}/src/basis/libraries.bse/ ./runtests.mpi.unix procs $nprocs adft_he2+ if [[ ! $(grep -i prop $TRAVIS_BUILD_DIR/src/stubs.F| awk '/prop_input/') ]]; then cd $TRAVIS_BUILD_DIR/QA && ./runtests.mpi.unix procs $nprocs prop_mep_gcube @@ -161,7 +162,9 @@ fi cd $TRAVIS_BUILD_DIR/QA && ./runtests.mpi.unix procs $nprocs tddftgrad_h2o_cis_lda cd $TRAVIS_BUILD_DIR/QA && ./runtests.mpi.unix procs $nprocs au2-sarc-zora-mp cd $TRAVIS_BUILD_DIR/QA && ./runtests.mpi.unix procs $nprocs x2c-h2se - if [[ ! -z "$USE_LIBXC" ]]; then + cd $TRAVIS_BUILD_DIR/QA && ./runtests.mpi.unix procs $nprocs dftd3_c6cn + cd $TRAVIS_BUILD_DIR/QA && ./runtests.mpi.unix procs $nprocs xe-zora-mp-so + if [[ ! -z "$USE_LIBXC" ]] || [[ ! -z "$LIBXC_INCLUDE" ]]; then cd $TRAVIS_BUILD_DIR/QA && ./runtests.mpi.unix procs $nprocs libxc_he2+ fi fi