Skip to content

Create the available_basis_functions used by lobster. #168

@hongyi-zhao

Description

@hongyi-zhao

I try to create the available_basis_functions used by lobster as follows:

from mendeleev import element

def get_available_orbitals(elem):
    # Obtain the electron configuration of an element.
    ec = elem.ec.conf

    # Parse the electron configuration to obtain the orbitals.
    orbitals = []
    for orbital in ec:
        orbitals.append(f"{orbital[0]}{orbital[1]}")

    return sorted(orbitals)

with open("available_basis_functions.txt", "w") as f:
    for atomic_number in range(1, 104):
        elem = element(atomic_number)
        orbitals = get_available_orbitals(elem)
        f.write(f"{atomic_number} {elem.symbol} {' '.join(orbitals)}\n")

print("File 'available_basis_functions.txt' has been created.")

In [19]: from mendeleev import element
    ...: 
    ...: def get_available_orbitals(elem):
    ...:     # Obtain the electron configuration of an element.
    ...:     ec = elem.ec.conf
    ...: 
    ...:     # Parse the electron configuration to obtain the orbitals.
    ...:     orbitals = []
    ...:     for orbital in ec:
    ...:         orbitals.append(f"{orbital[0]}{orbital[1]}")
    ...: 
    ...:     return sorted(orbitals)
    ...: 
    ...: with open("available_basis_functions.txt", "w") as f:
    ...:     for atomic_number in range(1, 104):
    ...:         elem = element(atomic_number)
    ...:         orbitals = get_available_orbitals(elem)
    ...:         f.write(f"{atomic_number} {elem.symbol} {' '.join(orbitals)}\n")
    ...: 
    ...: print("File 'available_basis_functions.txt' has been created.")
File 'available_basis_functions.txt' has been created.

