Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem because exponents are sorted #4

Open
scemama opened this issue Mar 10, 2023 · 1 comment
Open

Problem because exponents are sorted #4

scemama opened this issue Mar 10, 2023 · 1 comment

Comments

@scemama
Copy link

scemama commented Mar 10, 2023

Hi!

I installed chemtools with pip:
chemtools 0.9.2

I have a GAMESS-US file which looks like this:

$DATA
CARBON
S 9
  1 0.051344      0.013991
  2 0.102619      0.169852
  3 0.205100      0.397529
  4 0.409924      0.380369
  5 0.819297      0.180113
  6 1.637494      -0.033512
  7 3.272791      -0.121499
  8 6.541187      0.015176
  9 13.073594      -0.000705
P 9
  1 0.029281      0.001787
  2 0.058547      0.050426
  3 0.117063      0.191634
  4 0.234064      0.302667
  5 0.468003      0.289868
  6 0.935757      0.210979
  7 1.871016      0.112024
  8 3.741035      0.054425
  9 7.480076      0.021931

BORON
S 9
  1 0.040569      0.032031
  2 0.081044      0.243317
  3 0.161898      0.434636
  4 0.323418      0.329581
  5 0.646080      0.111875
  6 1.290648      -0.078699
  7 2.578276      -0.098781
  8 5.150520      0.016164
  9 10.288990      -0.000016
S 1
  1 0.082968      1.000000
S 1
  1 0.305133      1.000000
S 1
  1 0.422217      1.000000
P 9
  1 0.029207      0.019909
  2 0.058408      0.141775
  3 0.116803      0.294463
  4 0.233582      0.309028
  5 0.467115      0.236378
  6 0.934132      0.131317
  7 1.868068      0.066454
  8 3.735743      0.021248
  9 7.470701      0.002837

$END

when I run

from chemtools.basisset import BasisSet
print(basis["B"])

I get the list of exponents reversed, but not the coefficients:

Name                 = test_file
Element              = B
Family               = None
Kind                 = None
Functions:

================s shell=================
Contracted:
    1       10.2889900000     0.03203100
    2        5.1505200000     0.24331700
    3        2.5782760000     0.43463600
    4        1.2906480000     0.32958100
    5        0.6460800000     0.11187500
    6        0.3234180000    -0.07869900
    7        0.1618980000    -0.09878100
    8        0.0810440000     0.01616400
    9        0.0405690000    -0.00001600
Uncontracted:
   10        0.0829680000     1.00000000
   11        0.3051330000     1.00000000
   12        0.4222170000     1.00000000

================p shell=================
Contracted:
    1        0.0292070000     0.01990900
    2        0.0584080000     0.14177500
    3        0.1168030000     0.29446300
    4        0.2335820000     0.30902800
    5        0.4671150000     0.23637800
    6        0.9341320000     0.13131700
    7        1.8680680000     0.06645400
    8        3.7357430000     0.02124800
    9        7.4707010000     0.00283700

It could be related to a sort that happens in the list of exponents...

@scemama
Copy link
Author

scemama commented Mar 10, 2023

in basisparse.py, at line 335 in merge_exponents I changed:

#    u = np.union1d(a, b)[::-1]
    u = np.union1d(a, b)

and it seems to work, but I am not sure if it is always correct.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant