Dear Developers
I would need to print the Molecular orbitals (MOS) in the molden format (with cartesian GTOs).
I checked that the molden format for MOS is available just in the sections MINBAS_ANALYSIS and XAS.
Could you please give me a few hints on how to modify cp2k for printing the MOS in the molden format?
Best Regards
Luca
Dear Matt
Thank you for your answer. However, I still believe that the printed formats do not differ only for the ordering. Furthermore, modifying NDIGITS does not fix the issue.
This means that the printed MOLDEN file cannot be used for quantitative post-processing.
I performed tests on H atoms and the H2 molecule, and in both the cases, the MOLDEN-file does not contain the right orbitals.
Below I will report the H case. The orbital printed in the MOLDEN FORMAT is not normalized, as you can easily check by printing the OVERLAP matrix.
Please find below the different formats and the overlap (NDIGITS = 12) :
CP2K-FORMAT : Occupied orbital of H
1 1 H 1s 0.860523926375
2 1 H 2s -0.147897200557
3 1 H 2px -0.000000000000
4 1 H 2py -0.000000000000
5 1 H 2pz -0.000000000000
MOLDEN-Format :Occupied orbital of H
Ene= -0.25103226963873182
Spin= Alpha
Occup= 1.0000000000000000
2 8.605239264E-01
OVERLAP
1s 2s
1 1 H 1s 1.000000008914 -0.933553473764
2 1 H 2s -0.933553473764 1.000000029566
-----------------------------------------------------------------------------------------------------------------------------------------
The right MOLDEN FORMAT should be (I tested it):
1 0.860523926375
2 -0.147897200557
Best Regards.
Luca
DO orbital = 1, 15
IF (orbmap(orbital) .NE. 0) THEN
WRITE (iw, fmtstr1) irow_in+orbital, mo_coeff(orbmap(orbital))
IF (mo_coeff(orbmap(orbital)) .GT. 10.0**(-digits)) THEN
WRITE(6,*) "skipping this orbital"
END IF
END IF
END DODear Matt
Thank you for your answer. However, I still believe that the printed formats do not differ only for the ordering. Furthermore, modifying NDIGITS does not fix the issue.
This means that the printed MOLDEN file cannot be used for quantitative post-processing.
I performed tests on H atoms and the H2 molecule, and in both the cases, the MOLDEN-file does not contain the right orbitals.
Below I will report the H case. The orbital printed in the MOLDEN FORMAT is not normalized, as you can easily check by printing the OVERLAP matrix.
Please find below the different formats and the overlap (NDIGITS = 12) :
CP2K-FORMAT : Occupied orbital of H
1 1 H 1s 0.860523926375
2 1 H 2s -0.147897200557
3 1 H 2px -0.000000000000
4 1 H 2py -0.000000000000
5 1 H 2pz -0.000000000000
MOLDEN-Format :Occupied orbital of H
One = -0.25103226963873182
Dear Matt
The following code seems to give the correct MOLDEN-FORMAT. Please note that:
1) I modified (irow_in+orbital ) in (irow_in+orbital – 1)
2) I tested molden formatted files containing no more than s,p,d functions.
DO orbital = 1, 15
IF (orbmap(orbital) .NE. 0) THEN
WRITE (iw, fmtstr1) irow_in+orbital - 1 , mo_coeff(orbmap(orbital))
END IF
END DO
By adding the following clause:
IF (mo_coeff(orbmap(orbital)) .GT. 10.0**(-digits))
One obtains an incomplete MODLEN formatted file since it misses some coefficients greater than 10.0**(-digits).
Best Regards.
Luca
IF (ABS(mo_coeff(orbmap(orbital))) .GT. 10.0**(-digits))Best Regards
Luca
Dear Matt
Could you please let me know if the orbitals projected on the CARTESIAN - GTOs are normalized?
The basis set (Normalized-Cartesian-GTOs) printed in the MOLDEN formatted file is consistent with the basis set printed by the NWCHEM code.
When I use the MOLDEN formatted file printed by NWCHEM, my code gives the right number of electrons.
When I use the orbitals printed by CP2K, I am not able to get the right number of electrons in the system.
Considering that the basis set is the same, the CP2K orbitals projected on the Normalized-Cartesian-GTOs could not be normalized.
Dear Luca
Change the format in line 157 of cp2k/src/molden_utils.F from FMT="((T51,2F15.6))" to FMT="((T51,2F20.12))" for instance. If that works fine with MOLDEN then we could apply the NDIGITS keyword also to that format.
Best regards
Matthias
--
You received this message because you are subscribed to the Google Groups "cp2k" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
cp2k+uns...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/cp2k/0c10e020-799a-4c83-95aa-9fe8a7d64c86n%40googlegroups.com.
Dear Luca
FYI, in the CP2K trunk version the keyword NDIGITS controls now also the accuracy of the MOLDEN basis set output.
Best regards
Matthias
To view this discussion on the web visit https://groups.google.com/d/msgid/cp2k/b643aa32-837b-4162-a5a2-fe9ef5faf3bfn%40googlegroups.com.