In [20]: !cat available_basis_functions.txt
1 H 1s
2 He 1s
3 Li 1s 2s
4 Be 1s 2s
5 B 1s 2p 2s
6 C 1s 2p 2s
7 N 1s 2p 2s
8 O 1s 2p 2s
9 F 1s 2p 2s
10 Ne 1s 2p 2s
11 Na 1s 2p 2s 3s
12 Mg 1s 2p 2s 3s
13 Al 1s 2p 2s 3p 3s
14 Si 1s 2p 2s 3p 3s
15 P 1s 2p 2s 3p 3s
16 S 1s 2p 2s 3p 3s
17 Cl 1s 2p 2s 3p 3s
18 Ar 1s 2p 2s 3p 3s
19 K 1s 2p 2s 3p 3s 4s
20 Ca 1s 2p 2s 3p 3s 4s
21 Sc 1s 2p 2s 3d 3p 3s 4s
22 Ti 1s 2p 2s 3d 3p 3s 4s
23 V 1s 2p 2s 3d 3p 3s 4s
24 Cr 1s 2p 2s 3d 3p 3s 4s
25 Mn 1s 2p 2s 3d 3p 3s 4s
26 Fe 1s 2p 2s 3d 3p 3s 4s
27 Co 1s 2p 2s 3d 3p 3s 4s
28 Ni 1s 2p 2s 3d 3p 3s 4s
29 Cu 1s 2p 2s 3d 3p 3s 4s
30 Zn 1s 2p 2s 3d 3p 3s 4s
31 Ga 1s 2p 2s 3d 3p 3s 4p 4s
32 Ge 1s 2p 2s 3d 3p 3s 4p 4s
33 As 1s 2p 2s 3d 3p 3s 4p 4s
34 Se 1s 2p 2s 3d 3p 3s 4p 4s
35 Br 1s 2p 2s 3d 3p 3s 4p 4s
36 Kr 1s 2p 2s 3d 3p 3s 4p 4s
37 Rb 1s 2p 2s 3d 3p 3s 4p 4s 5s
38 Sr 1s 2p 2s 3d 3p 3s 4p 4s 5s
39 Y 1s 2p 2s 3d 3p 3s 4d 4p 4s 5s
40 Zr 1s 2p 2s 3d 3p 3s 4d 4p 4s 5s
41 Nb 1s 2p 2s 3d 3p 3s 4d 4p 4s 5s
42 Mo 1s 2p 2s 3d 3p 3s 4d 4p 4s 5s
43 Tc 1s 2p 2s 3d 3p 3s 4d 4p 4s 5s
44 Ru 1s 2p 2s 3d 3p 3s 4d 4p 4s 5s
45 Rh 1s 2p 2s 3d 3p 3s 4d 4p 4s 5s
46 Pd 1s 2p 2s 3d 3p 3s 4d 4p 4s
47 Ag 1s 2p 2s 3d 3p 3s 4d 4p 4s 5s
48 Cd 1s 2p 2s 3d 3p 3s 4d 4p 4s 5s
49 In 1s 2p 2s 3d 3p 3s 4d 4p 4s 5p 5s
50 Sn 1s 2p 2s 3d 3p 3s 4d 4p 4s 5p 5s
51 Sb 1s 2p 2s 3d 3p 3s 4d 4p 4s 5p 5s
52 Te 1s 2p 2s 3d 3p 3s 4d 4p 4s 5p 5s
53 I 1s 2p 2s 3d 3p 3s 4d 4p 4s 5p 5s
54 Xe 1s 2p 2s 3d 3p 3s 4d 4p 4s 5p 5s
55 Cs 1s 2p 2s 3d 3p 3s 4d 4p 4s 5p 5s 6s
56 Ba 1s 2p 2s 3d 3p 3s 4d 4p 4s 5p 5s 6s
57 La 1s 2p 2s 3d 3p 3s 4d 4p 4s 5d 5p 5s 6s
58 Ce 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
59 Pr 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5p 5s 6s
60 Nd 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5p 5s 6s
61 Pm 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5p 5s 6s
62 Sm 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5p 5s 6s
63 Eu 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5p 5s 6s
64 Gd 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
65 Tb 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5p 5s 6s
66 Dy 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5p 5s 6s
67 Ho 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5p 5s 6s
68 Er 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5p 5s 6s
69 Tm 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5p 5s 6s
70 Yb 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5p 5s 6s
71 Lu 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
72 Hf 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
73 Ta 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
74 W 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
75 Re 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
76 Os 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
77 Ir 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
78 Pt 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
79 Au 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
80 Hg 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6s
81 Tl 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6p 6s
82 Pb 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6p 6s
83 Bi 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6p 6s
84 Po 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6p 6s
85 At 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6p 6s
86 Rn 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6p 6s
87 Fr 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6p 6s 7s
88 Ra 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6p 6s 7s
89 Ac 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6d 6p 6s 7s
90 Th 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5p 5s 6d 6p 6s 7s
91 Pa 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6d 6p 6s 7s
92 U 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6d 6p 6s 7s
93 Np 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6d 6p 6s 7s
94 Pu 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6p 6s 7s
95 Am 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6p 6s 7s
96 Cm 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6d 6p 6s 7s
97 Bk 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6p 6s 7s
98 Cf 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6p 6s 7s
99 Es 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6p 6s 7s
100 Fm 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6p 6s 7s
101 Md 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6p 6s 7s
102 No 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6p 6s 7s
103 Lr 1s 2p 2s 3d 3p 3s 4d 4f 4p 4s 5d 5f 5p 5s 6d 6p 6s 7s

But the above result is very different from the target file format, as shown below:

