134 SUBROUTINE update_pmax_mat(pmax_set, map_atom_to_kind_atom, set_offset, atomic_block_offset, &
135 pmax_atom, full_density_alpha, full_density_beta, natom, &
136 kind_of, basis_parameter, &
137 nkind, is_assoc_atomic_block, nspins)
139 TYPE(
hfx_p_kind),
DIMENSION(:),
POINTER :: pmax_set
140 INTEGER,
DIMENSION(:),
POINTER :: map_atom_to_kind_atom
141 INTEGER,
DIMENSION(:, :, :, :),
POINTER :: set_offset
142 INTEGER,
DIMENSION(:, :),
POINTER :: atomic_block_offset
143 REAL(
dp),
DIMENSION(:, :),
POINTER :: pmax_atom, full_density_alpha, &
145 INTEGER,
INTENT(IN) :: natom
146 INTEGER :: kind_of(*)
149 INTEGER,
DIMENSION(:, :) :: is_assoc_atomic_block
150 INTEGER,
INTENT(IN) :: nspins
152 CHARACTER(LEN=*),
PARAMETER :: routinen =
'update_pmax_mat'
154 INTEGER :: act_atomic_block_offset, act_set_offset, handle, i, img, jatom, jkind, jset, &
155 katom, kind_kind_idx, kkind, kset, mb, mc, nimg, nsetb, nsetc
156 INTEGER,
DIMENSION(:),
POINTER :: nsgfb, nsgfc
159 CALL timeset(routinen, handle)
161 DO i = 1,
SIZE(pmax_set)
162 pmax_set(i)%p_kind = 0.0_dp
167 nimg =
SIZE(full_density_alpha, 2)
170 jkind = kind_of(jatom)
171 nsetb = basis_parameter(jkind)%nset
172 nsgfb => basis_parameter(jkind)%nsgf
175 IF (.NOT. is_assoc_atomic_block(jatom, katom) >= 1) cycle
176 kkind = kind_of(katom)
177 IF (kkind < jkind) cycle
178 nsetc = basis_parameter(kkind)%nset
179 nsgfc => basis_parameter(kkind)%nsgf
180 act_atomic_block_offset = atomic_block_offset(katom, jatom)
183 IF (katom >= jatom)
THEN
185 act_set_offset = set_offset(kset, jset, kkind, jkind)
187 i = act_set_offset + act_atomic_block_offset - 1
188 DO mc = 1, nsgfc(kset)
189 DO mb = 1, nsgfb(jset)
190 pmax_tmp = max(pmax_tmp, abs(full_density_alpha(i, img)))
191 IF (
ASSOCIATED(full_density_beta))
THEN
192 pmax_tmp = max(pmax_tmp, abs(full_density_beta(i, img)))
198 IF (pmax_tmp == 0.0_dp)
THEN
201 pmax_tmp = log10(real(nspins,
dp)*pmax_tmp)
203 kind_kind_idx = int(get_1d_idx(jkind, kkind, int(nkind,
int_8)))
204 pmax_set(kind_kind_idx)%p_kind(jset, &
206 map_atom_to_kind_atom(jatom), &
207 map_atom_to_kind_atom(katom)) = pmax_tmp
210 act_set_offset = set_offset(jset, kset, jkind, kkind)
212 DO mc = 1, nsgfc(kset)
213 i = act_set_offset + act_atomic_block_offset - 1 + mc - 1
214 DO mb = 1, nsgfb(jset)
215 pmax_tmp = max(pmax_tmp, abs(full_density_alpha(i, img)))
216 IF (
ASSOCIATED(full_density_beta))
THEN
217 pmax_tmp = max(pmax_tmp, abs(full_density_beta(i, img)))
223 IF (pmax_tmp == 0.0_dp)
THEN
226 pmax_tmp = log10(real(nspins,
dp)*pmax_tmp)
228 kind_kind_idx = int(get_1d_idx(jkind, kkind, int(nkind,
int_8)))
229 pmax_set(kind_kind_idx)%p_kind(jset, &
231 map_atom_to_kind_atom(jatom), &
232 map_atom_to_kind_atom(katom)) = pmax_tmp
240 jkind = kind_of(jatom)
241 nsetb = basis_parameter(jkind)%nset
243 IF (.NOT. is_assoc_atomic_block(jatom, katom) >= 1) cycle
244 kkind = kind_of(katom)
245 IF (kkind < jkind) cycle
246 nsetc = basis_parameter(kkind)%nset
250 kind_kind_idx = int(get_1d_idx(jkind, kkind, int(nkind,
int_8)))
251 pmax_tmp = max(pmax_set(kind_kind_idx)%p_kind(jset, &
253 map_atom_to_kind_atom(jatom), &
254 map_atom_to_kind_atom(katom)), pmax_tmp)
257 pmax_atom(jatom, katom) = pmax_tmp
258 pmax_atom(katom, jatom) = pmax_tmp
262 CALL timestop(handle)
301 coeffs_set, coeffs_kind, coeffs_pgf, radii_pgf, &
302 max_set, max_pgf, n_threads, i_thread)
306 TYPE(hfx_potential_type) :: potential_parameter
307 TYPE(hfx_screen_coeff_type), &
308 DIMENSION(:, :, :, :),
POINTER :: coeffs_set
309 TYPE(hfx_screen_coeff_type),
DIMENSION(:, :), &
310 POINTER :: coeffs_kind
311 TYPE(hfx_screen_coeff_type), &
312 DIMENSION(:, :, :, :, :, :),
POINTER :: coeffs_pgf, radii_pgf
313 INTEGER,
INTENT(IN) :: max_set, max_pgf, n_threads, i_thread
315 CHARACTER(LEN=*),
PARAMETER :: routinen =
'calc_screening_functions'
317 INTEGER :: handle, i, ikind, ipgf, iset, jkind, &
318 jpgf, jset, la, lb, ncoa, ncob, nkind, &
319 nseta, nsetb, sgfa, sgfb
320 INTEGER,
DIMENSION(:),
POINTER :: la_max, la_min, lb_max, lb_min, npgfa, &
322 INTEGER,
DIMENSION(:, :),
POINTER :: first_sgfa, first_sgfb
323 REAL(
dp) :: kind_radius_a, kind_radius_b, max_contraction_a, max_contraction_b, max_val, &
324 max_val_temp, r1, ra(3), radius, rb(3), x(2)
325 REAL(
dp),
DIMENSION(:),
POINTER :: set_radius_a, set_radius_b
326 REAL(
dp),
DIMENSION(:, :),
POINTER :: rpgfa, rpgfb, sphi_a, sphi_b, zeta, zetb
327 REAL(
dp),
SAVE :: data(2, 0:100)
329 TYPE(hfx_screen_coeff_type),
DIMENSION(:, :), &
331 TYPE(
qs_kind_type),
DIMENSION(:),
POINTER :: qs_kind_set
335 CALL timeset(routinen, handle)
339 qs_kind_set=qs_kind_set)
341 nkind =
SIZE(qs_kind_set, 1)
344 ALLOCATE (coeffs_pgf(max_pgf, max_pgf, max_set, max_set, nkind, nkind))
352 coeffs_pgf(jpgf, ipgf, jset, iset, jkind, ikind)%x(:) = 0.0_dp
365 NULLIFY (qs_kind, orb_basis)
366 qs_kind => qs_kind_set(ikind)
367 CALL get_qs_kind(qs_kind=qs_kind, basis_set=orb_basis)
368 NULLIFY (la_max, la_min, npgfa, zeta)
370 la_max => basis_parameter(ikind)%lmax
371 la_min => basis_parameter(ikind)%lmin
372 npgfa => basis_parameter(ikind)%npgf
373 nseta = basis_parameter(ikind)%nset
374 zeta => basis_parameter(ikind)%zet
375 set_radius_a => basis_parameter(ikind)%set_radius
376 first_sgfa => basis_parameter(ikind)%first_sgf
377 sphi_a => basis_parameter(ikind)%sphi
378 nsgfa => basis_parameter(ikind)%nsgf
379 rpgfa => basis_parameter(ikind)%pgf_radius
382 NULLIFY (qs_kind, orb_basis)
383 qs_kind => qs_kind_set(jkind)
384 CALL get_qs_kind(qs_kind=qs_kind, basis_set=orb_basis)
385 NULLIFY (lb_max, lb_min, npgfb, zetb)
387 lb_max => basis_parameter(jkind)%lmax
388 lb_min => basis_parameter(jkind)%lmin
389 npgfb => basis_parameter(jkind)%npgf
390 nsetb = basis_parameter(jkind)%nset
391 zetb => basis_parameter(jkind)%zet
392 set_radius_b => basis_parameter(jkind)%set_radius
393 first_sgfb => basis_parameter(jkind)%first_sgf
394 sphi_b => basis_parameter(jkind)%sphi
395 nsgfb => basis_parameter(jkind)%nsgf
396 rpgfb => basis_parameter(jkind)%pgf_radius
399 ncoa = npgfa(iset)*
ncoset(la_max(iset))
400 sgfa = first_sgfa(1, iset)
401 max_contraction_a = maxval([(sum(abs(sphi_a(1:ncoa, i))), i=sgfa, sgfa + nsgfa(iset) - 1)])
403 ncob = npgfb(jset)*
ncoset(lb_max(jset))
404 sgfb = first_sgfb(1, jset)
405 max_contraction_b = maxval([(sum(abs(sphi_b(1:ncob, i))), i=sgfb, sgfb + nsgfb(jset) - 1)])
406 radius = set_radius_a(iset) + set_radius_b(jset)
407 DO ipgf = 1, npgfa(iset)
408 DO jpgf = 1, npgfb(jset)
409 radius = rpgfa(ipgf, iset) + rpgfb(jpgf, jset)
410 DO i = i_thread, 100, n_threads
411 rb(1) = 0.0_dp + real(i,
dp)*0.01_dp*radius
413 r1 = max(0.0_dp, radii_pgf(jpgf, ipgf, jset, iset, jkind, ikind)%x(1)*rb(1)**2 + &
414 radii_pgf(jpgf, ipgf, jset, iset, jkind, ikind)%x(2))
415 DO la = la_min(iset), la_max(iset)
416 DO lb = lb_min(jset), lb_max(jset)
418 max_val_temp = 0.0_dp
420 zeta(ipgf, iset), zetb(jpgf, jset), zeta(ipgf, iset), zetb(jpgf, jset), &
422 max_val_temp, potential_parameter, r1, r1)
423 max_val = max(max_val, max_val_temp)
426 max_val = sqrt(max_val)
427 max_val = max_val*max_contraction_a*max_contraction_b
429 IF (max_val == 0.0_dp)
THEN
432 DATA(2, i) = log10((max_val))
438 coeffs_pgf(jpgf, ipgf, jset, iset, jkind, ikind)%x = x
450 ALLOCATE (coeffs_set(max_set, max_set, nkind, nkind))
456 coeffs_set(jset, iset, jkind, ikind)%x(:) = 0.0_dp
466 NULLIFY (qs_kind, orb_basis)
467 qs_kind => qs_kind_set(ikind)
468 CALL get_qs_kind(qs_kind=qs_kind, basis_set=orb_basis)
469 NULLIFY (la_max, la_min, npgfa, zeta)
480 la_max => basis_parameter(ikind)%lmax
481 la_min => basis_parameter(ikind)%lmin
482 npgfa => basis_parameter(ikind)%npgf
483 nseta = basis_parameter(ikind)%nset
484 zeta => basis_parameter(ikind)%zet
485 set_radius_a => basis_parameter(ikind)%set_radius
486 first_sgfa => basis_parameter(ikind)%first_sgf
487 sphi_a => basis_parameter(ikind)%sphi
488 nsgfa => basis_parameter(ikind)%nsgf
491 NULLIFY (qs_kind, orb_basis)
492 qs_kind => qs_kind_set(jkind)
493 CALL get_qs_kind(qs_kind=qs_kind, basis_set=orb_basis)
494 NULLIFY (lb_max, lb_min, npgfb, zetb)
496 lb_max => basis_parameter(jkind)%lmax
497 lb_min => basis_parameter(jkind)%lmin
498 npgfb => basis_parameter(jkind)%npgf
499 nsetb = basis_parameter(jkind)%nset
500 zetb => basis_parameter(jkind)%zet
501 set_radius_b => basis_parameter(jkind)%set_radius
502 first_sgfb => basis_parameter(jkind)%first_sgf
503 sphi_b => basis_parameter(jkind)%sphi
504 nsgfb => basis_parameter(jkind)%nsgf
507 ncoa = npgfa(iset)*
ncoset(la_max(iset))
508 sgfa = first_sgfa(1, iset)
509 max_contraction_a = maxval([(sum(abs(sphi_a(1:ncoa, i))), i=sgfa, sgfa + nsgfa(iset) - 1)])
511 ncob = npgfb(jset)*
ncoset(lb_max(jset))
512 sgfb = first_sgfb(1, jset)
513 max_contraction_b = maxval([(sum(abs(sphi_b(1:ncob, i))), i=sgfb, sgfb + nsgfb(jset) - 1)])
514 radius = set_radius_a(iset) + set_radius_b(jset)
515 tmp_r_1 => radii_pgf(:, :, jset, iset, jkind, ikind)
516 DO i = i_thread, 100, n_threads
517 rb(1) = 0.0_dp + real(i,
dp)*0.01_dp*radius
519 CALL screen4(context, ra, rb, &
520 zeta(:, iset), zetb(:, jset), &
521 la_min(iset), la_max(iset), lb_min(jset), lb_max(jset), &
522 npgfa(iset), npgfb(jset), &
523 max_val, potential_parameter, tmp_r_1, rb(1)**2)
524 max_val = sqrt(max_val)
525 max_val = max_val*max_contraction_a*max_contraction_b
527 IF (max_val == 0.0_dp)
THEN
530 DATA(2, i) = log10((max_val))
536 coeffs_set(jset, iset, jkind, ikind)%x = x
547 ALLOCATE (coeffs_kind(nkind, nkind))
551 coeffs_kind(jkind, ikind)%x(:) = 0.0_dp
558 NULLIFY (qs_kind, orb_basis)
559 qs_kind => qs_kind_set(ikind)
560 CALL get_qs_kind(qs_kind=qs_kind, basis_set=orb_basis)
561 NULLIFY (la_max, la_min, npgfa, zeta)
563 la_max => basis_parameter(ikind)%lmax
564 la_min => basis_parameter(ikind)%lmin
565 npgfa => basis_parameter(ikind)%npgf
566 nseta = basis_parameter(ikind)%nset
567 zeta => basis_parameter(ikind)%zet
568 kind_radius_a = basis_parameter(ikind)%kind_radius
569 first_sgfa => basis_parameter(ikind)%first_sgf
570 sphi_a => basis_parameter(ikind)%sphi
571 nsgfa => basis_parameter(ikind)%nsgf
574 NULLIFY (qs_kind, orb_basis)
575 qs_kind => qs_kind_set(jkind)
576 CALL get_qs_kind(qs_kind=qs_kind, basis_set=orb_basis)
577 NULLIFY (lb_max, lb_min, npgfb, zetb)
579 lb_max => basis_parameter(jkind)%lmax
580 lb_min => basis_parameter(jkind)%lmin
581 npgfb => basis_parameter(jkind)%npgf
582 nsetb = basis_parameter(jkind)%nset
583 zetb => basis_parameter(jkind)%zet
584 kind_radius_b = basis_parameter(jkind)%kind_radius
585 first_sgfb => basis_parameter(jkind)%first_sgf
586 sphi_b => basis_parameter(jkind)%sphi
587 nsgfb => basis_parameter(jkind)%nsgf
589 radius = kind_radius_a + kind_radius_b
591 ncoa = npgfa(iset)*
ncoset(la_max(iset))
592 sgfa = first_sgfa(1, iset)
593 max_contraction_a = maxval([(sum(abs(sphi_a(1:ncoa, i))), i=sgfa, sgfa + nsgfa(iset) - 1)])
595 ncob = npgfb(jset)*
ncoset(lb_max(jset))
596 sgfb = first_sgfb(1, jset)
597 max_contraction_b = maxval([(sum(abs(sphi_b(1:ncob, i))), i=sgfb, sgfb + nsgfb(jset) - 1)])
598 DO i = i_thread, 100, n_threads
599 rb(1) = 0.0_dp + real(i,
dp)*0.01_dp*radius
601 tmp_r_1 => radii_pgf(:, :, jset, iset, jkind, ikind)
602 CALL screen4(context, ra, rb, &
603 zeta(:, iset), zetb(:, jset), &
604 la_min(iset), la_max(iset), lb_min(jset), lb_max(jset), &
605 npgfa(iset), npgfb(jset), &
606 max_val, potential_parameter, tmp_r_1, rb(1)**2)
608 max_val = sqrt(max_val)
609 max_val = max_val*max_contraction_a*max_contraction_b
610 IF (max_val == 0.0_dp)
THEN
613 DATA(2, i) = max(log10(max_val),
DATA(2, i))
621 coeffs_kind(jkind, ikind)%x = x
628 CALL timestop(handle)
656 radii_pgf, max_set, max_pgf, eps_schwarz, &
661 TYPE(hfx_screen_coeff_type), &
662 DIMENSION(:, :, :, :, :, :),
POINTER :: radii_pgf
663 INTEGER,
INTENT(IN) :: max_set, max_pgf
664 REAL(
dp) :: eps_schwarz
665 INTEGER,
INTENT(IN) :: n_threads, i_thread
667 CHARACTER(LEN=*),
PARAMETER :: routinen =
'calc_pair_dist_radii'
669 INTEGER :: handle, i, ikind, ipgf, iset, jkind, &
670 jpgf, jset, la, lb, ncoa, ncob, nkind, &
671 nseta, nsetb, sgfa, sgfb
672 INTEGER,
DIMENSION(:),
POINTER :: la_max, la_min, lb_max, lb_min, npgfa, &
674 INTEGER,
DIMENSION(:, :),
POINTER :: first_sgfa, first_sgfb
675 REAL(
dp) :: cutoff, ff, max_contraction_a, max_contraction_b, prefactor, r1, r_max, ra(3), &
676 rab(3), rab2, radius, rap(3), rb(3), rp(3), x(2), zetp
677 REAL(
dp),
DIMENSION(:, :),
POINTER :: rpgfa, rpgfb, sphi_a, sphi_b, zeta, zetb
678 REAL(
dp),
SAVE :: data(2, 0:100)
680 TYPE(
qs_kind_type),
DIMENSION(:),
POINTER :: qs_kind_set
684 CALL timeset(routinen, handle)
687 qs_kind_set=qs_kind_set)
689 nkind =
SIZE(qs_kind_set, 1)
693 ALLOCATE (radii_pgf(max_pgf, max_pgf, max_set, max_set, nkind, nkind))
700 radii_pgf(jpgf, ipgf, jset, iset, jkind, ikind)%x(:) = 0.0_dp
713 NULLIFY (qs_kind, orb_basis)
714 qs_kind => qs_kind_set(ikind)
715 CALL get_qs_kind(qs_kind=qs_kind, basis_set=orb_basis)
716 NULLIFY (la_max, la_min, npgfa, zeta)
718 la_max => basis_parameter(ikind)%lmax
719 la_min => basis_parameter(ikind)%lmin
720 npgfa => basis_parameter(ikind)%npgf
721 nseta = basis_parameter(ikind)%nset
722 zeta => basis_parameter(ikind)%zet
723 first_sgfa => basis_parameter(ikind)%first_sgf
724 sphi_a => basis_parameter(ikind)%sphi
725 nsgfa => basis_parameter(ikind)%nsgf
726 rpgfa => basis_parameter(ikind)%pgf_radius
729 NULLIFY (qs_kind, orb_basis)
730 qs_kind => qs_kind_set(jkind)
731 CALL get_qs_kind(qs_kind=qs_kind, basis_set=orb_basis)
732 NULLIFY (lb_max, lb_min, npgfb, zetb)
734 lb_max => basis_parameter(jkind)%lmax
735 lb_min => basis_parameter(jkind)%lmin
736 npgfb => basis_parameter(jkind)%npgf
737 nsetb = basis_parameter(jkind)%nset
738 zetb => basis_parameter(jkind)%zet
739 first_sgfb => basis_parameter(jkind)%first_sgf
740 sphi_b => basis_parameter(jkind)%sphi
741 nsgfb => basis_parameter(jkind)%nsgf
742 rpgfb => basis_parameter(jkind)%pgf_radius
745 ncoa = npgfa(iset)*
ncoset(la_max(iset))
746 sgfa = first_sgfa(1, iset)
747 max_contraction_a = maxval([(sum(abs(sphi_a(1:ncoa, i))), i=sgfa, sgfa + nsgfa(iset) - 1)])
749 ncob = npgfb(jset)*
ncoset(lb_max(jset))
750 sgfb = first_sgfb(1, jset)
751 max_contraction_b = maxval([(sum(abs(sphi_b(1:ncob, i))), i=sgfb, sgfb + nsgfb(jset) - 1)])
752 DO ipgf = 1, npgfa(iset)
753 DO jpgf = 1, npgfb(jset)
754 radius = rpgfa(ipgf, iset) + rpgfb(jpgf, jset)
755 DO i = i_thread, 100, n_threads
756 rb(1) = 0.0_dp + 0.01_dp*radius*i
758 DO la = la_min(iset), la_max(iset)
759 DO lb = lb_min(jset), lb_max(jset)
760 zetp = zeta(ipgf, iset) + zetb(jpgf, jset)
761 ff = zetb(jpgf, jset)/zetp
765 prefactor = exp(-zeta(ipgf, iset)*ff*rab2)
767 rp(:) = ra(:) + rap(:)
768 rb(:) = ra(:) + rab(:)
771 la, la, lb, lb, ra=ra, rb=rb, rp=rp, &
772 zetp=zetp, eps=eps_schwarz, prefactor=prefactor, cutoff=cutoff, epsabs=1.0e-12_dp)
773 r_max = max(r_max, r1)
783 CALL optimize_it(
DATA, x, 0.0_dp)
784 radii_pgf(jpgf, ipgf, jset, iset, jkind, ikind)%x = x
794 CALL timestop(handle)
subroutine, public get_qs_env(qs_env, atomic_kind_set, qs_kind_set, cell, super_cell, cell_ref, use_ref_cell, kpoints, dft_control, mos, sab_orb, sab_all, qmmm, qmmm_periodic, mimic, sac_ae, sac_ppl, sac_lri, sap_ppnl, sab_vdw, sab_scp, sap_oce, sab_lrc, sab_se, sab_xtbe, sab_tbe, sab_core, sab_xb, sab_xtb_pp, sab_xtb_nonbond, sab_almo, sab_kp, sab_kp_nosym, sab_cneo, particle_set, energy, force, matrix_h, matrix_h_im, matrix_ks, matrix_ks_im, matrix_vxc, run_rtp, rtp, matrix_h_kp, matrix_h_im_kp, matrix_ks_kp, matrix_ks_im_kp, matrix_vxc_kp, kinetic_kp, matrix_s_kp, matrix_w_kp, matrix_s_ri_aux_kp, matrix_s, matrix_s_ri_aux, matrix_w, matrix_p_mp2, matrix_p_mp2_admm, matrix_vhxc, rho, rho_xc, pw_env, ewald_env, ewald_pw, active_space, mpools, input, para_env, blacs_env, scf_control, rel_control, kinetic, qs_charges, vppl, xcint_weights, rho_core, rho_nlcc, rho_nlcc_g, ks_env, ks_qmmm_env, wf_history, scf_env, local_particles, local_molecules, distribution_2d, dbcsr_dist, molecule_kind_set, molecule_set, subsys, cp_subsys, oce, local_rho_set, rho_atom_set, task_list, task_list_soft, rho0_atom_set, rho0_mpole, rhoz_set, rhoz_cneo_set, ecoul_1c, rho0_s_rs, rho0_s_gs, rhoz_cneo_s_rs, rhoz_cneo_s_gs, do_kpoints, has_unit_metric, requires_mo_derivs, mo_derivs, mo_loc_history, nkind, natom, nelectron_total, nelectron_spin, efield, neighbor_list_id, linres_control, xas_env, virial, cp_ddapc_env, cp_ddapc_ewald, outer_scf_history, outer_scf_ihistory, x_data, et_coupling, dftb_potential, results, se_taper, se_store_int_env, se_nddo_mpole, se_nonbond_env, admm_env, lri_env, lri_density, exstate_env, ec_env, harris_env, dispersion_env, gcp_env, vee, rho_external, external_vxc, mask, mp2_env, bs_env, kg_env, wanniercentres, atprop, ls_scf_env, do_transport, transport_env, v_hartree_rspace, s_mstruct_changed, rho_changed, potential_changed, forces_up_to_date, mscfg_env, almo_scf_env, gradient_history, variable_history, embed_pot, spin_embed_pot, polar_env, mos_last_converged, eeq, rhs, do_rixs, tb_tblite)
Get the QUICKSTEP environment.
subroutine, public get_qs_kind(qs_kind, basis_set, basis_type, ncgf, nsgf, all_potential, tnadd_potential, gth_potential, sgp_potential, upf_potential, cneo_potential, se_parameter, dftb_parameter, xtb_parameter, dftb3_param, zatom, zeff, elec_conf, mao, lmax_dftb, alpha_core_charge, ccore_charge, core_charge, core_charge_radius, paw_proj_set, paw_atom, hard_radius, hard0_radius, max_rad_local, covalent_radius, vdw_radius, gpw_type_forced, harmonics, max_iso_not0, max_s_harm, grid_atom, ngrid_ang, ngrid_rad, lmax_rho0, dft_plus_u_atom, l_of_dft_plus_u, n_of_dft_plus_u, u_minus_j, hund_j, u_of_dft_plus_u, j_of_dft_plus_u, alpha_of_dft_plus_u, beta_of_dft_plus_u, j0_of_dft_plus_u, occupation_of_dft_plus_u, dispersion, bs_occupation, magnetization, no_optimize, addel, laddel, naddel, orbitals, max_scf, eps_scf, smear, u_ramping, u_minus_j_target, eps_u_ramping, proj_shell_charge, lr_atom, do_mtlr, u_j_loop, ao_coef, init_u_ramping_each_scf, reltmat, ghost, monovalent, floating, name, element_symbol, pao_basis_size, pao_model_file, pao_potentials, pao_descriptors, nelec)
Get attributes of an atomic kind.