MRChemSoft / mrchem

MultiResolution Chemistry
GNU Lesser General Public License v3.0
27 stars 21 forks source link

There is no information about the `Environment` in outputs from calculations using solvent #406

Closed Brakjen closed 1 year ago

Brakjen commented 2 years ago

When debugging tests/li_solv I noticed that no information about the Environment is printed to the stdout output file, so it is impossible to deduce that the calculation is performed in an implicit solvent. The json file does course contain all the information, but it would be useful to have some kind of indication that solvation is used, and perhaps some key parameters?

For example, the following

Input file ``` { "world_prec": 1.0e-3, "world_size": 5, "MPI": { "numerically_exact": true }, "Molecule": { "charge": 1, "coords": "Li 0.0 0.0 0.0" }, "WaveFunction": { "method": "pbe0" }, "Environment": { "run_environment": true, "algorithm": "scrf", "kain": 5, "max_iter": 100, "convergence_criterion": "dynamic", "extrapolate_Vr": true, "Cavity": { "cavity_width": 0.5, "spheres": "0.0 0.0 0.0 4.0" }, "Permittivity": { "epsilon_in": 1.0, "epsilon_out": 2.0, "formulation": "exponential" } }, "SCF": { "run": true, "kain": 5, "orbital_thrs": 1.0e-1, "guess_type": "sad_dz" } } ```

generates the following