werner@x13dai-t:~/Public/repo/github.com/JaGeo/Script_to_get_available_basis_functions$ cat MaxBasis/availabe_basis_functions 
1 H 1s
2 He 1s
3 Li 1s 2s 2p
4 Be 1s 2s 2p
5 B 1s 2s 2p
6 C 1s 2s 2p
7 N 1s 2s 2p
8 O 1s 2s 2p
9 F 1s 2s 2p
10 Ne 1s 2s 2p
11 Na 1s 2s 2p 3s 3p
12 Mg 1s 2s 2p 3s 3p
13 Al 1s 2s 2p 3s 3p
14 Si 1s 2s 2p 3s 3p
15 P 1s 2s 2p 3s 3p
16 S 1s 2s 2p 3s 3p
17 Cl 1s 2s 2p 3s 3p
18 Ar 1s 2s 2p 3s 3p
19 K 1s 2s 2p 3s 3p 4s 4p
20 Ca 1s 2s 2p 3s 3p 4s 4p
21 Sc 1s 2s 2p 3s 3p 3d 4s 4p
22 Ti 1s 2s 2p 3s 3p 3d 4s 4p
23 V 1s 2s 2p 3s 3p 3d 4s 4p
24 Cr 1s 2s 2p 3s 3p 3d 4s 4p
25 Mn 1s 2s 2p 3s 3p 3d 4s 4p
26 Fe 1s 2s 2p 3s 3p 3d 4s 4p
27 Co 1s 2s 2p 3s 3p 3d 4s 4p
28 Ni 1s 2s 2p 3s 3p 3d 4s 4p
29 Cu 1s 2s 2p 3s 3p 3d 4s 4p
30 Zn 1s 2s 2p 3s 3p 3d 4s 4p
31 Ga 1s 2s 2p 3s 3p 3d 4s 4p
32 Ge 1s 2s 2p 3s 3p 3d 4s 4p
33 As 1s 2s 2p 3s 3p 3d 4s 4p
34 Se 1s 2s 2p 3s 3p 3d 4s 4p
35 Br 1s 2s 2p 3s 3p 3d 4s 4p
36 Kr 1s 2s 2p 3s 3p 3d 4s 4p
37 Rb 1s 2s 2p 3s 3p 3d 4s 4p 5s 5p
38 Sr 1s 2s 2p 3s 3p 3d 4s 4p 5s 5p
39 Y 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
40 Zr 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
41 Nb 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
42 Mo 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
43 Tc 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
44 Ru 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
45 Rh 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
46 Pd 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
47 Ag 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
48 Cd 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
49 In 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
50 Sn 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
51 Sb 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
52 Te 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
53 I 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
54 Xe 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p
55 Cs 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p 6s 6p
56 Ba 1s 2s 2p 3s 3p 3d 4s 4p 4d 5s 5p 6s 6p
57 La 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
58 Ce 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
59 Pr 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
60 Nd 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
61 Pm 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
62 Sm 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
63 Eu 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
64 Gd 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
65 Tb 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
66 Dy 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
67 Ho 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
68 Er 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
69 Tm 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
70 Yb 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
71 Lu 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
72 Hf 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
73 Ta 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
74 W 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
75 Re 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s
76 Os 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
77 Ir 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
78 Pt 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
79 Au 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
80 Hg 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
81 Tl 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
82 Pb 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
83 Bi 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
84 Po 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
85 At 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
86 Rn 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p
87 Fr 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p 7s 7p
88 Ra 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 6s 6p 7s 7p
89 Ac 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 6d 7s 7p
90 Th 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 6d 7s 7p
91 Pa 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 6d 7s 7p
92 U 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 6d 7s 7p
93 Np 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 6d 7s 7p
94 Pu 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 6d 7s 7p
95 Am 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 6d 7s 7p
96 Cm 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 6d 7s 7p
97 Bk 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 6d 7s
98 Cf 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 7s
99 Es 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 7s
100 Fm 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 7s
101 Md 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 7s
102 No 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 7s
103 Lr 1s 2s 2p 3s 3p 3d 4s 4p 4d 4f 5s 5p 5d 5f 6s 6p 6d 7s

I wonder whether I can generate the exact same target file by using this package. Any tips/comments will be appreciated.

All the files mentioned above are attached.

availabe_basis_functions.zip

Regards,
Zhao

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions