From d7fa4417d900946f23089b74651f6e2c1fc962cb Mon Sep 17 00:00:00 2001 From: Benjamin Pritchard Date: Fri, 10 Nov 2023 15:45:41 -0500 Subject: [PATCH 1/3] Allow for lists in auxiliary dictionaries --- basis_set_exchange/api.py | 6 +++++- basis_set_exchange/cli/bse_handlers.py | 4 +++- .../schema/common-definitions.json | 21 ++++++++++++------- basis_set_exchange/tests/test_api.py | 2 +- basis_set_exchange/tests/test_aux_sanity.py | 21 ++++++++++++------- 5 files changed, 35 insertions(+), 19 deletions(-) diff --git a/basis_set_exchange/api.py b/basis_set_exchange/api.py index 8a7dbcecd..1a6c8ea49 100644 --- a/basis_set_exchange/api.py +++ b/basis_set_exchange/api.py @@ -374,7 +374,11 @@ def lookup_basis_by_role(primary_basis, role, data_dir=None): if role not in auxdata: raise RuntimeError("Role {} doesn't exist for {}".format(role, primary_basis)) - return auxdata[role] + if isinstance(auxdata[role], str): + return [auxdata[role]] + else: + # Also handles other sequence types + return list(auxdata[role]) @memo.BSEMemoize diff --git a/basis_set_exchange/cli/bse_handlers.py b/basis_set_exchange/cli/bse_handlers.py index 7e6b6d650..47b4f6a5d 100644 --- a/basis_set_exchange/cli/bse_handlers.py +++ b/basis_set_exchange/cli/bse_handlers.py @@ -121,7 +121,9 @@ def _bse_cli_get_data_dir(args): def _bse_cli_lookup_by_role(args): '''Handles the lookup-by-role subcommand''' - return api.lookup_basis_by_role(args.basis, args.role, args.data_dir) + + bs_names = api.lookup_basis_by_role(args.basis, args.role, args.data_dir) + return '\n'.join(bs_names) def _bse_cli_get_basis(args): diff --git a/basis_set_exchange/schema/common-definitions.json b/basis_set_exchange/schema/common-definitions.json index 304c9b12a..7c8952dd3 100644 --- a/basis_set_exchange/schema/common-definitions.json +++ b/basis_set_exchange/schema/common-definitions.json @@ -169,15 +169,20 @@ "auxiliaries": { "description": "Auxiliary basis sets (fitting, etc) and how their role with this basis", "type": "object", + "propertyNames": { "enum": ["jfit", "jkfit", "rifit", "optri", "admmfit", "dftxfit", "dftjfit"] }, "additionalProperties": false, - "properties": { - "jfit" : { "type": "string" }, - "jkfit" : { "type": "string" }, - "rifit" : { "type": "string" }, - "optri" : { "type": "string" }, - "admmfit" : { "type": "string" }, - "dftxfit": { "type": "string" }, - "dftjfit": { "type": "string" } + "patternProperties": { + ".*": { + "anyOf": [ + { "type": "string" }, + { + "type": "array", + "items": { "type": "string" }, + "minItems": 1, + "uniqueItems": true + } + ] + } } }, "revision_date": { diff --git a/basis_set_exchange/tests/test_api.py b/basis_set_exchange/tests/test_api.py index 50c50ee8d..37f39e05b 100644 --- a/basis_set_exchange/tests/test_api.py +++ b/basis_set_exchange/tests/test_api.py @@ -153,7 +153,7 @@ def test_lookup_by_role(primary_basis, role, expected): """Test looking up data by role """ bs = bse.lookup_basis_by_role(primary_basis, role) - assert bs.lower() == expected.lower() + assert bs[0].lower() == expected.lower() @pytest.mark.parametrize('basis_name', bs_names) diff --git a/basis_set_exchange/tests/test_aux_sanity.py b/basis_set_exchange/tests/test_aux_sanity.py index 17bef17d7..53bc6e826 100644 --- a/basis_set_exchange/tests/test_aux_sanity.py +++ b/basis_set_exchange/tests/test_aux_sanity.py @@ -49,11 +49,12 @@ def test_aux_sanity(basis_name): this_metadata = bs_metadata[basis_name] - for role, aux in this_metadata['auxiliaries'].items(): - assert aux in bs_metadata - aux_metadata = bs_metadata[aux] + for role, auxs in this_metadata['auxiliaries'].items(): + for aux in auxs: + assert aux in bs_metadata + aux_metadata = bs_metadata[aux] - assert role == aux_metadata['role'] + assert role == aux_metadata['role'] @pytest.mark.parametrize('basis_name', bs_names) @@ -75,9 +76,13 @@ def test_aux_reverse(basis_name): found = False for k, v in bs_metadata.items(): aux = v['auxiliaries'] - for aux_role, aux_name in aux.items(): - if aux_name in all_aux_names: - assert aux_role == role - found = True + for aux_role, aux_names in aux.items(): + if isinstance(aux_names, str): + aux_names = [aux_names] + + for aux_name in aux_names: + if aux_name in all_aux_names: + assert aux_role == role + found = True assert found From cf7984e38d8a53acc8ff9844cfeafe6091fafb5d Mon Sep 17 00:00:00 2001 From: Benjamin Pritchard Date: Fri, 10 Nov 2023 15:46:07 -0500 Subject: [PATCH 2/3] move cc-pVXZ-F12-OPTRI+ basis sets and fix aux mapping --- basis_set_exchange/data/METADATA.json | 15 ++++++-- .../data/cc-pVDZ-F12-OPTRI+.1.table.json | 38 +++++++++---------- .../data/cc-pVDZ-F12.metadata.json | 3 +- .../data/cc-pVQZ-F12-OPTRI+.1.table.json | 38 +++++++++---------- .../data/cc-pVQZ-F12-OPTRI+.metadata.json | 2 +- .../data/cc-pVQZ-F12.metadata.json | 3 +- .../data/cc-pVTZ-F12-OPTRI+.1.table.json | 38 +++++++++---------- .../data/cc-pVTZ-F12.metadata.json | 3 +- .../cc-pVDZ-F12-OPTRI+.1.element.json | 38 +++++++++---------- .../cc-pVDZ-F12-OPTRI+.1.json | 0 .../cc-pVQZ-F12-OPTRI+.1.element.json | 38 +++++++++---------- .../cc-pVQZ-F12-OPTRI+.1.json | 0 .../cc-pVTZ-F12-OPTRI+.1.element.json | 38 +++++++++---------- .../cc-pVTZ-F12-OPTRI+.1.json | 0 basis_set_exchange/tests/test_aux_sanity.py | 3 ++ 15 files changed, 133 insertions(+), 124 deletions(-) rename basis_set_exchange/data/{dunning_fit => dunning_f12_fit}/cc-pVDZ-F12-OPTRI+.1.element.json (52%) rename basis_set_exchange/data/{dunning_fit => dunning_f12_fit}/cc-pVDZ-F12-OPTRI+.1.json (100%) rename basis_set_exchange/data/{dunning_fit => dunning_f12_fit}/cc-pVQZ-F12-OPTRI+.1.element.json (52%) rename basis_set_exchange/data/{dunning_fit => dunning_f12_fit}/cc-pVQZ-F12-OPTRI+.1.json (100%) rename basis_set_exchange/data/{dunning_fit => dunning_f12_fit}/cc-pVTZ-F12-OPTRI+.1.element.json (52%) rename basis_set_exchange/data/{dunning_fit => dunning_f12_fit}/cc-pVTZ-F12-OPTRI+.1.json (100%) diff --git a/basis_set_exchange/data/METADATA.json b/basis_set_exchange/data/METADATA.json index bfed9ffec..b2b6202dc 100644 --- a/basis_set_exchange/data/METADATA.json +++ b/basis_set_exchange/data/METADATA.json @@ -17833,7 +17833,10 @@ "gto_spherical" ], "auxiliaries": { - "optri": "cc-pvdz-f12-optri+" + "optri": [ + "cc-pvdz-f12-optri", + "cc-pvdz-f12-optri+" + ] }, "versions": { "0": { @@ -18794,7 +18797,10 @@ "gto_spherical" ], "auxiliaries": { - "optri": "cc-pvqz-f12-optri+" + "optri": [ + "cc-pvqz-f12-optri", + "cc-pvqz-f12-optri+" + ] }, "versions": { "0": { @@ -19845,7 +19851,10 @@ "gto_spherical" ], "auxiliaries": { - "optri": "cc-pvtz-f12-optri+" + "optri": [ + "cc-pvtz-f12-optri", + "cc-pvtz-f12-optri+" + ] }, "versions": { "0": { diff --git a/basis_set_exchange/data/cc-pVDZ-F12-OPTRI+.1.table.json b/basis_set_exchange/data/cc-pVDZ-F12-OPTRI+.1.table.json index 44564ca39..367da636c 100644 --- a/basis_set_exchange/data/cc-pVDZ-F12-OPTRI+.1.table.json +++ b/basis_set_exchange/data/cc-pVDZ-F12-OPTRI+.1.table.json @@ -6,23 +6,23 @@ "revision_description": "Data from Grant Hill's ccRepo", "revision_date": "2021-02-25", "elements": { - "1": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "2": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "3": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "4": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "5": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "6": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "7": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "8": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "9": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "10": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "11": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "12": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "13": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "14": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "15": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "16": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "17": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json", - "18": "dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json" + "1": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "2": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "3": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "4": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "5": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "6": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "7": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "8": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "9": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "10": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "11": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "12": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "13": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "14": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "15": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "16": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "17": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json", + "18": "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json" } -} \ No newline at end of file +} diff --git a/basis_set_exchange/data/cc-pVDZ-F12.metadata.json b/basis_set_exchange/data/cc-pVDZ-F12.metadata.json index dcd2882d1..b42d0dbda 100644 --- a/basis_set_exchange/data/cc-pVDZ-F12.metadata.json +++ b/basis_set_exchange/data/cc-pVDZ-F12.metadata.json @@ -11,7 +11,6 @@ "description": "VDZ for explicitly correlated F12 variants of wavefunction methods", "role": "orbital", "auxiliaries": { - "optri": "cc-pvdz-f12-optri", - "optri": "cc-pvdz-f12-optri+" + "optri": ["cc-pvdz-f12-optri", "cc-pvdz-f12-optri+"] } } diff --git a/basis_set_exchange/data/cc-pVQZ-F12-OPTRI+.1.table.json b/basis_set_exchange/data/cc-pVQZ-F12-OPTRI+.1.table.json index 7959526cd..64dc22418 100644 --- a/basis_set_exchange/data/cc-pVQZ-F12-OPTRI+.1.table.json +++ b/basis_set_exchange/data/cc-pVQZ-F12-OPTRI+.1.table.json @@ -6,23 +6,23 @@ "revision_description": "Data from Grant Hill's ccRepo", "revision_date": "2021-02-25", "elements": { - "1": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "2": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "3": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "4": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "5": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "6": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "7": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "8": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "9": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "10": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "11": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "12": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "13": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "14": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "15": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "16": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "17": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json", - "18": "dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json" + "1": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "2": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "3": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "4": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "5": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "6": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "7": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "8": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "9": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "10": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "11": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "12": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "13": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "14": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "15": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "16": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "17": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json", + "18": "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json" } -} \ No newline at end of file +} diff --git a/basis_set_exchange/data/cc-pVQZ-F12-OPTRI+.metadata.json b/basis_set_exchange/data/cc-pVQZ-F12-OPTRI+.metadata.json index ac6acd730..50f394ac0 100644 --- a/basis_set_exchange/data/cc-pVQZ-F12-OPTRI+.metadata.json +++ b/basis_set_exchange/data/cc-pVQZ-F12-OPTRI+.metadata.json @@ -11,4 +11,4 @@ "description": "cc-pVQZ-F12-OPTRI+", "role": "optri", "auxiliaries": {} -} \ No newline at end of file +} diff --git a/basis_set_exchange/data/cc-pVQZ-F12.metadata.json b/basis_set_exchange/data/cc-pVQZ-F12.metadata.json index 3370e16fb..3f00481d9 100644 --- a/basis_set_exchange/data/cc-pVQZ-F12.metadata.json +++ b/basis_set_exchange/data/cc-pVQZ-F12.metadata.json @@ -11,7 +11,6 @@ "description": "VQZ for explicitly correlated F12 variants of wavefunction methods", "role": "orbital", "auxiliaries": { - "optri": "cc-pvqz-f12-optri", - "optri": "cc-pvqz-f12-optri+" + "optri": ["cc-pvqz-f12-optri", "cc-pvqz-f12-optri+"] } } diff --git a/basis_set_exchange/data/cc-pVTZ-F12-OPTRI+.1.table.json b/basis_set_exchange/data/cc-pVTZ-F12-OPTRI+.1.table.json index 3824822c8..37be0b003 100644 --- a/basis_set_exchange/data/cc-pVTZ-F12-OPTRI+.1.table.json +++ b/basis_set_exchange/data/cc-pVTZ-F12-OPTRI+.1.table.json @@ -6,23 +6,23 @@ "revision_description": "Data from Grant Hill's ccRepo", "revision_date": "2021-02-25", "elements": { - "1": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "2": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "3": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "4": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "5": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "6": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "7": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "8": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "9": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "10": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "11": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "12": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "13": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "14": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "15": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "16": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "17": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json", - "18": "dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json" + "1": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "2": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "3": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "4": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "5": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "6": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "7": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "8": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "9": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "10": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "11": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "12": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "13": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "14": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "15": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "16": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "17": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json", + "18": "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json" } -} \ No newline at end of file +} diff --git a/basis_set_exchange/data/cc-pVTZ-F12.metadata.json b/basis_set_exchange/data/cc-pVTZ-F12.metadata.json index 3eb0dab56..056bd8813 100644 --- a/basis_set_exchange/data/cc-pVTZ-F12.metadata.json +++ b/basis_set_exchange/data/cc-pVTZ-F12.metadata.json @@ -11,7 +11,6 @@ "description": "VTZ for explicitly correlated F12 variants of wavefunction methods", "role": "orbital", "auxiliaries": { - "optri": "cc-pvtz-f12-optri", - "optri": "cc-pvtz-f12-optri+" + "optri": ["cc-pvtz-f12-optri", "cc-pvtz-f12-optri+"] } } diff --git a/basis_set_exchange/data/dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json b/basis_set_exchange/data/dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json similarity index 52% rename from basis_set_exchange/data/dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json rename to basis_set_exchange/data/dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json index 75a4d7b5b..a6f9e7df8 100644 --- a/basis_set_exchange/data/dunning_fit/cc-pVDZ-F12-OPTRI+.1.element.json +++ b/basis_set_exchange/data/dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.element.json @@ -8,93 +8,93 @@ "elements": { "1": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "2": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "3": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "4": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "5": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "6": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "7": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "8": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "9": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "10": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "11": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "12": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "13": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "14": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "15": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "16": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "17": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] }, "18": { "components": [ - "dunning_fit/cc-pVDZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json" ] } } -} \ No newline at end of file +} diff --git a/basis_set_exchange/data/dunning_fit/cc-pVDZ-F12-OPTRI+.1.json b/basis_set_exchange/data/dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json similarity index 100% rename from basis_set_exchange/data/dunning_fit/cc-pVDZ-F12-OPTRI+.1.json rename to basis_set_exchange/data/dunning_f12_fit/cc-pVDZ-F12-OPTRI+.1.json diff --git a/basis_set_exchange/data/dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json b/basis_set_exchange/data/dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json similarity index 52% rename from basis_set_exchange/data/dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json rename to basis_set_exchange/data/dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json index b7efd2b35..400b5d2aa 100644 --- a/basis_set_exchange/data/dunning_fit/cc-pVQZ-F12-OPTRI+.1.element.json +++ b/basis_set_exchange/data/dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.element.json @@ -8,93 +8,93 @@ "elements": { "1": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "2": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "3": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "4": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "5": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "6": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "7": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "8": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "9": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "10": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "11": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "12": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "13": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "14": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "15": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "16": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "17": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] }, "18": { "components": [ - "dunning_fit/cc-pVQZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json" ] } } -} \ No newline at end of file +} diff --git a/basis_set_exchange/data/dunning_fit/cc-pVQZ-F12-OPTRI+.1.json b/basis_set_exchange/data/dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json similarity index 100% rename from basis_set_exchange/data/dunning_fit/cc-pVQZ-F12-OPTRI+.1.json rename to basis_set_exchange/data/dunning_f12_fit/cc-pVQZ-F12-OPTRI+.1.json diff --git a/basis_set_exchange/data/dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json b/basis_set_exchange/data/dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json similarity index 52% rename from basis_set_exchange/data/dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json rename to basis_set_exchange/data/dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json index 3baa17036..4778d903b 100644 --- a/basis_set_exchange/data/dunning_fit/cc-pVTZ-F12-OPTRI+.1.element.json +++ b/basis_set_exchange/data/dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.element.json @@ -8,93 +8,93 @@ "elements": { "1": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "2": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "3": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "4": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "5": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "6": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "7": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "8": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "9": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "10": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "11": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "12": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "13": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "14": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "15": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "16": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "17": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] }, "18": { "components": [ - "dunning_fit/cc-pVTZ-F12-OPTRI+.1.json" + "dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json" ] } } -} \ No newline at end of file +} diff --git a/basis_set_exchange/data/dunning_fit/cc-pVTZ-F12-OPTRI+.1.json b/basis_set_exchange/data/dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json similarity index 100% rename from basis_set_exchange/data/dunning_fit/cc-pVTZ-F12-OPTRI+.1.json rename to basis_set_exchange/data/dunning_f12_fit/cc-pVTZ-F12-OPTRI+.1.json diff --git a/basis_set_exchange/tests/test_aux_sanity.py b/basis_set_exchange/tests/test_aux_sanity.py index 53bc6e826..4daa3c074 100644 --- a/basis_set_exchange/tests/test_aux_sanity.py +++ b/basis_set_exchange/tests/test_aux_sanity.py @@ -50,6 +50,9 @@ def test_aux_sanity(basis_name): this_metadata = bs_metadata[basis_name] for role, auxs in this_metadata['auxiliaries'].items(): + if isinstance(auxs, str): + auxs = [auxs] + for aux in auxs: assert aux in bs_metadata aux_metadata = bs_metadata[aux] From b43a8c22b1a64a2fbdc443573a9b5991ca313380 Mon Sep 17 00:00:00 2001 From: Benjamin Pritchard Date: Fri, 10 Nov 2023 16:40:03 -0500 Subject: [PATCH 3/3] Fix docs errors --- docs/source/bsecurate_cli.rst | 2 +- docs/source/usage.rst | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/source/bsecurate_cli.rst b/docs/source/bsecurate_cli.rst index 46a1d14f5..12e9c6c8d 100644 --- a/docs/source/bsecurate_cli.rst +++ b/docs/source/bsecurate_cli.rst @@ -58,7 +58,7 @@ This works on table, element, and component data files. component-file-refs ******************* -.. command-output:: DATADIR=`bse get-data-dir`; bsecurate component-file-refs ${DATADIR}/dunning/cc-pV{D,T}Z.1.json +.. command-output:: DATADIR=`bse get-data-dir`; bsecurate component-file-refs ${DATADIR}/dunning/cc-pVDZ.1.json :shell: diff --git a/docs/source/usage.rst b/docs/source/usage.rst index 5b2ce0ed1..018d747aa 100644 --- a/docs/source/usage.rst +++ b/docs/source/usage.rst @@ -246,11 +246,11 @@ and can be obtained via :func:`basis_set_exchange.get_roles` >>> # Find the MP2-fit basis set for cc-pvtz >>> basis_set_exchange.lookup_basis_by_role('cc-pvtz', 'rifit') - 'cc-pvtz-rifit' + ['cc-pvtz-rifit'] >>> # Find the J-fit basis set for def2-TZVP >>> basis_set_exchange.lookup_basis_by_role('def2-tzvp', 'jfit') - 'def2-universal-jfit' + ['def2-universal-jfit'] >>> # Available roles are available via get_roles >>> basis_set_exchange.get_roles()