Output file ``` *************************************************************************** *** *** *** *** *** __ __ ____ ____ _ *** *** | \/ | _ \ / ___| |__ ___ _ __ ___ *** *** | |\/| | |_) | | | '_ \ / _ \ '_ ` _ \ *** *** | | | | _ <| |___| | | | __/ | | | | | *** *** |_| |_|_| \_\\____|_| |_|\___|_| |_| |_| *** *** *** *** VERSION 1.1.0-alpha *** *** *** *** Git branch molecule-class-cleanup-input-parser *** *** Git commit hash 19bec5db6e1e19272d4f-dirty *** *** Git commit author Anders Brakestad *** *** Git commit date Thu Apr 7 16:50:05 2022 +0200 *** *** *** *** Contact: luca.frediani@uit.no *** *** *** *** Radovan Bast Magnar Bjorgve *** *** Roberto Di Remigio Antoine Durdek *** *** Luca Frediani Gabriel Gerez *** *** Stig Rune Jensen Jonas Juselius *** *** Rune Monstad Peter Wind *** *** *** *************************************************************************** --------------------------------------------------------------------------- MPI processes : (no bank) 1 OpenMP threads : 1 Total cores : 1 --------------------------------------------------------------------------- XCFun DFT library Copyright 2009-2020 Ulf Ekstrom and contributors. See http://dftlibs.org/xcfun/ for more information. This is free software; see the source code for copying conditions. There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For details see the documentation. Scientific users of this library should cite U. Ekstrom, L. Visscher, R. Bast, A. J. Thorvaldsen and K. Ruud; J.Chem.Theor.Comp. 2010, DOI: 10.1021/ct100117s --------------------------------------------------------------------------- MRCPP version : 1.4.0-alpha Git branch : HEAD Git commit hash : 2797a7a18efb69942a6e Git commit author : Stig Rune Jensen Git commit date : Fri Mar 12 12:48:07 2021 +0100 Linear algebra : EIGEN v3.3.7 Parallelization : NONE --------------------------------------------------------------------------- =========================================================================== MultiResolution Analysis --------------------------------------------------------------------------- polynomial order : 5 polynomial type : Interpolating --------------------------------------------------------------------------- total boxes : 8 boxes : [ 2 2 2 ] unit lengths : [ 16.00000 16.00000 16.00000 ] scaling factor : [ 1.00000 1.00000 1.00000 ] lower bounds : [ -16.00000 -16.00000 -16.00000 ] upper bounds : [ 16.00000 16.00000 16.00000 ] total length : [ 32.00000 32.00000 32.00000 ] =========================================================================== *************************************************************************** *** *** *** Initializing Molecule *** *** *** *************************************************************************** =========================================================================== Molecule --------------------------------------------------------------------------- Charge : 1 Multiplicity : 1 --------------------------------------------------------------------------- N Atom : x y z --------------------------------------------------------------------------- 0 Li : 0.000000 0.000000 0.000000 --------------------------------------------------------------------------- Center of mass : 0.000000 0.000000 0.000000 =========================================================================== *************************************************************************** *** *** *** Computing Ground State Wavefunction *** *** *** *************************************************************************** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Calculation : Compute initial orbitals Method : Diagonalize SAD Hamiltonian Precision : 1.00000e-03 Screening : 1.20000e+01 StdDev Restricted : True Functional : LDA (SVWN5) AO basis : Hydrogenic orbitals Zeta quality : 2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ =========================================================================== Molecular Orbitals --------------------------------------------------------------------------- Alpha electrons : 1 Beta electrons : 1 Total electrons : 2 --------------------------------------------------------------------------- n Occ Spin : Norm --------------------------------------------------------------------------- 0 2 p : 1.000000000000e+00 =========================================================================== ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Calculation : Compute initial energy Method : DFT (PBE0) Relativity : None Precision : 1.00000e-03 Localization : Off ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ =========================================================================== Molecular Energy (initial) --------------------------------------------------------------------------- Kinetic energy : (au) 7.675564301900 E-N energy : (au) -16.530755287695 Coulomb energy : (au) 3.332799383894 Exchange energy : (au) -0.416484495318 X-C energy : (au) -1.283772997761 Ext. field (el) : (au) 0.000000000000 --------------------------------------------------------------------------- N-N energy : (au) 0.000000000000 Ext. field (nuc) : (au) 0.000000000000 Tot. Reac. Energy : (au) 0.000000000000 El. Reac. Energy : (au) 0.000000000000 Nuc. Reac. Energy : (au) 0.000000000000 --------------------------------------------------------------------------- Electronic energy : (au) -7.222649094979 Nuclear energy : (au) 0.000000000000 --------------------------------------------------------------------------- Total energy : (au) -7.222649094979e+00 : (kcal/mol) -4.532280734932e+03 : (kJ/mol) -1.896306259496e+04 : (eV) -1.965382942427e+02 =========================================================================== =========================================================================== Orbital Energies (initial) --------------------------------------------------------------------------- n Occ Spin : Epsilon --------------------------------------------------------------------------- 0 2 p : (au) -2.332093141176 --------------------------------------------------------------------------- Sum occupied : (au) -4.664186282352 =========================================================================== ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Calculation : Optimize ground state orbitals Method : DFT (PBE0) Relativity : None Checkpointing : Off Max iterations : 100 KAIN solver : 5 Localization : Off Diagonalization : First two iterations Start precision : 1.00000e-03 Final precision : 1.00000e-03 Helmholtz precision : Dynamic Energy threshold : Off Orbital threshold : 1.00000e-01 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ =========================================================================== Iter MO residual Total energy Update --------------------------------------------------------------------------- 0 1.000000e+00 -7.222649094979 -7.222649e+00 1 6.037085e-02 -7.320075664302 -9.742657e-02 --------------------------------------------------------------------------- SCF converged in 1 iterations! =========================================================================== *************************************************************************** *** *** *** Printing Molecular Properties *** *** *** *************************************************************************** =========================================================================== Molecule --------------------------------------------------------------------------- Charge : 1 Multiplicity : 1 --------------------------------------------------------------------------- N Atom : x y z --------------------------------------------------------------------------- 0 Li : 0.000000 0.000000 0.000000 --------------------------------------------------------------------------- Center of mass : 0.000000 0.000000 0.000000 =========================================================================== =========================================================================== Molecular Energy (final) --------------------------------------------------------------------------- Kinetic energy : (au) 7.584212118792 E-N energy : (au) -16.491476051686 Coulomb energy : (au) 3.357678874268 Exchange energy : (au) -0.419594145537 X-C energy : (au) -1.286849061623 Ext. field (el) : (au) 0.000000000000 --------------------------------------------------------------------------- N-N energy : (au) 0.000000000000 Ext. field (nuc) : (au) 0.000000000000 Tot. Reac. Energy : (au) -0.064047398516 El. Reac. Energy : (au) 0.128081335378 Nuc. Reac. Energy : (au) -0.192128733894 --------------------------------------------------------------------------- Electronic energy : (au) -7.127946930408 Nuclear energy : (au) -0.192128733894 --------------------------------------------------------------------------- Total energy : (au) -7.320075664302e+00 : (kcal/mol) -4.593416830208e+03 : (kJ/mol) -1.921885601759e+04 : (eV) -1.991894062512e+02 =========================================================================== =========================================================================== Orbital Energies (final) --------------------------------------------------------------------------- n Occ Spin : Epsilon --------------------------------------------------------------------------- 0 2 p : (au) -2.210659505993 --------------------------------------------------------------------------- Sum occupied : (au) -4.421319011986 =========================================================================== =========================================================================== Dipole Moment (dip-1) --------------------------------------------------------------------------- r_O : 0.000000 0.000000 0.000000 --------------------------------------------------------------------------- Electronic vector : -0.000000 0.000000 -0.000000 Magnitude : (au) 0.000000 : (Debye) 0.000000 --------------------------------------------------------------------------- Nuclear vector : 0.000000 0.000000 0.000000 Magnitude : (au) 0.000000 : (Debye) 0.000000 --------------------------------------------------------------------------- Total vector : 0.000000 0.000000 0.000000 Magnitude : (au) 0.000000 : (Debye) 0.000000 =========================================================================== *************************************************************************** *** *** *** Exiting MRChem *** *** *** *** Wall time : 0h 0m 48s *** *** *** *************************************************************************** ```
Brakjen commented 2 years ago

