Skip to content

Commit

Permalink
Merge branch 'master' into 'release'
Browse files Browse the repository at this point in the history
Release of Amolqc Version 7.1.0 (Helium)

See merge request luechow-group/Amolqc!12
  • Loading branch information
heueristik committed Feb 25, 2021
2 parents a50b5af + 6087fcc commit 4e38cfb
Show file tree
Hide file tree
Showing 10 changed files with 334 additions and 69 deletions.
73 changes: 73 additions & 0 deletions .zenodo.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
{
"title": "Amolqc",
"description": "<p><strong>Atoms and Molecules with Quantum Monte Carlo</strong></p>",
"license": "GPL-3.0-or-later",
"creators": [
{
"orcid": "0000-0002-1068-0674",
"affiliation": "RWTH Aachen University",
"name": "Lüchow, Arne"
},
{
"name": "Manten, Sebastian"
},
{
"name": "Diedrich, Christian"
},
{
"orcid": "0000-0003-3827-9169",
"name": "Bande, Annika"
},
{
"name": "Scott, Tony C."
},
{
"name": "Schwarz, Annett"
},
{
"name": "Berner, Raphael"
},
{
"name": "Petz, Rene"
},
{
"name": "Sturm, Alexander"
},
{
"name": "Hermsen,Marko"
},
{
"orcid": "0000-0002-8578-4961",
"affiliation": "RWTH Aachen University",
"name": "Mood, Kaveh Haghighi"
},
{
"affiliation": "RWTH Aachen University",
"name": "Schulte, Christoph"
},
{
"orcid": "0000-0001-5758-843X",
"affiliation": "RWTH Aachen University",
"name": "Reuter, Leonard"
},
{
"orcid": "0000-0003-2113-6129",
"affiliation": "RWTH Aachen University",
"name": "Heuer, Michael A."
},
{
"orcid": "0000-0002-4144-2089",
"affiliation": "RWTH Aachen University",
"name": "Ludovicy, Jil"
}
],
"keywords": [
"quantum chemistry",
"variational Monte Carlo",
"diffusion Monte Carlo",
"wave function optimization",
"pseudo potentials",
"probability density sampling",
"local maximization"
]
}
59 changes: 53 additions & 6 deletions bib/MIT-aug-cc-pVTZ.abs
Original file line number Diff line number Diff line change
Expand Up @@ -238,6 +238,12 @@ S GTO 9
2.313000000000D-01 4.336405000000D-01
1.026190000000D-01 2.131940000000D-01
5.134400000000D-02 4.984800000000D-03
S GTO 1
9.215520000000D-01 1.000000000000D+00
S GTO 1
1.328000000000D-01 1.000000000000D+00
S GTO 1
5.312000000000D-02 1.000000000000D+00
P GTO 9
9.934169000000D+00 2.090760000000D-02
3.886955000000D+00 5.726980000000D-02
Expand All @@ -248,12 +254,6 @@ P GTO 9
1.170630000000D-01 2.016934000000D-01
5.854700000000D-02 4.535750000000D-02
2.928100000000D-02 2.977500000000D-03
S GTO 1
9.215520000000D-01 1.000000000000D+00
S GTO 1
1.328000000000D-01 1.000000000000D+00
S GTO 1
5.312000000000D-02 1.000000000000D+00
P GTO 1
3.767420000000D-01 1.000000000000D+00
P GTO 1
Expand All @@ -271,3 +271,50 @@ F GTO 1
F GTO 1
3.093940000000D-01 1.000000000000D+00
****
F
S GTO 10
8.404865200000D+01 -2.800000000000D-06
4.109461700000D+01 -3.543000000000D-04
2.009273800000D+01 1.840880000000D-02
9.824112000000D+00 -1.277661000000D-01
4.803386000000D+00 -7.028720000000D-02
2.348560000000D+00 1.571604000000D-01
1.148301000000D+00 3.769012000000D-01
5.614490000000D-01 4.095165000000D-01
2.745140000000D-01 1.970893000000D-01
1.342200000000D-01 2.434820000000D-02
S GTO 1
2.289795000000D+00 1.000000000000D+00
S GTO 1
3.277120000000D-01 1.000000000000D+00
S GTO 1
1.310850000000D-01 1.000000000000D+00
P GTO 10
3.164261900000D+01 2.967300000000D-03
1.624323300000D+01 2.980490000000D-02
8.338204000000D+00 6.694890000000D-02
4.280284000000D+00 1.337790000000D-01
2.197215000000D+00 2.148312000000D-01
1.127906000000D+00 2.664862000000D-01
5.789920000000D-01 2.618954000000D-01
2.972160000000D-01 1.920217000000D-01
1.525710000000D-01 8.284650000000D-02
7.832000000000D-02 1.330460000000D-02
P GTO 1
8.041810000000D-01 1.000000000000D+00
P GTO 1
2.436600000000D-01 1.000000000000D+00
P GTO 1
9.746400000000D-02 1.000000000000D+00
D GTO 1
3.297425000000D+00 1.000000000000D+00
D GTO 1
9.007630000000D-01 1.000000000000D+00
D GTO 1
3.603050000000D-01 1.000000000000D+00
F GTO 1
1.859274000000D+00 1.000000000000D+00
F GTO 1
7.437100000000D-01 1.000000000000D+00
****

