Home
last modified time | relevance | path

Searched refs:ao_loc (Results 1 – 25 of 117) sorted by relevance

12345

/dports/science/py-pyscf/pyscf-2.0.1/pyscf/lib/pbc/
H A Dfill_ints.c80 const int di = ao_loc[ish+1] - ao_loc[ish]; in sort3c_kks1()
81 const int dj = ao_loc[jsh+1] - ao_loc[jsh]; in sort3c_kks1()
82 const int ip = ao_loc[ish] - ao_loc[ish0]; in sort3c_kks1()
83 const int jp = ao_loc[jsh] - ao_loc[jsh0]; in sort3c_kks1()
85 const int dkmax = ao_loc[msh1] - ao_loc[msh0]; in sort3c_kks1()
145 const int di = ao_loc[ish+1] - ao_loc[ish]; in _nr3c_fill_kk()
146 const int dj = ao_loc[jsh+1] - ao_loc[jsh]; in _nr3c_fill_kk()
168 dkmax = ao_loc[msh1] - ao_loc[msh0]; in _nr3c_fill_kk()
269 const int ip = ao_loc[ish] - ao_loc[ish0]; in sort3c_kks2_igtj()
270 const int jp = ao_loc[jsh] - ao_loc[jsh0]; in sort3c_kks2_igtj()
[all …]
H A Dft_ao.c58 const int di = ao_loc[ish+1] - ao_loc[ish]; in _ft_fill_k()
59 const int dj = ao_loc[jsh+1] - ao_loc[jsh]; in _ft_fill_k()
126 const int di = ao_loc[ish+1] - ao_loc[ish]; in _ft_fill_nk1()
127 const int dj = ao_loc[jsh+1] - ao_loc[jsh]; in _ft_fill_nk1()
187 const int di = ao_loc[ish+1] - ao_loc[ish]; in _ft_bvk_k()
188 const int dj = ao_loc[jsh+1] - ao_loc[jsh]; in _ft_bvk_k()
259 const int di = ao_loc[ish+1] - ao_loc[ish]; in _ft_bvk_nk1()
260 const int dj = ao_loc[jsh+1] - ao_loc[jsh]; in _ft_bvk_nk1()
320 const int ip = ao_loc[ish] - ao_loc[ish0]; in sort_s1()
321 const int jp = ao_loc[jsh] - ao_loc[jsh0]; in sort_s1()
[all …]
H A Dnr_direct.c63 const int *ao_loc = envs->ao_loc; in _assemble_eris() local
71 const int i0 = ao_loc[ishell]; in _assemble_eris()
72 const int j0 = ao_loc[jshell]; in _assemble_eris()
73 const int k0 = ao_loc[kshell]; in _assemble_eris()
166 const int *ao_loc = envs->ao_loc; in PBCVHF_contract_k_s1() local
172 const int i0 = ao_loc[ish]; in PBCVHF_contract_k_s1()
232 const int *ao_loc = envs->ao_loc; in contract_k_s2_kgtl() local
320 const int *ao_loc = envs->ao_loc; in PBCVHF_contract_j_s1() local
386 const int *ao_loc = envs->ao_loc; in contract_j_s2_kgtl() local
473 const int *ao_loc = envs->ao_loc; in PBCVHF_contract_jk_s1() local
[all …]
H A Dgrid_ao.c230 ao_id = ao_loc[bas_id] - ao_loc[sh0]; in PBCeval_cart_iter()
338 ao_id = ao_loc[bas_id] - ao_loc[sh0]; in PBCeval_sph_iter()
423 di_max = MAX(di_max, ao_loc[i+1] - ao_loc[i]); in PBCeval_loop()
430 const size_t nao = ao_loc[sh1] - ao_loc[sh0]; in PBCeval_loop()
445 aoff = (ao_loc[ish] - ao_loc[sh0]) * Ngrids + ip; in PBCeval_loop()
448 param, shloc+iloc, ao_loc, buf, in PBCeval_loop()
493 void PBCGTOval_sph_deriv0(int ngrids, int *shls_slice, int *ao_loc, in PBCGTOval_sph_deriv0() argument
601 void PBCGTOval_cart(int ngrids, int *shls_slice, int *ao_loc, in PBCGTOval_cart() argument
614 void PBCGTOval_sph(int ngrids, int *shls_slice, int *ao_loc, in PBCGTOval_sph() argument
628 void PBCGTOval_ip_cart(int ngrids, int *shls_slice, int *ao_loc, in PBCGTOval_ip_cart() argument
[all …]
/dports/science/py-pyscf/pyscf-2.0.1/pyscf/lib/gto/
H A Dfill_int2e.c83 int ni = ao_loc[ish1] - ao_loc[ish0]; in GTOnr2e_fill_s1()
84 int nj = ao_loc[jsh1] - ao_loc[jsh0]; in GTOnr2e_fill_s1()
85 int nk = ao_loc[ksh1] - ao_loc[ksh0]; in GTOnr2e_fill_s1()
86 int nl = ao_loc[lsh1] - ao_loc[lsh0]; in GTOnr2e_fill_s1()
93 int i0 = ao_loc[ish] - ao_loc[ish0]; in GTOnr2e_fill_s1()
94 int j0 = ao_loc[jsh] - ao_loc[jsh0]; in GTOnr2e_fill_s1()
97 int di = ao_loc[ish+1] - ao_loc[ish]; in GTOnr2e_fill_s1()
98 int dj = ao_loc[jsh+1] - ao_loc[jsh]; in GTOnr2e_fill_s1()
172 int ni = ao_loc[ish1] - ao_loc[ish0]; in GTOnr2e_fill_s2ij()
182 int i0 = ao_loc[ish] - ao_loc[ish0]; in GTOnr2e_fill_s2ij()
[all …]
H A Dfill_r_3c.c40 const size_t naoi = ao_loc[ish1] - ao_loc[ish0]; in GTOr3c_fill_s1()
41 const size_t naoj = ao_loc[jsh1] - ao_loc[jsh0]; in GTOr3c_fill_s1()
42 const size_t naok = ao_loc[ksh1] - ao_loc[ksh0]; in GTOr3c_fill_s1()
48 const int ip = ao_loc[ish] - ao_loc[ish0]; in GTOr3c_fill_s1()
49 const int jp = ao_loc[jsh] - ao_loc[jsh0]; in GTOr3c_fill_s1()
60 k0 = ao_loc[ksh ] - ao_loc[ksh0]; in GTOr3c_fill_s1()
130 const int jp = ao_loc[jsh] - ao_loc[jsh0]; in GTOr3c_fill_s2ij()
144 const int di = ao_loc[ish+1] - ao_loc[ish]; in GTOr3c_fill_s2ij()
145 const int dj = ao_loc[jsh+1] - ao_loc[jsh]; in GTOr3c_fill_s2ij()
158 dk = ao_loc[ksh+1] - ao_loc[ksh]; in GTOr3c_fill_s2ij()
[all …]
H A Dfill_nr_3c.c51 const size_t naoi = ao_loc[ish1] - ao_loc[ish0]; in GTOnr3c_fill_s1()
52 const size_t naoj = ao_loc[jsh1] - ao_loc[jsh0]; in GTOnr3c_fill_s1()
53 const size_t naok = ao_loc[ksh1] - ao_loc[ksh0]; in GTOnr3c_fill_s1()
56 const int k0 = ao_loc[ksh] - ao_loc[ksh0]; in GTOnr3c_fill_s1()
66 i0 = ao_loc[ish] - ao_loc[ish0]; in GTOnr3c_fill_s1()
67 j0 = ao_loc[jsh] - ao_loc[jsh0]; in GTOnr3c_fill_s1()
154 const int dk = ao_loc[ksh+1] - ao_loc[ksh]; in GTOnr3c_fill_s2ij()
155 const int k0 = ao_loc[ksh] - ao_loc[ksh0]; in GTOnr3c_fill_s2ij()
167 jp = ao_loc[jsh] - ao_loc[jsh0]; in GTOnr3c_fill_s2ij()
173 di = ao_loc[ish+1] - ao_loc[ish]; in GTOnr3c_fill_s2ij()
[all …]
H A Dfill_r_4c.c31 int *shls_slice, int *ao_loc, CINTOpt *cintopt, in GTOr4c_fill_s1() argument
42 const size_t naoi = ao_loc[ish1] - ao_loc[ish0]; in GTOr4c_fill_s1()
43 const size_t naoj = ao_loc[jsh1] - ao_loc[jsh0]; in GTOr4c_fill_s1()
44 const size_t naok = ao_loc[ksh1] - ao_loc[ksh0]; in GTOr4c_fill_s1()
45 const size_t naol = ao_loc[lsh1] - ao_loc[lsh0]; in GTOr4c_fill_s1()
51 const int ip = ao_loc[ish] - ao_loc[ish0]; in GTOr4c_fill_s1()
52 const int jp = ao_loc[jsh] - ao_loc[jsh0]; in GTOr4c_fill_s1()
65 k0 = ao_loc[ksh] - ao_loc[ksh0]; in GTOr4c_fill_s1()
66 l0 = ao_loc[lsh] - ao_loc[lsh0]; in GTOr4c_fill_s1()
75 int *shls_slice, int *ao_loc, CINTOpt *cintopt, in GTOr4c_drv() argument
[all …]
H A Dfill_int2c.c35 int *shls_slice, int *ao_loc, CINTOpt *opt, in GTOint2c() argument
44 const size_t naoi = ao_loc[ish1] - ao_loc[ish0]; in GTOint2c()
45 const size_t naoj = ao_loc[jsh1] - ao_loc[jsh0]; in GTOint2c()
67 i0 = ao_loc[ish] - ao_loc[ish0]; in GTOint2c()
68 j0 = ao_loc[jsh] - ao_loc[jsh0]; in GTOint2c()
83 int *shls_slice, int *ao_loc, CINTOpt *opt, in GTOint2c_spinor() argument
92 const size_t naoi = ao_loc[ish1] - ao_loc[ish0]; in GTOint2c_spinor()
93 const size_t naoj = ao_loc[jsh1] - ao_loc[jsh0]; in GTOint2c_spinor()
115 i0 = ao_loc[ish] - ao_loc[ish0]; in GTOint2c_spinor()
116 j0 = ao_loc[jsh] - ao_loc[jsh0]; in GTOint2c_spinor()
H A Dfill_grids_int2c.c64 int *shls_slice, int *ao_loc, CINTOpt *opt, in GTOgrids_int2c() argument
74 const size_t naoi = ao_loc[ish1] - ao_loc[ish0]; in GTOgrids_int2c()
75 const size_t naoj = ao_loc[jsh1] - ao_loc[jsh0]; in GTOgrids_int2c()
102 i0 = ao_loc[ish] - ao_loc[ish0]; in GTOgrids_int2c()
103 j0 = ao_loc[jsh] - ao_loc[jsh0]; in GTOgrids_int2c()
142 int *shls_slice, int *ao_loc, CINTOpt *opt, in GTOgrids_int2c_spinor() argument
152 const size_t naoi = ao_loc[ish1] - ao_loc[ish0]; in GTOgrids_int2c_spinor()
153 const size_t naoj = ao_loc[jsh1] - ao_loc[jsh0]; in GTOgrids_int2c_spinor()
179 i0 = ao_loc[ish] - ao_loc[ish0]; in GTOgrids_int2c_spinor()
180 j0 = ao_loc[jsh] - ao_loc[jsh0]; in GTOgrids_int2c_spinor()
/dports/science/py-pyscf/pyscf-2.0.1/pyscf/lib/vhf/
H A Dnr_direct.c38 const int *ao_loc = envs->ao_loc; \
224 int v_rows = ao_loc[v_bra_sh1] - ao_loc[v_bra_sh0]; in allocate_JKArray()
225 int v_cols = ao_loc[v_ket_sh1] - ao_loc[v_ket_sh0]; in allocate_JKArray()
289 int nbra = ao_loc[ish1] - ao_loc[ish0]; in zero_out_vjk()
290 int nket = ao_loc[jsh1] - ao_loc[jsh0]; in zero_out_vjk()
304 size_t vrow = ao_loc[ish1] - ao_loc[ish0]; in assemble_v()
305 size_t vcol = ao_loc[jsh1] - ao_loc[jsh0]; in assemble_v()
307 int voffset = ao_loc[ish0] * vcol + ao_loc[jsh0]; in assemble_v()
317 di = ao_loc[ish+1] - ao_loc[ish]; in assemble_v()
318 dj = ao_loc[jsh+1] - ao_loc[jsh]; in assemble_v()
[all …]
H A Dfill_nr_s8.c43 const int *ao_loc = envs->ao_loc; in fillnr_s8() local
45 const int nao = ao_loc[nbas]; in fillnr_s8()
47 const int di = ao_loc[ish+1] - ao_loc[ish]; in fillnr_s8()
48 const int dj = ao_loc[jsh+1] - ao_loc[jsh]; in fillnr_s8()
62 peri = eri + ao_loc[ksh] * nao + ao_loc[lsh]; in fillnr_s8()
68 for (k = 0; k < ao_loc[ksh+1]-ao_loc[ksh]; k++) { in fillnr_s8()
69 for (l = 0; l < ao_loc[lsh+1]-ao_loc[lsh]; l++) { in fillnr_s8()
82 const int *ao_loc = envs->ao_loc; in store_ij() local
83 const int nao = ao_loc[nbas]; in store_ij()
85 const int di = ao_loc[ish+1] - ao_loc[ish]; in store_ij()
[all …]
H A Dr_direct_dot.h21 int nao, int ncomp, int *shls, int *ao_loc, int *tao,
25 int nao, int ncomp, int *shls, int *ao_loc, int *tao,
29 int nao, int ncomp, int *shls, int *ao_loc, int *tao,
33 int nao, int ncomp, int *shls, int *ao_loc, int *tao,
37 int nao, int ncomp, int *shls, int *ao_loc, int *tao,
41 int nao, int ncomp, int *shls, int *ao_loc, int *tao,
69 int nao, int ncomp, int *shls, int *ao_loc, int *tao,
73 int nao, int ncomp, int *shls, int *ao_loc, int *tao,
77 int nao, int ncomp, int *shls, int *ao_loc, int *tao,
81 int nao, int ncomp, int *shls, int *ao_loc, int *tao,
[all …]
H A Drha_direct_dot.c35 const int istart = ao_loc[ish]; \
36 const int jstart = ao_loc[jsh]; \
37 const int kstart = ao_loc[ksh]; \
38 const int lstart = ao_loc[lsh]; \
39 const int iend = ao_loc[ish+1]; \
40 const int jend = ao_loc[jsh+1]; \
41 const int kend = ao_loc[ksh+1]; \
42 const int lend = ao_loc[lsh+1]; \
67 CVHFrs1_ji_s1kl(eri, dm, vj, nao, ncomp, shls, ao_loc, tao, in CVHFrha1_ji_s1kl()
76 CVHFrs1_lk_s1ij(eri, dm, vj, nao, ncomp, shls, ao_loc, tao, in CVHFrha1_lk_s1ij()
[all …]
H A Drah_direct_dot.c35 const int istart = ao_loc[ish]; \
36 const int jstart = ao_loc[jsh]; \
37 const int kstart = ao_loc[ksh]; \
38 const int lstart = ao_loc[lsh]; \
39 const int iend = ao_loc[ish+1]; \
40 const int jend = ao_loc[jsh+1]; \
41 const int kend = ao_loc[ksh+1]; \
42 const int lend = ao_loc[lsh+1]; \
69 CVHFrs1_ji_s1kl(eri, dm, vj, nao, ncomp, shls, ao_loc, tao, in CVHFrah1_ji_s1kl()
78 CVHFrs1_lk_s1ij(eri, dm, vj, nao, ncomp, shls, ao_loc, tao, in CVHFrah1_lk_s1ij()
[all …]
H A Dhessian_screen.c71 int *ao_loc, int *atm, int natm, in CVHFgrad_jk_direct_scf() argument
104 dj = ao_loc[ish+1] - ao_loc[ish]; in CVHFgrad_jk_direct_scf()
114 di = ao_loc[ish+1] - ao_loc[ish]; in CVHFgrad_jk_direct_scf()
115 dj = ao_loc[jsh+1] - ao_loc[jsh]; in CVHFgrad_jk_direct_scf()
152 const size_t nao = ao_loc[nbas]; in CVHFgrad_jk_direct_scf_dm()
162 for (i = ao_loc[ish]; i < ao_loc[ish+1]; i++) { in CVHFgrad_jk_direct_scf_dm()
163 for (j = ao_loc[jsh]; j < ao_loc[jsh+1]; j++) { in CVHFgrad_jk_direct_scf_dm()
251 int *ao_loc, int *atm, int natm, in CVHFipip1_direct_scf() argument
284 dj = ao_loc[ish+1] - ao_loc[ish]; in CVHFipip1_direct_scf()
294 di = ao_loc[ish+1] - ao_loc[ish]; in CVHFipip1_direct_scf()
[all …]
H A Dr_direct_o1.c40 const int *ao_loc = envs->ao_loc; \
44 const int nao = ao_loc[nbas]; \
45 const int di = ao_loc[ish+1] - ao_loc[ish]; \
46 const int dj = ao_loc[jsh+1] - ao_loc[jsh]; \
108 dk = ao_loc[ksh+1] - ao_loc[ksh]; in CVHFdot_rs1()
109 dl = ao_loc[lsh+1] - ao_loc[lsh]; in CVHFdot_rs1()
157 dk = ao_loc[ksh+1] - ao_loc[ksh]; in dot_rs2sub()
158 dl = ao_loc[lsh+1] - ao_loc[lsh]; in dot_rs2sub()
244 dk = ao_loc[ksh+1] - ao_loc[ksh]; in CVHFdot_rs8()
245 dl = ao_loc[lsh+1] - ao_loc[lsh]; in CVHFdot_rs8()
[all …]
H A Dnr_sgx_direct.c53 const int *ao_loc = envs->ao_loc; \
61 const int ioff = ao_loc[ish0]; \
62 const int joff = ao_loc[jsh0]; \
90 i0 = ao_loc[ish ] - ioff; in SGXdot_nrs1()
91 j0 = ao_loc[jsh ] - joff; in SGXdot_nrs1()
206 dj = ao_loc[ish+1] - ao_loc[ish]; in SGXsetnr_direct_scf()
230 di = ao_loc[ish+1] - ao_loc[ish]; in SGXsetnr_direct_scf()
231 dj = ao_loc[jsh+1] - ao_loc[jsh]; in SGXsetnr_direct_scf()
268 jkarray->v_dims[0] = ao_loc[shls_slice[1]] - ao_loc[shls_slice[0]]; \
269 jkarray->v_dims[1] = ao_loc[shls_slice[3]] - ao_loc[shls_slice[2]]; \
[all …]
H A Dr_direct_dot.c33 const int istart = ao_loc[ish]; \
34 const int jstart = ao_loc[jsh]; \
35 const int kstart = ao_loc[ksh]; \
36 const int lstart = ao_loc[lsh]; \
37 const int iend = ao_loc[ish+1]; \
38 const int jend = ao_loc[jsh+1]; \
39 const int kend = ao_loc[ksh+1]; \
40 const int lend = ao_loc[lsh+1]; \
250 CVHFrs1_lk_s1ij(eri, dm, vj, nao, ncomp, shls, ao_loc, tao, in CVHFrs2ij_lk_s2ij()
261 CVHFrs1_jk_s1il(eri, dm, vk, nao, ncomp, shls, ao_loc, tao, in CVHFrs2ij_jk_s1il()
[all …]
H A Drkb_screen.c146 int *ao_loc, int *atm, int natm, in set_qcond() argument
160 dj = ao_loc[ish+1] - ao_loc[ish]; in set_qcond()
168 di = ao_loc[ish+1] - ao_loc[ish]; in set_qcond()
169 dj = ao_loc[jsh+1] - ao_loc[jsh]; in set_qcond()
192 int *ao_loc, int *atm, int natm, in CVHFrkbllll_direct_scf() argument
205 int *ao_loc, int *atm, int natm, in CVHFrkbssss_direct_scf() argument
219 int *ao_loc, int *atm, int natm, in CVHFrkbssll_direct_scf() argument
236 const size_t nao = ao_loc[nbas]; in set_dmcond()
248 for (i = ao_loc[ish]; i < ao_loc[ish+1]; i++) { in set_dmcond()
249 for (j = ao_loc[jsh]; j < ao_loc[jsh+1]; j++) { in set_dmcond()
[all …]
/dports/science/py-pyscf/pyscf-2.0.1/pyscf/gto/
H A Dmoleintor.py463 naoi = ao_loc[i1] - ao_loc[i0]
464 naoj = ao_loc[j1] - ao_loc[j0]
530 naok = ao_loc[k1] - ao_loc[k0]
533 naoi = ao_loc[i1] - ao_loc[i0]
534 naoj = ao_loc[j1] - ao_loc[j0]
538 nij = ao_loc[i1]*(ao_loc[i1]+1)//2 - ao_loc[i0]*(ao_loc[i0]+1)//2
619 naoi = ao_loc[i1] - ao_loc[i0]
620 naoj = ao_loc[j1] - ao_loc[j0]
621 naok = ao_loc[k1] - ao_loc[k0]
625 assert(numpy.all(ao_loc[i0:i1]-ao_loc[i0] == ao_loc[j0:j1]-ao_loc[j0]))
[all …]
H A Dft_ao.py68 ao_loc = gto.moleintor.make_loc(mol._bas, intor)
69 ni = ao_loc[shls_slice[1]] - ao_loc[shls_slice[0]]
70 nj = ao_loc[shls_slice[3]] - ao_loc[shls_slice[2]]
81 i0 = ao_loc[shls_slice[0]]
82 i1 = ao_loc[shls_slice[1]]
93 ao_loc.ctypes.data_as(ctypes.c_void_p), ctypes.c_double(0),
148 ao_loc = mol.ao_loc_nr()
149 nao = ao_loc[mol.nbas]
150 ao_loc = numpy.asarray(numpy.hstack((ao_loc, [nao+1])), dtype=numpy.int32)
151 ni = ao_loc[shls_slice[1]] - ao_loc[shls_slice[0]]
[all …]
/dports/science/py-pyscf/pyscf-2.0.1/pyscf/lib/ao2mo/
H A Dr_ao2mo.c237 const int *ao_loc = envs->ao_loc; in fill_s1() local
240 const int di = ao_loc[ish+1] - ao_loc[ish]; in fill_s1()
254 dk = ao_loc[ksh+1] - ao_loc[ksh]; in fill_s1()
255 dl = ao_loc[lsh+1] - ao_loc[lsh]; in fill_s1()
303 const int *ao_loc = envs->ao_loc; in fill_s2() local
321 dk = ao_loc[ksh+1] - ao_loc[ksh]; in fill_s2()
322 dl = ao_loc[lsh+1] - ao_loc[lsh]; in fill_s2()
652 int *ao_loc = envs->ao_loc; in AO2MOsortranse2_r_s1() local
691 int *ao_loc = envs->ao_loc; in AO2MOsortranse2_r_s2kl() local
744 int *ao_loc = envs->ao_loc; in AO2MOsortranse2_r_a2kl() local
[all …]
H A Dnr_ao2mo.c770 const int *ao_loc = envs->ao_loc; in AO2MOfill_nr_s1() local
806 const int *ao_loc = envs->ao_loc; in AO2MOfill_nr_s2ij() local
848 const int *ao_loc = envs->ao_loc; in AO2MOfill_nr_s2kl() local
866 dk = ao_loc[ksh+1] - ao_loc[ksh]; in AO2MOfill_nr_s2kl()
867 dl = ao_loc[lsh+1] - ao_loc[lsh]; in AO2MOfill_nr_s2kl()
896 const int *ao_loc = envs->ao_loc; in AO2MOfill_nr_s4() local
914 dk = ao_loc[ksh+1] - ao_loc[ksh]; in AO2MOfill_nr_s4()
915 dl = ao_loc[lsh+1] - ao_loc[lsh]; in AO2MOfill_nr_s4()
1050 int *ao_loc = envs->ao_loc; in AO2MOsortranse2_nr_s1() local
1086 int *ao_loc = envs->ao_loc; in AO2MOsortranse2_nr_s2kl() local
[all …]
/dports/science/py-pyscf/pyscf-2.0.1/pyscf/pbc/df/
H A Doutcore.py67 ao_loc = cell.ao_loc_nr()
69 ni = ao_loc[shls_slice[1]] - ao_loc[shls_slice[0]]
70 nj = ao_loc[shls_slice[3]] - ao_loc[shls_slice[2]]
74 nii = (ao_loc[shls_slice[1]]*(ao_loc[shls_slice[1]]+1)//2 -
75 ao_loc[shls_slice[0]]*(ao_loc[shls_slice[0]]+1)//2)
191 ao_loc = cell.ao_loc_nr()
193 ni = ao_loc[shls_slice[1]] - ao_loc[shls_slice[0]]
194 nj = ao_loc[shls_slice[3]] - ao_loc[shls_slice[2]]
197 nii = (ao_loc[shls_slice[1]]*(ao_loc[shls_slice[1]]+1)//2 -
198 ao_loc[shls_slice[0]]*(ao_loc[shls_slice[0]]+1)//2)

12345