molden2qmc

General discussion of the Cambridge quantum Monte Carlo code CASINO; how to install and setup; how to use it; what it does; applications.
Vladimir_Konjkov
Posts: 171
Joined: Wed Apr 15, 2015 3:14 pm

Re: molden2qmc

Post by Vladimir_Konjkov »

In 3.0.1 version of molden2qmc QChem is supported.

For QChem only spherical-harmonic angular functions are supported. You should checkout PURECART variable which handle the angular form of the basis functions, default value is applicable.

To get molden output in QChem run it with the following parameters:

MOLDEN_FORMAT true
PRINT_ORBITALS 2000 # or more than number of orbitals

After that extract molden data from output file with sed utility:

pat1="======= MOLDEN-FORMATTED INPUT FILE FOLLOWS ======="
pat2="======= END OF MOLDEN-FORMATTED INPUT FILE ======="
sed -n "/$(pat1)/,/$(pat2)/{/$(pat1)/!{/$(pat2)/!p}}" qchem_out > mol.molden

and than run molden2qmc with code 7
molden2qmc.py 7 mol.molden

molden2qmc now is none-interactive and can be used in a batch execution.

usage: molden2qmc.py [-h] [--pseudoatoms PSEUDOATOMS] code input_file [output_file]

This script converts a MOLDEN file to a CASINO gwfn.data file.

positional arguments:
code number corresponding to the quantum chemistry code used to produce this MOLDEN file:
0 -- TURBOMOLE
1 -- PSI4
2 -- CFOUR 2.0beta
3 -- ORCA 3.X - 4.X
4 -- DALTON2013
5 -- MOLPRO
6 -- NWCHEM
7 -- QCHEM 4.X
input_file filename with path to MOLDEN file
output_file filename with path to output file

optional arguments:
-h, --help show this help message and exit
--pseudoatoms PSEUDOATOMS
This script did not detect if a pseudopotential was used.
Please enter the list of atoms for those pseudopotential was used:
none = pseudopotential was not used for any atoms in this calculation.
all = pseudopotential was used for all atoms in this calculation.
white space separated numbers = number of pseudoatoms (started from 1).
In Soviet Russia Casino plays you.
Vladimir_Konjkov
Posts: 171
Joined: Wed Apr 15, 2015 3:14 pm

Re: molden2qmc

Post by Vladimir_Konjkov »

Hello all

My plan is to add multi-determinant expansion into the molden2qmc script.

What is the best practice of doing this?

Imagine I carried out some sort of multi-reference calculation like CASSCF and put determinants coefficients into the MULTIDETERMINANT INFORMATION section of the gwfn.data file.

Is this the only and best way to provide multi-determinant data to CASINO program?

Is it possible to optimize this determinants coefficients with casl JASTROW format using opt_det_coeff : T

What is the best method to define the MULTIDETERMINANT INFORMATION if seeing the perspective of the development of the CASINO program.

I will be grateful for any advice.

Vladimir.
In Soviet Russia Casino plays you.
Vladimir_Konjkov
Posts: 171
Joined: Wed Apr 15, 2015 3:14 pm

Re: molden2qmc

Post by Vladimir_Konjkov »

Greetings to all who use the Casino. I found an issue in the molden2qmc script that shows up in Python version 3.10. Corrections in the next PR - https://github.com/Konjkov/molden2qmc/c ... 0778cd177d
Sincerely, Vladimir
In Soviet Russia Casino plays you.
Neil Drummond
Posts: 117
Joined: Fri May 31, 2013 10:42 am
Location: Lancaster
Contact:

Re: molden2qmc

Post by Neil Drummond »

Thanks very much for maintaining molden2qmc!
Vladimir_Konjkov
Posts: 171
Joined: Wed Apr 15, 2015 3:14 pm

Re: molden2qmc

Post by Vladimir_Konjkov »

Hello Neil

I also use this script because I took your CASINO source code with comments and partially rewrote it to python3 + numpy + numba
and although it works 3-7 times slower than on Fortran, it is enough to compare results and testing.

Best Vladimir
In Soviet Russia Casino plays you.
Vladimir_Konjkov
Posts: 171
Joined: Wed Apr 15, 2015 3:14 pm

Re: molden2qmc

Post by Vladimir_Konjkov »

A good way to check if the orbitals have been parsed correctly is to compute the molecular orbital overlap matrix, which should give you the identity matrix. The overlap matrix is also very cheap to compute, even for large systems. I think it's worth doing this check.
In Soviet Russia Casino plays you.
Vladimir_Konjkov
Posts: 171
Joined: Wed Apr 15, 2015 3:14 pm

Re: molden2qmc

Post by Vladimir_Konjkov »

Hello Mike.

I was wondering why we convert Cartesian GTO to solid-harmonic ones, and not the other way around?
After all, the calculation of the wave function and its partial derivatives is simpler for Cartesian and maybe Hermitian GTO.

WIREs Comput Mol Sci 2012, 2: 290–303 doi: 10.1002/wcms.78 eq. 17-20

Molden file defines the AO to MO transformation matrix (nelec, nbasis_functions), we can also calculate atomic orbitals for each electron position
as matrix (nbasis_functions, nelec), their product gives the Slater determinant. I propose to expand the basic functions from solid-harmonic GTOs in primitive Cartesian Gaussians.

Transformation using the example of d-orbital with D0, D+1, D-1, D+2, D-2 coeffs:
(D0 * (2 * z*z - x*x - y*y) / 2 + D+1 * 3 * x*z + D-1 * 3 * y*z + D+2 * 3 * (x*x - y*y) + D-2 * 6 * x*y) * ψ(r) =
((3*D+2 - D0/2) * x*x + (- 3*D+2 - D0/2) * yy + D0 * z*z + 6*D-2 * x*y + 3*D+1 * x*z + 3*D-1 * y*z) * ψ(r)
constants (3*D+2 - D0/2), (- 3*D+2 - D0/2), 6*D-2, 3*D+1, 3*D-1 can be calculated in advance.
In Soviet Russia Casino plays you.
Post Reply