10 changes: 10 additions & 0 deletions bib/ecp/MIT.ecp
Original file line number Diff line number Diff line change
Expand Up @@ -46,3 +46,13 @@
1
52.13345 2 7.76079
****

####Fluorine
9 2 1
3
7.0 1 12.08758490486192
84.61309433403344 3 12.83806306400466
-53.02751706539332 2 12.31234562699041
1
78.90177172847011 2 14.78076492090162
****
2 changes: 1 addition & 1 deletion tools/Wfgen/Utils/__init__.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from .format import *
from .data import *
from .atom import Atom
from .determinant import Determinant
from .determinant import Determinant, build_det
from .orbital import Orbital
from .orbitalRotation import OrbitalRotation
from .csf import Csf
Expand Down
11 changes: 11 additions & 0 deletions tools/Wfgen/Utils/data.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,3 +31,14 @@
[6,5,8,7,2,1,4,3],
[7,8,5,6,3,4,1,2],
[8,7,6,5,4,3,2,1]]

# symmetries
symmetries = {
'D2h':['Ag','B3u','B2u','B1g','B1u','B2g','B3g','Au'],
'C2v':['A1','B1','B2','A2'],
'C2h':['Ag','Au','Bu','Bg'],
'D2':['A','B3','B2','B1'],
'Cs':["A'","A''"],
'C2':['A','B'],
'Ci':['Ag','Au'],
'C1':['A']}
25 changes: 25 additions & 0 deletions tools/Wfgen/Utils/determinant.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,3 +54,28 @@ def occupation_integer(self):
for integer in self.orbital_list:
occupation_string += str(abs(integer))
return int(occupation_string)


def build_det(number_inactive_orbitals,occupation,orbital_map,coefficient):
determinant = Determinant()
determinant.coefficient = coefficient
inactive_orbitals = []
j = 1
for _ in range(number_inactive_orbitals):
while j in orbital_map:
j += 1
inactive_orbitals.append(j)
j += 1
for inactive_orbital in inactive_orbitals:
determinant.orbital_list.append(inactive_orbital)
determinant.orbital_list.append(-inactive_orbital)
for i in range(len(occupation)):
if occupation[i] == '2':
determinant.orbital_list.append(orbital_map[i])
determinant.orbital_list.append(-orbital_map[i])
if occupation[i] == 'a':
determinant.orbital_list.append(orbital_map[i])
if occupation[i] == 'b':
determinant.orbital_list.append(-orbital_map[i])
determinant.sort()
return determinant
1 change: 0 additions & 1 deletion tools/Wfgen/Utils/waveFunction.py
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,6 @@ def symm_combine(self):
self.sort_dets()
counter = 0
orbital_groups = self.automatic_orbital_groups()
# print (orbital_groups)

list_for_permutation = range(len(orbital_groups[0]))
permutations = list(it.permutations(list_for_permutation))
Expand Down
68 changes: 20 additions & 48 deletions tools/Wfgen/mol2wf.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,23 +11,6 @@
from .Utils import *