Well, I guess the energy printouts indicate the solvent, since the Reac. contributions are non-zero:

 Tot. Reac. Energy       :            (au)                 -0.064047398516
 El. Reac. Energy        :            (au)                  0.128081335378
 Nuc. Reac. Energy       :            (au)                 -0.192128733894

But one does not see this until the calculation is over.

stigrj commented 2 years ago

Sorry, forgot about this...

Yes, we need to add a statement in this section

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Calculation             : Optimize ground state orbitals
 Method                  : DFT (PBE0)
 Relativity              : None
 Checkpointing           : Off
 Max iterations          : 100
 KAIN solver             : 5
 Localization            : Off
 Diagonalization         : First two iterations
 Start precision         : 1.00000e-03
 Final precision         : 1.00000e-03
 Helmholtz precision     : Dynamic
 Energy threshold        : Off
 Orbital threshold       : 1.00000e-01
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

saying something like

Environment        : PCM

And then perhaps a completely separate output section in the beginning stating all the PCM parameters, like permittivities, cavity coordinates and radii, boundary width etc

Brakjen commented 2 years ago

I can attempt a fix.

stigrj commented 2 years ago

Perhaps external fields can also be thought of as "Environment"? So a finite electric field calculation could be denoted

Environment            : Electric field [x, y, z]
Brakjen commented 2 years ago

And have them aggregate like this, perhaps?

Environment            : PCM; Electric field [x, y, z]
Brakjen commented 2 years ago

Is it relevant with environments in the guess? For example, in a combined ElectricFields and Environment calculation, will the environment be used during the guess?

stigrj commented 2 years ago

It is definitely not used in the construction of the initial guess orbitals, but it might have an effect on the computed initial energy? You can try to run a test with and without electric field and check if the Molecular Energy (initial) changes