def build_det(number_core_orbitals,occupation,orbital_map,coefficient):
determinant = Determinant()
determinant.coefficient = coefficient
for i in range(number_core_orbitals):
determinant.orbital_list.append(i + 1)
determinant.orbital_list.append(-(i+1))
for i in range(len(occupation)):
if occupation[i] == '2':
determinant.orbital_list.append(orbital_map[i])
determinant.orbital_list.append(-orbital_map[i])
if occupation[i] == 'a':
determinant.orbital_list.append(orbital_map[i])
if occupation[i] == 'b':
determinant.orbital_list.append(-orbital_map[i])
determinant.sort()
return determinant

def molpro_in(input_name,molden_name,basis,wf_type):
out_filename = input_name + '.out'
molden_filename = molden_name+'.molden'
Expand Down Expand Up @@ -232,7 +215,7 @@ def molpro_in(input_name,molden_name,basis,wf_type):
if not line:
sys.exit('Error: point group could not be read!')
total_symmetry = line.split()[2]
symmetry_list = molpro_symmetries[total_symmetry]
symmetry_list = symmetries[total_symmetry]

if wf_type != 'sd':
#reading the symmetry of the occupied orbitals
Expand Down Expand Up @@ -383,24 +366,7 @@ def molpro_in(input_name,molden_name,basis,wf_type):
if words[0] == occupation_scheme:
spin_function = list(str(sf).split())
del spin_function[0]
for j in range(len(spin_function)):
occupation = list(csf_occupations[i])
single_occupation = []
letters = list(spin_function[j])
for k in range(len(spin_function[j])):
if letters[k] in ['a', 'b']:
single_occupation.append(letters[k])
elif letters[k] != '*':
spin_coefficient += letters[k]
coefficient = float(abs(Fraction(spin_coefficient)))**0.5 \
* int(Fraction(spin_coefficient)/abs(Fraction(spin_coefficient)))
for k in range(len(occupation)):
if occupation[k] in ['/', '\\']:
occupation[k] = single_occupation[0]
del single_occupation[0]
determinant = build_det(number_core_orbitals, occupation, orbital_map, coefficient)
csf.determinants.append(determinant)
spin_coefficient = ''


else: # if no singly occupied orbitals in csf
occupation = list(csf_occupations[i])
Expand All @@ -410,7 +376,24 @@ def molpro_in(input_name,molden_name,basis,wf_type):

csfs.append(csf)
occupation_scheme = ''

for j in range(len(spin_function)):
occupation = list(csf_occupations[i])
single_occupation = []
letters = list(spin_function[j])
for k in range(len(spin_function[j])):
if letters[k] in ['a', 'b']:
single_occupation.append(letters[k])
elif letters[k] != '*':
spin_coefficient += letters[k]
coefficient = float(abs(Fraction(spin_coefficient)))**0.5 \
* int(Fraction(spin_coefficient)/abs(Fraction(spin_coefficient)))
for k in range(len(occupation)):
if occupation[k] in ['/', '\\']:
occupation[k] = single_occupation[0]
del single_occupation[0]
determinant = build_det(number_core_orbitals, occupation, orbital_map, coefficient)
csf.determinants.append(determinant)
spin_coefficient = ''
# construction for wf_type = 'sd'
else:
determinant = Determinant()
Expand All @@ -430,14 +413,3 @@ def molpro_in(input_name,molden_name,basis,wf_type):
wf = WaveFunction(input_name, orbital_format, basis, charge, multiplicity, atoms, orbitals,
csfs, jastrow, total_symmetry, symmetry_list)
return wf


molpro_symmetries = {
'D2h':['Ag','B3u','B2u','B1g','B1u','B2g','B3g','Au'],
'C2v':['A1','B1','B2','A2'],
'C2h':['Ag','Au','Bu','Bg'],
'D2':['A','B3','B2','B1'],
'Cs':["A'","A''"],
'C2':['A','B'],
'Ci':['Ag','Au'],
'C1':['A']}
Loading

0 comments on commit 4e38cfb

Please sign in to comment.