LCOV - code coverage report
Current view: top level - src - semi_empirical_int_arrays.F (source / functions) Hit Total Coverage
Test: CP2K Regtests (git:34ef472) Lines: 990 990 100.0 %
Date: 2024-04-26 08:30:29 Functions: 5 5 100.0 %

          Line data    Source code
       1             : !--------------------------------------------------------------------------------------------------!
       2             : !   CP2K: A general program to perform molecular dynamics simulations                              !
       3             : !   Copyright 2000-2024 CP2K developers group <https://cp2k.org>                                   !
       4             : !                                                                                                  !
       5             : !   SPDX-License-Identifier: GPL-2.0-or-later                                                      !
       6             : !--------------------------------------------------------------------------------------------------!
       7             : 
       8             : ! **************************************************************************************************
       9             : !> \brief Arrays of parameters used in the semi-empirical calculations
      10             : !> \References  Everywhere in this module TCA stands for:
      11             : !>   - TCA:   W. Thiel and  A. A. Voityuk - Teor. Chim. Acta (1992) 81:391-404
      12             : !>   - TCA77: M.J.S. Dewar and W. Thiel - Teor. Chim. Acta (1977) 46:89-104
      13             : !>
      14             : !> \author Teodoro Laino [tlaino] - University of Zurich
      15             : !> \date   03.2008 [tlaino]
      16             : ! **************************************************************************************************
      17             : MODULE semi_empirical_int_arrays
      18             : 
      19             :    USE kinds,                           ONLY: dp
      20             : #include "./base/base_uses.f90"
      21             : 
      22             :    IMPLICIT NONE
      23             : 
      24             :    PRIVATE
      25             : 
      26             :    CHARACTER(len=*), PARAMETER, PRIVATE :: moduleN = 'semi_empirical_int_arrays'
      27             :    REAL(KINd=dp), PARAMETER, PUBLIC     :: rij_threshold = 0.00002_dp
      28             : 
      29             :    ! Mapping index for orbital ordering
      30             :    INTEGER, DIMENSION(9), PUBLIC        :: se_orbital_pointer = (/1, 4, 2, 3, 9, 8, 7, 6, 5/)
      31             :    INTEGER, DIMENSION(9), PUBLIC        :: se_map_alm = (/1, 3, 4, 2, 8, 6, 5, 7, 9/)
      32             : 
      33             :    ! Arrays to treat the invertion of the reference frame for the integrals
      34             :    ! Using the same indexing convention of the integrals
      35             :    INTEGER, PARAMETER, DIMENSION(2, 9), PUBLIC        :: map_x_to_z = RESHAPE((/ &
      36             :                                                                               1, 0, & ! s    <-> s
      37             :                                                                               4, 0, & ! px   <-> pz
      38             :                                                                               3, 0, & ! py   <-> py
      39             :                                                                               2, 0, & ! pz   <-> px
      40             :                                                                               7, 5, & ! dx2  <-> SQR3/2*dz2 +    0.5*dx2
      41             :                                                                               6, 0, & ! dzx  <-> dzx
      42             :                                                                               7, 5, & ! dz2  <->   -0.5*dz2 + SQR3/2*dx2
      43             :                                                                               9, 0, & ! dzy  <-> dxy
      44             :                                                                               8, 0 & ! dxy  <-> dzy
      45             :                                                                               /), (/2, 9/))
      46             :    REAL(KIND=dp), PARAMETER, DIMENSION(2, 9), PUBLIC  :: fac_x_to_z = RESHAPE((/ &
      47             :                                                                               1.0_dp, 0.0_dp, &
      48             :                                                                               1.0_dp, 0.0_dp, &
      49             :                                                                               1.0_dp, 0.0_dp, &
      50             :                                                                               1.0_dp, 0.0_dp, &
      51             :                                                                               0.8660254037844386_dp, 0.5_dp, &
      52             :                                                                               1.0_dp, 0.0_dp, &
      53             :                                                                               -0.5_dp, 0.8660254037844386_dp, &
      54             :                                                                               1.0_dp, 0.0_dp, &
      55             :                                                                               1.0_dp, 0.0_dp &
      56             :                                                                               /), (/2, 9/))
      57             : 
      58             :    ! Clm coefficients for d-orbitals:  see  Table [1] and [2] of TCA
      59             :    REAL(KIND=dp), DIMENSION(45, 0:2, -2:2), PUBLIC :: clm_d
      60             :    ! Clm coefficients for sp-orbitals: see original paper TCA77
      61             :    INTEGER, DIMENSION(45, 0:2, -2:2), PUBLIC :: clm_sp
      62             :    ! alm coefficients: see Laino and Hutter (periodic SE)
      63             :    REAL(KIND=dp), DIMENSION(45, 0:2, -2:2), PUBLIC :: alm
      64             : 
      65             :    ! These values are absolutely arbitrary and are used only for a proper
      66             :    ! tag of the integrals
      67             :    INTEGER, PARAMETER, PUBLIC :: &
      68             :       CLMz = 10, CLMp = 11, CLMzz = 12, CLMzp = 13, CLMyy = 14, CLMxy = 15, CLMxx = 16
      69             : 
      70             :    ! Indexes for diagonal storage of ij and kl multipoles
      71             :    INTEGER, DIMENSION(9, 9), PUBLIC                 :: indexa, indexb
      72             : 
      73             :    ! Type of integral for 2electron 2centers integrals
      74             :    INTEGER, DIMENSION(45), PARAMETER, PUBLIC       :: int2c_type = (/ &
      75             :                                                       1, 2, 3, 2, 3, 3, 2, 3, 3, 3, 4, 5, 5, 5, 6, 4, 5, 5, 5, &
      76             :                                                       6, 6, 4, 5, 5, 5, 6, 6, 6, 4, 5, 5, 5, 6, 6, 6, 6, 4, 5, &
      77             :                                                       5, 5, 6, 6, 6, 6, 6/)
      78             : 
      79             :    ! Mappinf of shell index
      80             :    INTEGER, DIMENSION(9), PARAMETER, PUBLIC        :: l_index = (/ &
      81             :                                                       0, 1, 1, 1, 2, 2, 2, 2, 2/)
      82             : 
      83             :    ! Index for <ij|kl>
      84             :    INTEGER, DIMENSION(45, 45), PUBLIC             :: ijkl_ind
      85             : 
      86             :    ! Symmetry index for <ij|kl>
      87             :    INTEGER, DIMENSION(491), PUBLIC                :: ijkl_sym
      88             : 
      89             :    ! Index for integral rotations
      90             :    INTEGER, DIMENSION(3, 3), PUBLIC               :: indpp
      91             :    INTEGER, DIMENSION(5, 3), PUBLIC               :: inddp
      92             :    INTEGER, DIMENSION(5, 5), PUBLIC               :: inddd
      93             : 
      94             :    ! Indexes use for the construction of the one-center two-electron integrals
      95             :    INTEGER, DIMENSION(243), PUBLIC ::  int_ij = (/ &
      96             :                                       1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, &
      97             :                                       5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, &
      98             :                                       10, 10, 10, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 14, 14, 14, 15, &
      99             :                                       15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 17, 17, 17, 17, 17, 18, 18, 18, 19, &
     100             :                                       19, 19, 19, 19, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, &
     101             :                                       22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 25, 25, 25, 25, 26, 26, &
     102             :                                       26, 26, 26, 26, 27, 27, 27, 27, 27, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29, &
     103             :                                       29, 30, 30, 30, 31, 31, 31, 31, 31, 32, 32, 32, 32, 32, 33, 33, 33, 33, 33, 34, 34, 34, 34, &
     104             :                                       35, 35, 35, 35, 35, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 37, 37, 37, 37, 38, 38, &
     105             :                                       38, 38, 38, 39, 39, 39, 39, 39, 40, 40, 40, 41, 42, 42, 42, 42, 42, 43, 43, 43, 43, 44, 44, &
     106             :                                       44, 44, 44, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45/)
     107             :    INTEGER, DIMENSION(243), PUBLIC ::  int_kl = (/ &
     108             :                                       15, 21, 28, 36, 45, 12, 19, 23, 39, 11, 15, 21, 22, 26, 28, 36, 45, 13, 24, 32, 38, 34, 37, &
     109             :                                       43, 11, 15, 21, 22, 26, 28, 36, 45, 17, 25, 31, 16, 20, 27, 44, 29, 33, 35, 42, 15, 21, 22, &
     110             :                                       28, 36, 45, 3, 6, 11, 21, 26, 36, 2, 12, 19, 23, 39, 4, 13, 24, 32, 38, 14, 17, 31, 1, &
     111             :                                       3, 6, 10, 15, 21, 22, 28, 36, 45, 8, 16, 20, 27, 44, 7, 14, 17, 25, 31, 18, 30, 40, 2, &
     112             :                                       12, 19, 23, 39, 8, 16, 20, 27, 44, 1, 3, 6, 10, 11, 15, 21, 22, 26, 28, 36, 45, 3, 6, &
     113             :                                       10, 15, 21, 22, 28, 36, 45, 2, 12, 19, 23, 39, 4, 13, 24, 32, 38, 7, 17, 25, 31, 3, 6, &
     114             :                                       11, 21, 26, 36, 8, 16, 20, 27, 44, 1, 3, 6, 10, 15, 21, 22, 28, 36, 45, 9, 29, 33, 35, &
     115             :                                       42, 18, 30, 40, 7, 14, 17, 25, 31, 4, 13, 24, 32, 38, 9, 29, 33, 35, 42, 5, 34, 37, 43, &
     116             :                                       9, 29, 33, 35, 42, 1, 3, 6, 10, 11, 15, 21, 22, 26, 28, 36, 45, 5, 34, 37, 43, 4, 13, &
     117             :                                       24, 32, 38, 2, 12, 19, 23, 39, 18, 30, 40, 41, 9, 29, 33, 35, 42, 5, 34, 37, 43, 8, 16, &
     118             :                                       20, 27, 44, 1, 3, 6, 10, 15, 21, 22, 28, 36, 45/)
     119             :    INTEGER, DIMENSION(243), PUBLIC :: int_onec2el = (/ &
     120             :                                       1, 1, 1, 1, 1, 3, 3, 8, 3, 9, 6, 6, 12, 14, 13, 7, 6, 15, 8, 3, 3, 11, 9, &
     121             :                                       14, 17, 6, 7, 12, 18, 13, 6, 6, 3, 2, 3, 9, 11, 10, 11, 9, 16, 10, 11, 7, 6, 4, &
     122             :                                       5, 6, 7, 9, 17, 19, 32, 22, 40, 3, 33, 34, 27, 46, 15, 33, 28, 41, 47, 35, 35, 42, 1, &
     123             :                                       6, 6, 7, 29, 38, 22, 31, 38, 51, 9, 19, 32, 21, 32, 3, 35, 33, 24, 34, 35, 35, 35, 3, &
     124             :                                       34, 33, 26, 34, 11, 32, 44, 37, 49, 1, 6, 7, 6, 32, 38, 29, 21, 39, 30, 38, 38, 12, 12, &
     125             :                                       4, 22, 21, 19, 20, 21, 22, 8, 27, 26, 25, 27, 8, 28, 25, 26, 27, 2, 24, 23, 24, 14, 18, &
     126             :                                       22, 39, 48, 45, 10, 21, 37, 36, 37, 1, 13, 13, 5, 31, 30, 20, 29, 30, 31, 9, 19, 40, 21, &
     127             :                                       32, 35, 35, 35, 3, 42, 34, 24, 33, 3, 41, 26, 33, 34, 16, 40, 44, 43, 50, 11, 44, 32, 39, &
     128             :                                       10, 21, 43, 36, 37, 1, 7, 6, 6, 40, 38, 38, 21, 45, 30, 29, 38, 9, 32, 19, 22, 3, 47, &
     129             :                                       27, 34, 33, 3, 46, 34, 27, 33, 35, 35, 35, 52, 11, 32, 50, 37, 44, 14, 39, 22, 48, 11, 32, &
     130             :                                       49, 37, 44, 1, 6, 6, 7, 51, 38, 22, 31, 38, 29/)
     131             : 
     132             :    PUBLIC :: init_se_intd_array
     133             : 
     134             : CONTAINS
     135             : ! **************************************************************************************************
     136             : !> \brief  Initialize all arrays used for the evaluation of the integrals
     137             : !>
     138             : !> \date   04.2008 [tlaino]
     139             : !> \author Teodoro Laino [tlaino] - University of Zurich
     140             : ! **************************************************************************************************
     141         998 :    SUBROUTINE init_se_intd_array()
     142             : 
     143         998 :       CALL setup_index_array()
     144         998 :       CALL setup_indrot_array()
     145         998 :       CALL setup_clm_array()
     146         998 :       CALL setup_ijkl_array()
     147             : 
     148         998 :    END SUBROUTINE init_se_intd_array
     149             : 
     150             : ! **************************************************************************************************
     151             : !> \brief Fills in array for the diagonal storage of the ij and kl multipoles term
     152             : !>
     153             : !> \date   03.2008 [tlaino]
     154             : !> \author Teodoro Laino [tlaino] - University of Zurich
     155             : ! **************************************************************************************************
     156         998 :    SUBROUTINE setup_index_array()
     157             : 
     158             :       INTEGER                                            :: i, j
     159             : 
     160        9980 :       DO i = 1, 9
     161       54890 :          DO j = 1, i
     162             :             ! indexa:
     163             :             !           s   pz   px   py  dz2  dzx  dzy dx2-y2 dxy
     164             :             !      s    1    2    3    4    5    6    7    8    9
     165             :             !      pz   2   10   11   12   13   14   15   16   17
     166             :             !      px   3   11   18   19   20   21   22   23   24
     167             :             !      py   4   12   19   25   26   27   28   29   30
     168             :             !     dz2   5   13   20   26   31   32   33   34   35
     169             :             !     dzx   6   14   21   27   32   36   37   38   39
     170             :             !     dzy   7   15   22   28   33   37   40   41   42
     171             :             !  dx2-y2   8   16   23   29   34   38   41   43   44
     172             :             !     dxy   9   17   24   30   35   39   42   44   45
     173       44910 :             indexa(i, j) = (9*(j - 1)) - (j*(j - 1))/2 + i
     174       44910 :             indexa(j, i) = indexa(i, j)
     175             :             ! indexb:
     176             :             !           s   pz   px   py  dz2  dzx  dzy dx2-y2 dxy
     177             :             !      s    1    2    4    7   11   16   22   29   37
     178             :             !      pz   2    3    5    8   12   17   23   30   38
     179             :             !      px   4    5    6    9   13   18   24   31   39
     180             :             !      py   7    8    9   10   14   19   25   32   40
     181             :             !     dz2  11   12   13   14   15   20   26   33   41
     182             :             !     dzx  16   17   18   19   20   21   27   34   42
     183             :             !     dzy  22   23   24   25   26   27   28   35   43
     184             :             !  dx2-y2  29   30   31   32   33   34   35   36   44
     185             :             !     dxy  37   38   39   40   41   42   43   44   45
     186       44910 :             indexb(i, j) = (i*(i - 1))/2 + j
     187       53892 :             indexb(j, i) = indexb(i, j)
     188             :          END DO
     189             :       END DO
     190         998 :    END SUBROUTINE setup_index_array
     191             : 
     192             : ! **************************************************************************************************
     193             : !> \brief Fills in array for the rotation of the integrals
     194             : !>
     195             : !> \date   04.2008 [tlaino]
     196             : !> \author Teodoro Laino [tlaino] - University of Zurich
     197             : ! **************************************************************************************************
     198         998 :    SUBROUTINE setup_indrot_array()
     199             : 
     200             : ! Setup indexes for integral rotations
     201             : ! INDPP
     202             : 
     203         998 :       indpp(1, 1) = 1
     204         998 :       indpp(2, 1) = 4
     205         998 :       indpp(3, 1) = 5
     206         998 :       indpp(1, 2) = 4
     207         998 :       indpp(2, 2) = 2
     208         998 :       indpp(3, 2) = 6
     209         998 :       indpp(1, 3) = 5
     210         998 :       indpp(2, 3) = 6
     211         998 :       indpp(3, 3) = 3
     212             :       ! INDDP
     213         998 :       inddp(1, 1) = 1
     214         998 :       inddp(2, 1) = 4
     215         998 :       inddp(3, 1) = 7
     216         998 :       inddp(4, 1) = 10
     217         998 :       inddp(5, 1) = 13
     218         998 :       inddp(1, 2) = 2
     219         998 :       inddp(2, 2) = 5
     220         998 :       inddp(3, 2) = 8
     221         998 :       inddp(4, 2) = 11
     222         998 :       inddp(5, 2) = 14
     223         998 :       inddp(1, 3) = 3
     224         998 :       inddp(2, 3) = 6
     225         998 :       inddp(3, 3) = 9
     226         998 :       inddp(4, 3) = 12
     227         998 :       inddp(5, 3) = 15
     228             :       ! INDDD
     229         998 :       inddd(1, 1) = 1
     230         998 :       inddd(2, 1) = 6
     231         998 :       inddd(3, 1) = 7
     232         998 :       inddd(4, 1) = 9
     233         998 :       inddd(5, 1) = 12
     234         998 :       inddd(1, 2) = 6
     235         998 :       inddd(2, 2) = 2
     236         998 :       inddd(3, 2) = 8
     237         998 :       inddd(4, 2) = 10
     238         998 :       inddd(5, 2) = 13
     239         998 :       inddd(1, 3) = 7
     240         998 :       inddd(2, 3) = 8
     241         998 :       inddd(3, 3) = 3
     242         998 :       inddd(4, 3) = 11
     243         998 :       inddd(5, 3) = 14
     244         998 :       inddd(1, 4) = 9
     245         998 :       inddd(2, 4) = 10
     246         998 :       inddd(3, 4) = 11
     247         998 :       inddd(4, 4) = 4
     248         998 :       inddd(5, 4) = 15
     249         998 :       inddd(1, 5) = 12
     250         998 :       inddd(2, 5) = 13
     251         998 :       inddd(3, 5) = 14
     252         998 :       inddd(4, 5) = 15
     253         998 :       inddd(5, 5) = 5
     254         998 :    END SUBROUTINE setup_indrot_array
     255             : 
     256             : ! **************************************************************************************************
     257             : !> \brief Fills in Clm coefficients (see Table [2] of TCA)
     258             : !>
     259             : !> \date   03.2008 [tlaino]
     260             : !> \author Teodoro Laino [tlaino] - University of Zurich
     261             : ! **************************************************************************************************
     262         998 :    SUBROUTINE setup_clm_array()
     263             : 
     264             :       INTEGER                                            :: CLM1, CLM1m
     265             :       REAL(KIND=dp) :: ALM1, ALMs15_49, ALMs15_49m, ALMs15m, ALMs20_49, ALMs20_49m, ALMs35, &
     266             :          ALMs35m, ALMs45, ALMs5_49, ALMs5_49m, CLM23, CLM23m, CLM43, CLM43m, CLMs13, CLMs13m, &
     267             :          CLMs43, CLMs43m
     268             : 
     269         998 :       CLM1 = 1
     270         998 :       CLM1m = -1
     271         998 :       CLMs13 = SQRT(1.0_dp/3.0_dp)
     272         998 :       CLMs13m = -SQRT(1.0_dp/3.0_dp)
     273         998 :       CLM23 = 2.0_dp/3.0_dp
     274         998 :       CLM23m = -2.0_dp/3.0_dp
     275         998 :       CLM43 = 4.0_dp/3.0_dp
     276         998 :       CLM43m = -4.0_dp/3.0_dp
     277         998 :       CLMs43 = SQRT(4.0_dp/3.0_dp)
     278         998 :       CLMs43m = -SQRT(4.0_dp/3.0_dp)
     279         998 :       ALM1 = 1.0_dp
     280         998 :       ALMs45 = SQRT(4.0_dp/5.0_dp)
     281         998 :       ALMs35 = SQRT(3.0_dp/5.0_dp)
     282         998 :       ALMs35m = -ALMs35
     283         998 :       ALMs15m = -SQRT(1.0_dp/5.0_dp)
     284         998 :       ALMs20_49 = SQRT(20.0_dp/49.0_dp)
     285         998 :       ALMs20_49m = -ALMs20_49
     286         998 :       ALMs5_49 = SQRT(5.0_dp/49.0_dp)
     287         998 :       ALMs5_49m = -ALMs5_49
     288         998 :       ALMs15_49 = SQRT(15.0_dp/49.0_dp)
     289         998 :       ALMs15_49m = -ALMs15_49
     290             : 
     291             :       ! Notation (1) s
     292             :       !          (2) pz = p_sigma             (5) d_sigma           = dz2  (8) d_delta               = dx2-y2
     293             :       !          (3) px = p_pi                (6) d_pi              = dzx  (9) d_{\overline{delta}}  = dxy
     294             :       !          (4) py = pi_{\overline{pi}}  (7) d_{\overline{pi}} = dzy
     295             : 
     296         998 :       clm_d = 0.0_dp
     297         998 :       clm_sp = 0
     298         998 :       alm = 0.0_dp
     299             :       ! Let's fill all element of table 1 with resulting multipole lesser than 2
     300             :       ! Important Note: the value of the clm_sp does not reflect any phyisical
     301             :       !                 rule for decomposing/summing multipoles. It's just a
     302             :       !                 computational trick to put some order where conceptual mess
     303             :       !                 has been created..
     304             :       ! s s
     305         998 :       clm_d(1, 0, 0) = CLM1
     306         998 :       clm_sp(1, 0, 0) = CLM1
     307         998 :       alm(1, 0, 0) = ALM1
     308             :       ! s pz
     309         998 :       clm_d(2, 1, 0) = CLM1
     310         998 :       clm_sp(2, 1, 0) = CLMz
     311         998 :       alm(2, 1, 0) = ALM1
     312             :       ! s px
     313         998 :       clm_d(3, 1, 1) = CLM1
     314         998 :       clm_sp(3, 1, 1) = CLMp
     315         998 :       alm(3, 1, 1) = ALM1
     316             :       ! s py
     317         998 :       clm_d(4, 1, -1) = CLM1
     318         998 :       clm_sp(4, 1, -1) = CLMp
     319         998 :       alm(4, 1, -1) = ALM1
     320             :       ! s dz2
     321         998 :       clm_d(5, 2, 0) = CLMs43
     322         998 :       alm(5, 2, 0) = ALM1
     323             :       ! s dzx
     324         998 :       clm_d(6, 2, 1) = CLM1
     325         998 :       alm(6, 2, 1) = ALM1
     326             :       ! s dzy
     327         998 :       clm_d(7, 2, -1) = CLM1
     328         998 :       alm(7, 2, -1) = ALM1
     329             :       ! s dx2-y2
     330         998 :       clm_d(8, 2, 2) = CLM1
     331         998 :       alm(8, 2, 2) = ALM1
     332             :       ! s dxy
     333         998 :       clm_d(9, 2, -2) = CLM1
     334         998 :       alm(9, 2, -2) = ALM1
     335             :       ! pz pz
     336         998 :       clm_d(10, 0, 0) = CLM1
     337         998 :       clm_d(10, 2, 0) = CLM43
     338         998 :       clm_sp(10, 0, 0) = CLM1
     339         998 :       clm_sp(10, 2, 0) = CLMzz
     340         998 :       alm(10, 0, 0) = ALM1
     341         998 :       alm(10, 2, 0) = ALMs45
     342             :       ! pz px
     343         998 :       clm_d(11, 2, 1) = CLM1
     344         998 :       clm_sp(11, 2, 1) = CLMzp
     345         998 :       alm(11, 2, 1) = ALMs35
     346             :       ! pz py
     347         998 :       clm_d(12, 2, -1) = CLM1
     348         998 :       clm_sp(12, 2, -1) = CLMzp
     349         998 :       alm(12, 2, -1) = ALMs35
     350             :       ! pz dz2
     351         998 :       clm_d(13, 1, 0) = CLMs43
     352         998 :       alm(13, 1, 0) = ALMs45
     353             :       ! pz dzx
     354         998 :       clm_d(14, 1, 1) = CLM1
     355         998 :       alm(14, 1, 1) = ALMs35
     356             :       ! pz dzy
     357         998 :       clm_d(15, 1, -1) = CLM1
     358         998 :       alm(15, 1, -1) = ALMs35
     359             :       ! px px
     360         998 :       clm_d(18, 0, 0) = CLM1
     361         998 :       clm_d(18, 2, 0) = CLM23m
     362         998 :       clm_d(18, 2, 2) = CLM1
     363         998 :       clm_sp(18, 0, 0) = CLM1
     364         998 :       clm_sp(18, 2, 0) = CLMyy
     365         998 :       alm(18, 0, 0) = ALM1
     366         998 :       alm(18, 2, 0) = ALMs15m
     367         998 :       alm(18, 2, 2) = ALMs35
     368             :       ! px py
     369         998 :       clm_d(19, 2, -2) = CLM1
     370         998 :       clm_sp(19, 2, -2) = CLMxy
     371         998 :       alm(19, 2, -2) = ALMs35
     372             :       ! px dz2
     373         998 :       clm_d(20, 1, 1) = CLMs13m
     374         998 :       alm(20, 1, 1) = ALMs15m
     375             :       ! px dzx
     376         998 :       clm_d(21, 1, 0) = CLM1
     377         998 :       alm(21, 1, 0) = ALMs35
     378             :       ! px dx2-y2
     379         998 :       clm_d(23, 1, 1) = CLM1
     380         998 :       alm(23, 1, 1) = ALMs35
     381             :       ! px dxy
     382         998 :       clm_d(24, 1, -1) = CLM1
     383         998 :       alm(24, 1, -1) = ALMs35
     384             :       ! py py
     385         998 :       clm_d(25, 0, 0) = CLM1
     386         998 :       clm_d(25, 2, 0) = CLM23m
     387         998 :       clm_d(25, 2, 2) = CLM1m
     388         998 :       clm_sp(25, 0, 0) = CLM1
     389         998 :       clm_sp(25, 2, 0) = CLMxx
     390         998 :       alm(25, 0, 0) = ALM1
     391         998 :       alm(25, 2, 0) = ALMs15m
     392         998 :       alm(25, 2, 2) = ALMs35m
     393             :       ! py dz2
     394         998 :       clm_d(26, 1, -1) = CLMs13m
     395         998 :       alm(26, 1, -1) = ALMs15m
     396             :       ! py dzy
     397         998 :       clm_d(28, 1, 0) = CLM1
     398         998 :       alm(28, 1, 0) = ALMs35
     399             :       ! py dx2-y2
     400         998 :       clm_d(29, 1, -1) = CLM1m
     401         998 :       alm(29, 1, -1) = ALMs35m
     402             :       ! py dxy
     403         998 :       clm_d(30, 1, 1) = CLM1
     404         998 :       alm(30, 1, 1) = ALMs35
     405             :       ! dz2 dz2
     406         998 :       clm_d(31, 0, 0) = CLM1
     407         998 :       clm_d(31, 2, 0) = CLM43
     408         998 :       alm(31, 0, 0) = ALM1
     409         998 :       alm(31, 2, 0) = ALMs20_49
     410             :       ! dz2 dzx
     411         998 :       clm_d(32, 2, 1) = CLMs13
     412         998 :       alm(32, 2, 1) = ALMs5_49
     413             :       ! dz2 dzy
     414         998 :       clm_d(33, 2, -1) = CLMs13
     415         998 :       alm(33, 2, -1) = ALMs5_49
     416             :       ! dz2 dx2-y2
     417         998 :       clm_d(34, 2, 2) = CLMs43m
     418         998 :       alm(34, 2, 2) = ALMs20_49m
     419             :       ! dz2 dxy
     420         998 :       clm_d(35, 2, -2) = CLMs43m
     421         998 :       alm(35, 2, -2) = ALMs20_49m
     422             :       ! dzx dzx
     423         998 :       clm_d(36, 0, 0) = CLM1
     424         998 :       clm_d(36, 2, 0) = CLM23
     425         998 :       clm_d(36, 2, 2) = CLM1
     426         998 :       alm(36, 0, 0) = ALM1
     427         998 :       alm(36, 2, 0) = ALMs5_49
     428         998 :       alm(36, 2, 2) = ALMs15_49
     429             :       ! dzx dzy
     430         998 :       clm_d(37, 2, -2) = CLM1
     431         998 :       alm(37, 2, -2) = ALMs15_49m
     432             :       ! dzx dxy-y2
     433         998 :       clm_d(38, 2, 1) = CLM1
     434         998 :       alm(38, 2, 1) = ALMs15_49
     435             :       ! dzx dxy
     436         998 :       clm_d(39, 2, -1) = CLM1
     437         998 :       alm(38, 2, -1) = ALMs15_49
     438             :       ! dzy dzy
     439         998 :       clm_d(40, 0, 0) = CLM1
     440         998 :       clm_d(40, 2, 0) = CLM23
     441         998 :       clm_d(40, 2, 2) = CLM1m
     442         998 :       alm(40, 0, 0) = ALM1
     443         998 :       alm(40, 2, 0) = ALMs5_49
     444         998 :       alm(40, 2, 2) = ALMs5_49m
     445             :       ! dzy dx2-y2
     446         998 :       clm_d(41, 2, -1) = CLM1m
     447         998 :       alm(41, 2, -1) = ALMs15_49m
     448             :       ! dzy dxy
     449         998 :       clm_d(42, 2, 1) = CLM1
     450         998 :       alm(42, 2, 1) = ALMs15_49
     451             :       ! dx2-y2 dx2-y2
     452         998 :       clm_d(43, 0, 0) = CLM1
     453         998 :       clm_d(43, 2, 0) = CLM43m
     454         998 :       alm(43, 0, 0) = ALM1
     455         998 :       alm(43, 2, 0) = ALMs20_49m
     456             :       ! dxy dxy
     457         998 :       clm_d(45, 0, 0) = CLM1
     458         998 :       clm_d(45, 2, 0) = CLM43m
     459         998 :       alm(45, 0, 0) = ALM1
     460         998 :       alm(45, 2, 0) = ALMs20_49m
     461         998 :    END SUBROUTINE setup_clm_array
     462             : 
     463             : ! **************************************************************************************************
     464             : !> \brief Fills in the index number for the <ij|kl> integral as well as the
     465             : !>        symmetry index
     466             : !>
     467             : !> \date   03.2008 [tlaino]
     468             : !> \author Teodoro Laino [tlaino] - University of Zurich
     469             : ! **************************************************************************************************
     470         998 :    SUBROUTINE setup_ijkl_array()
     471             : 
     472             : ! Address unique indexes (excluding those related by rotations)
     473             : ! Indexes according:
     474             : !           s   pz   px   py  dz2  dzx  dzy dx2-y2 dxy
     475             : !      s    1    2    3    4    5    6    7    8    9
     476             : !      pz   2   10   11   12   13   14   15   16   17
     477             : !      px   3   11   18   19   20   21   22   23   24
     478             : !      py   4   12   19   25   26   27   28   29   30
     479             : !     dz2   5   13   20   26   31   32   33   34   35
     480             : !     dzx   6   14   21   27   32   36   37   38   39
     481             : !     dzy   7   15   22   28   33   37   40   41   42
     482             : !  dx2-y2   8   16   23   29   34   38   41   43   44
     483             : !     dxy   9   17   24   30   35   39   42   44   45
     484             : ! ################  Zero the Arrays #######################
     485             : 
     486         998 :       ijkl_ind = 0
     487         998 :       ijkl_sym = 0
     488             :       ! ################      s       s   #######################
     489             :       !                       s       s   -        s       s
     490         998 :       ijkl_ind(1, 1) = 1
     491             :       !                       s       s   -       pz       s
     492         998 :       ijkl_ind(1, 2) = 2
     493             :       !                       s       s   -       pz      pz
     494         998 :       ijkl_ind(1, 10) = 3
     495             :       !                       s       s   -       px      px
     496         998 :       ijkl_ind(1, 18) = 4
     497             :       !                       s       s   -       py      py
     498         998 :       ijkl_ind(1, 25) = 5
     499         998 :       ijkl_sym(5) = 4
     500             :       !                       s       s   -      dz2       s
     501         998 :       ijkl_ind(1, 5) = 35
     502             :       !                       s       s   -      dz2      pz
     503         998 :       ijkl_ind(1, 13) = 36
     504             :       !                       s       s   -      dz2     dz2
     505         998 :       ijkl_ind(1, 31) = 37
     506             :       !                       s       s   -      dzx      px
     507         998 :       ijkl_ind(1, 21) = 38
     508             :       !                       s       s   -      dzx     dzx
     509         998 :       ijkl_ind(1, 36) = 39
     510             :       !                       s       s   -      dzy      py
     511         998 :       ijkl_ind(1, 28) = 40
     512         998 :       ijkl_sym(40) = 38
     513             :       !                       s       s   -      dzy     dzy
     514         998 :       ijkl_ind(1, 40) = 41
     515         998 :       ijkl_sym(41) = 39
     516             :       !                       s       s   -   dx2-y2  dx2-y2
     517         998 :       ijkl_ind(1, 43) = 42
     518             :       !                       s       s   -      dxy     dxy
     519         998 :       ijkl_ind(1, 45) = 43
     520         998 :       ijkl_sym(43) = 42
     521             :       ! ################     pz       s   #######################
     522             :       !                      pz       s   -        s       s
     523         998 :       ijkl_ind(2, 1) = 6
     524             :       !                      pz       s   -       pz       s
     525         998 :       ijkl_ind(2, 2) = 7
     526             :       !                      pz       s   -       pz      pz
     527         998 :       ijkl_ind(2, 10) = 8
     528             :       !                      pz       s   -       px      px
     529         998 :       ijkl_ind(2, 18) = 9
     530             :       !                      pz       s   -       py      py
     531         998 :       ijkl_ind(2, 25) = 10
     532         998 :       ijkl_sym(10) = 9
     533             :       !                      pz       s   -      dz2       s
     534         998 :       ijkl_ind(2, 5) = 44
     535             :       !                      pz       s   -      dz2      pz
     536         998 :       ijkl_ind(2, 13) = 45
     537             :       !                      pz       s   -      dz2     dz2
     538         998 :       ijkl_ind(2, 31) = 46
     539             :       !                      pz       s   -      dzx      px
     540         998 :       ijkl_ind(2, 21) = 47
     541             :       !                      pz       s   -      dzx     dzx
     542         998 :       ijkl_ind(2, 36) = 48
     543             :       !                      pz       s   -      dzy      py
     544         998 :       ijkl_ind(2, 28) = 49
     545         998 :       ijkl_sym(49) = 47
     546             :       !                      pz       s   -      dzy     dzy
     547         998 :       ijkl_ind(2, 40) = 50
     548         998 :       ijkl_sym(50) = 48
     549             :       !                      pz       s   -   dx2-y2  dx2-y2
     550         998 :       ijkl_ind(2, 43) = 51
     551             :       !                      pz       s   -      dxy     dxy
     552         998 :       ijkl_ind(2, 45) = 52
     553         998 :       ijkl_sym(52) = 51
     554             :       ! ################     pz      pz   #######################
     555             :       !                      pz      pz   -        s       s
     556         998 :       ijkl_ind(10, 1) = 11
     557             :       !                      pz      pz   -       pz       s
     558         998 :       ijkl_ind(10, 2) = 12
     559             :       !                      pz      pz   -       pz      pz
     560         998 :       ijkl_ind(10, 10) = 13
     561             :       !                      pz      pz   -       px      px
     562         998 :       ijkl_ind(10, 18) = 14
     563             :       !                      pz      pz   -       py      py
     564         998 :       ijkl_ind(10, 25) = 15
     565         998 :       ijkl_sym(15) = 14
     566             :       !                      pz      pz   -      dz2       s
     567         998 :       ijkl_ind(10, 5) = 53
     568             :       !                      pz      pz   -      dz2      pz
     569         998 :       ijkl_ind(10, 13) = 54
     570             :       !                      pz      pz   -      dz2     dz2
     571         998 :       ijkl_ind(10, 31) = 55
     572             :       !                      pz      pz   -      dzx      px
     573         998 :       ijkl_ind(10, 21) = 56
     574             :       !                      pz      pz   -      dzx     dzx
     575         998 :       ijkl_ind(10, 36) = 57
     576             :       !                      pz      pz   -      dzy      py
     577         998 :       ijkl_ind(10, 28) = 58
     578         998 :       ijkl_sym(58) = 56
     579             :       !                      pz      pz   -      dzy     dzy
     580         998 :       ijkl_ind(10, 40) = 59
     581         998 :       ijkl_sym(59) = 57
     582             :       !                      pz      pz   -   dx2-y2  dx2-y2
     583         998 :       ijkl_ind(10, 43) = 60
     584             :       !                      pz      pz   -      dxy     dxy
     585         998 :       ijkl_ind(10, 45) = 61
     586         998 :       ijkl_sym(61) = 60
     587             :       ! ################     px       s   #######################
     588             :       !                      px       s   -       px       s
     589         998 :       ijkl_ind(3, 3) = 16
     590             :       !                      px       s   -       px      pz
     591         998 :       ijkl_ind(3, 11) = 17
     592             :       !                      px       s   -      dz2      px
     593         998 :       ijkl_ind(3, 20) = 62
     594             :       !                      px       s   -      dzx       s
     595         998 :       ijkl_ind(3, 6) = 63
     596             :       !                      px       s   -      dzx      pz
     597         998 :       ijkl_ind(3, 14) = 64
     598             :       !                      px       s   -      dzx     dz2
     599         998 :       ijkl_ind(3, 32) = 65
     600             :       !                      px       s   -   dx2-y2      px
     601         998 :       ijkl_ind(3, 23) = 66
     602             :       !                      px       s   -   dx2-y2     dzx
     603         998 :       ijkl_ind(3, 38) = 67
     604             :       !                      px       s   -      dxy      py
     605         998 :       ijkl_ind(3, 30) = 68
     606         998 :       ijkl_sym(68) = 66
     607             :       !                      px       s   -      dxy     dzy
     608         998 :       ijkl_ind(3, 42) = 69
     609         998 :       ijkl_sym(69) = 67
     610             :       ! ################     px      pz   #######################
     611             :       !                      px      pz   -       px       s
     612         998 :       ijkl_ind(11, 3) = 18
     613             :       !                      px      pz   -       px      pz
     614         998 :       ijkl_ind(11, 11) = 19
     615             :       !                      px      pz   -      dz2      px
     616         998 :       ijkl_ind(11, 20) = 70
     617             :       !                      px      pz   -      dzx       s
     618         998 :       ijkl_ind(11, 6) = 71
     619             :       !                      px      pz   -      dzx      pz
     620         998 :       ijkl_ind(11, 14) = 72
     621             :       !                      px      pz   -      dzx     dz2
     622         998 :       ijkl_ind(11, 32) = 73
     623             :       !                      px      pz   -   dx2-y2      px
     624         998 :       ijkl_ind(11, 23) = 74
     625             :       !                      px      pz   -   dx2-y2     dzx
     626         998 :       ijkl_ind(11, 38) = 75
     627             :       !                      px      pz   -      dxy      py
     628         998 :       ijkl_ind(11, 30) = 76
     629         998 :       ijkl_sym(76) = 74
     630             :       !                      px      pz   -      dxy     dzy
     631         998 :       ijkl_ind(11, 42) = 77
     632         998 :       ijkl_sym(77) = 75
     633             :       ! ################     px      px   #######################
     634             :       !                      px      px   -        s       s
     635         998 :       ijkl_ind(18, 1) = 20
     636             :       !                      px      px   -       pz       s
     637         998 :       ijkl_ind(18, 2) = 21
     638             :       !                      px      px   -       pz      pz
     639         998 :       ijkl_ind(18, 10) = 22
     640             :       !                      px      px   -       px      px
     641         998 :       ijkl_ind(18, 18) = 23
     642             :       !                      px      px   -       py      py
     643         998 :       ijkl_ind(18, 25) = 24
     644             :       !                      px      px   -      dz2       s
     645         998 :       ijkl_ind(18, 5) = 78
     646             :       !                      px      px   -      dz2      pz
     647         998 :       ijkl_ind(18, 13) = 79
     648             :       !                      px      px   -      dz2     dz2
     649         998 :       ijkl_ind(18, 31) = 80
     650             :       !                      px      px   -      dzx      px
     651         998 :       ijkl_ind(18, 21) = 81
     652             :       !                      px      px   -      dzx     dzx
     653         998 :       ijkl_ind(18, 36) = 82
     654             :       !                      px      px   -      dzy      py
     655         998 :       ijkl_ind(18, 28) = 83
     656             :       !                      px      px   -      dzy     dzy
     657         998 :       ijkl_ind(18, 40) = 84
     658             :       !                      px      px   -   dx2-y2       s
     659         998 :       ijkl_ind(18, 8) = 85
     660             :       !                      px      px   -   dx2-y2      pz
     661         998 :       ijkl_ind(18, 16) = 86
     662             :       !                      px      px   -   dx2-y2     dz2
     663         998 :       ijkl_ind(18, 34) = 87
     664             :       !                      px      px   -   dx2-y2  dx2-y2
     665         998 :       ijkl_ind(18, 43) = 88
     666             :       !                      px      px   -      dxy     dxy
     667         998 :       ijkl_ind(18, 45) = 89
     668         998 :       ijkl_sym(89) = 88
     669             :       ! ################     py       s   #######################
     670             :       !                      py       s   -       py       s
     671         998 :       ijkl_ind(4, 4) = 25
     672         998 :       ijkl_sym(25) = 16
     673             :       !                      py       s   -       py      pz
     674         998 :       ijkl_ind(4, 12) = 26
     675         998 :       ijkl_sym(26) = 17
     676             :       !                      py       s   -      dz2      py
     677         998 :       ijkl_ind(4, 26) = 90
     678         998 :       ijkl_sym(90) = 62
     679             :       !                      py       s   -      dzy       s
     680         998 :       ijkl_ind(4, 7) = 91
     681         998 :       ijkl_sym(91) = 63
     682             :       !                      py       s   -      dzy      pz
     683         998 :       ijkl_ind(4, 15) = 92
     684         998 :       ijkl_sym(92) = 64
     685             :       !                      py       s   -      dzy     dz2
     686         998 :       ijkl_ind(4, 33) = 93
     687         998 :       ijkl_sym(93) = 65
     688             :       !                      py       s   -   dx2-y2      py
     689         998 :       ijkl_ind(4, 29) = 94
     690         998 :       ijkl_sym(94) = 66*(-1)
     691             :       !                      py       s   -   dx2-y2     dzy
     692         998 :       ijkl_ind(4, 41) = 95
     693         998 :       ijkl_sym(95) = 67*(-1)
     694             :       !                      py       s   -      dxy      px
     695         998 :       ijkl_ind(4, 24) = 96
     696         998 :       ijkl_sym(96) = 66
     697             :       !                      py       s   -      dxy     dzx
     698         998 :       ijkl_ind(4, 39) = 97
     699         998 :       ijkl_sym(97) = 67
     700             :       ! ################     py      pz   #######################
     701             :       !                      py      pz   -       py       s
     702         998 :       ijkl_ind(12, 4) = 27
     703         998 :       ijkl_sym(27) = 18
     704             :       !                      py      pz   -       py      pz
     705         998 :       ijkl_ind(12, 12) = 28
     706         998 :       ijkl_sym(28) = 19
     707             :       !                      py      pz   -      dzy       s
     708         998 :       ijkl_ind(12, 26) = 98
     709         998 :       ijkl_sym(98) = 70
     710             :       !                      py      pz   -      dzy      pz
     711         998 :       ijkl_ind(12, 7) = 99
     712         998 :       ijkl_sym(99) = 71
     713             :       !                      py      pz   -      dzy     dz2
     714         998 :       ijkl_ind(12, 15) = 100
     715         998 :       ijkl_sym(100) = 72
     716             :       !                      py      pz   -      dzy     dz2
     717         998 :       ijkl_ind(12, 33) = 101
     718         998 :       ijkl_sym(101) = 73
     719             :       !                      py      pz   -   dx2-y2      py
     720         998 :       ijkl_ind(12, 29) = 102
     721         998 :       ijkl_sym(102) = 74*(-1)
     722             :       !                      py      pz   -   dx2-y2     dzy
     723         998 :       ijkl_ind(12, 41) = 103
     724         998 :       ijkl_sym(103) = 75*(-1)
     725             :       !                      py      pz   -      dxy      px
     726         998 :       ijkl_ind(12, 24) = 104
     727         998 :       ijkl_sym(104) = 74
     728             :       !                      py      pz   -      dxy     dzx
     729         998 :       ijkl_ind(12, 39) = 105
     730         998 :       ijkl_sym(105) = 75
     731             :       ! ################     py      px   #######################
     732             :       !                      py      px   -       py      px
     733         998 :       ijkl_ind(19, 19) = 29
     734             :       !                      py      px   -      dzx      py
     735         998 :       ijkl_ind(19, 27) = 106
     736         998 :       ijkl_sym(106) = 86
     737             :       !                      py      px   -      dzy      px
     738         998 :       ijkl_ind(19, 22) = 107
     739         998 :       ijkl_sym(107) = 86
     740             :       !                      py      px   -      dzy     dzx
     741         998 :       ijkl_ind(19, 37) = 108
     742             :       !                      py      px   -      dxy       s
     743         998 :       ijkl_ind(19, 9) = 109
     744         998 :       ijkl_sym(109) = 85
     745             :       !                      py      px   -      dxy      pz
     746         998 :       ijkl_ind(19, 17) = 110
     747         998 :       ijkl_sym(110) = 86
     748             :       !                      py      px   -      dxy     dz2
     749         998 :       ijkl_ind(19, 35) = 111
     750         998 :       ijkl_sym(111) = 87
     751             :       ! ################     py      py   #######################
     752             :       !                      py      py   -        s       s
     753         998 :       ijkl_ind(25, 1) = 30
     754         998 :       ijkl_sym(30) = 20
     755             :       !                      py      py   -       pz       s
     756         998 :       ijkl_ind(25, 2) = 31
     757         998 :       ijkl_sym(31) = 21
     758             :       !                      py      py   -       pz      pz
     759         998 :       ijkl_ind(25, 10) = 32
     760         998 :       ijkl_sym(32) = 22
     761             :       !                      py      py   -       px      px
     762         998 :       ijkl_ind(25, 18) = 33
     763         998 :       ijkl_sym(33) = 24
     764             :       !                      py      py   -       py      py
     765         998 :       ijkl_ind(25, 25) = 34
     766         998 :       ijkl_sym(34) = 23
     767             :       !                      py      py   -      dz2       s
     768         998 :       ijkl_ind(25, 5) = 112
     769         998 :       ijkl_sym(112) = 78
     770             :       !                      py      py   -      dz2      pz
     771         998 :       ijkl_ind(25, 13) = 113
     772         998 :       ijkl_sym(113) = 79
     773             :       !                      py      py   -      dz2     dz2
     774         998 :       ijkl_ind(25, 31) = 114
     775         998 :       ijkl_sym(114) = 80
     776             :       !                      py      py   -      dzx      px
     777         998 :       ijkl_ind(25, 21) = 115
     778         998 :       ijkl_sym(115) = 83
     779             :       !                      py      py   -      dzx     dzx
     780         998 :       ijkl_ind(25, 36) = 116
     781         998 :       ijkl_sym(116) = 84
     782             :       !                      py      py   -      dzy      py
     783         998 :       ijkl_ind(25, 28) = 117
     784         998 :       ijkl_sym(117) = 81
     785             :       !                      py      py   -      dzy     dzy
     786         998 :       ijkl_ind(25, 40) = 118
     787         998 :       ijkl_sym(118) = 82
     788             :       !                      py      py   -   dx2-y2       s
     789         998 :       ijkl_ind(25, 8) = 119
     790         998 :       ijkl_sym(119) = 85*(-1)
     791             :       !                      py      py   -   dx2-y2      pz
     792         998 :       ijkl_ind(25, 16) = 120
     793         998 :       ijkl_sym(120) = 86*(-1)
     794             :       !                      py      py   -   dx2-y2     dz2
     795         998 :       ijkl_ind(25, 34) = 121
     796         998 :       ijkl_sym(121) = 87*(-1)
     797             :       !                      py      py   -   dx2-y2  dx2-y2
     798         998 :       ijkl_ind(25, 43) = 122
     799         998 :       ijkl_sym(122) = 88
     800             :       !                      py      py   -      dxy     dxy
     801         998 :       ijkl_ind(25, 45) = 123
     802         998 :       ijkl_sym(123) = 88
     803             :       ! ################    dz2     dz2   #######################
     804             :       !                     dz2       s   -        s       s
     805         998 :       ijkl_ind(5, 1) = 124
     806             :       !                     dz2       s   -       pz       s
     807         998 :       ijkl_ind(5, 2) = 125
     808             :       !                     dz2       s   -       pz      pz
     809         998 :       ijkl_ind(5, 10) = 126
     810             :       !                     dz2       s   -       px      px
     811         998 :       ijkl_ind(5, 18) = 127
     812             :       !                     dz2       s   -       py      py
     813         998 :       ijkl_ind(5, 25) = 128
     814         998 :       ijkl_sym(128) = 127
     815             :       !                     dz2       s   -      dz2       s
     816         998 :       ijkl_ind(5, 5) = 129
     817             :       !                     dz2       s   -      dz2      pz
     818         998 :       ijkl_ind(5, 13) = 130
     819             :       !                     dz2       s   -      dz2     dz2
     820         998 :       ijkl_ind(5, 31) = 131
     821             :       !                     dz2       s   -      dzx      px
     822         998 :       ijkl_ind(5, 21) = 132
     823             :       !                     dz2       s   -      dzx     dzx
     824         998 :       ijkl_ind(5, 36) = 133
     825             :       !                     dz2       s   -      dzy      py
     826         998 :       ijkl_ind(5, 28) = 134
     827         998 :       ijkl_sym(134) = 132
     828             :       !                     dz2       s   -      dzy     dzy
     829         998 :       ijkl_ind(5, 40) = 135
     830         998 :       ijkl_sym(135) = 133
     831             :       !                     dz2       s   -   dx2-y2  dx2-y2
     832         998 :       ijkl_ind(5, 43) = 136
     833             :       !                     dz2       s   -      dxy     dxy
     834         998 :       ijkl_ind(5, 45) = 137
     835         998 :       ijkl_sym(137) = 136
     836             :       ! ################    dz2      pz   #######################
     837             :       !                     dz2      pz   -        s       s
     838         998 :       ijkl_ind(13, 1) = 138
     839             :       !                     dz2      pz   -       pz       s
     840         998 :       ijkl_ind(13, 2) = 139
     841             :       !                     dz2      pz   -       pz      pz
     842         998 :       ijkl_ind(13, 10) = 140
     843             :       !                     dz2      pz   -       px      px
     844         998 :       ijkl_ind(13, 18) = 141
     845             :       !                     dz2      pz   -       py      py
     846         998 :       ijkl_ind(13, 25) = 142
     847         998 :       ijkl_sym(142) = 141
     848             :       !                     dz2      pz   -      dz2       s
     849         998 :       ijkl_ind(13, 5) = 143
     850             :       !                     dz2      pz   -      dz2      pz
     851         998 :       ijkl_ind(13, 13) = 144
     852             :       !                     dz2      pz   -      dz2     dz2
     853         998 :       ijkl_ind(13, 31) = 145
     854             :       !                     dz2      pz   -      dzx      px
     855         998 :       ijkl_ind(13, 21) = 146
     856             :       !                     dz2      pz   -      dzx     dzx
     857         998 :       ijkl_ind(13, 36) = 147
     858             :       !                     dz2      pz   -      dzy      py
     859         998 :       ijkl_ind(13, 28) = 148
     860         998 :       ijkl_sym(148) = 146
     861             :       !                     dz2      pz   -      dzy     dzy
     862         998 :       ijkl_ind(13, 40) = 149
     863         998 :       ijkl_sym(149) = 147
     864             :       !                     dz2      pz   -   dx2-y2  dx2-y2
     865         998 :       ijkl_ind(13, 43) = 150
     866             :       !                     dz2      pz   -      dxy     dxy
     867         998 :       ijkl_ind(13, 45) = 151
     868         998 :       ijkl_sym(151) = 150
     869             :       ! ################    dz2      px   #######################
     870             :       !                     dz2      px   -       px       s
     871         998 :       ijkl_ind(20, 3) = 152
     872             :       !                     dz2      px   -       px      pz
     873         998 :       ijkl_ind(20, 11) = 153
     874             :       !                     dz2      px   -      dz2      px
     875         998 :       ijkl_ind(20, 20) = 154
     876             :       !                     dz2      px   -      dzx       s
     877         998 :       ijkl_ind(20, 6) = 155
     878             :       !                     dz2      px   -      dzx      pz
     879         998 :       ijkl_ind(20, 14) = 156
     880             :       !                     dz2      px   -      dzx     dz2
     881         998 :       ijkl_ind(20, 32) = 157
     882             :       !                     dz2      px   -   dx2-y2      px
     883         998 :       ijkl_ind(20, 23) = 158
     884             :       !                     dz2      px   -   dx2-y2     dzx
     885         998 :       ijkl_ind(20, 38) = 159
     886             :       !                     dz2      px   -      dxy      py
     887         998 :       ijkl_ind(20, 30) = 160
     888         998 :       ijkl_sym(160) = 158
     889             :       !                     dz2      px   -      dxy     dxy
     890         998 :       ijkl_ind(20, 42) = 161
     891         998 :       ijkl_sym(161) = 159
     892             :       ! ################    dz2      py   #######################
     893             :       !                     dz2      py   -       py       s
     894         998 :       ijkl_ind(26, 4) = 162
     895         998 :       ijkl_sym(162) = 152
     896             :       !                     dz2      py   -       py      pz
     897         998 :       ijkl_ind(26, 12) = 163
     898         998 :       ijkl_sym(163) = 153
     899             :       !                     dz2      py   -      dz2      py
     900         998 :       ijkl_ind(26, 26) = 164
     901         998 :       ijkl_sym(164) = 154
     902             :       !                     dz2      py   -      dzy       s
     903         998 :       ijkl_ind(26, 7) = 165
     904         998 :       ijkl_sym(165) = 155
     905             :       !                     dz2      py   -      dzy      pz
     906         998 :       ijkl_ind(26, 15) = 166
     907         998 :       ijkl_sym(166) = 156
     908             :       !                     dz2      py   -      dzy     dz2
     909         998 :       ijkl_ind(26, 33) = 167
     910         998 :       ijkl_sym(167) = 157
     911             :       !                     dz2      py   -   dx2-y2      py
     912         998 :       ijkl_ind(26, 29) = 168
     913         998 :       ijkl_sym(168) = 158*(-1)
     914             :       !                     dz2      py   -   dx2-y2     dzy
     915         998 :       ijkl_ind(26, 41) = 169
     916         998 :       ijkl_sym(169) = 159*(-1)
     917             :       !                     dz2      py   -      dxy      px
     918         998 :       ijkl_ind(26, 24) = 170
     919         998 :       ijkl_sym(170) = 158
     920             :       !                     dz2      py   -      dxy     dzx
     921         998 :       ijkl_ind(26, 39) = 171
     922         998 :       ijkl_sym(171) = 159
     923             :       ! ################    dz2     dz2   #######################
     924             :       !                     dz2     dz2   -        s       s
     925         998 :       ijkl_ind(31, 1) = 172
     926             :       !                     dz2     dz2   -       pz       s
     927         998 :       ijkl_ind(31, 2) = 173
     928             :       !                     dz2     dz2   -       pz      pz
     929         998 :       ijkl_ind(31, 10) = 174
     930             :       !                     dz2     dz2   -       px      px
     931         998 :       ijkl_ind(31, 18) = 175
     932             :       !                     dz2     dz2   -       py      py
     933         998 :       ijkl_ind(31, 25) = 176
     934         998 :       ijkl_sym(176) = 175
     935             :       !                     dz2     dz2   -      dz2       s
     936         998 :       ijkl_ind(31, 5) = 177
     937             :       !                     dz2     dz2   -      dz2      pz
     938         998 :       ijkl_ind(31, 13) = 178
     939             :       !                     dz2     dz2   -      dz2     dz2
     940         998 :       ijkl_ind(31, 31) = 179
     941             :       !                     dz2     dz2   -      dzx      px
     942         998 :       ijkl_ind(31, 21) = 180
     943             :       !                     dz2     dz2   -      dzx     dzx
     944         998 :       ijkl_ind(31, 36) = 181
     945             :       !                     dz2     dz2   -      dzy      py
     946         998 :       ijkl_ind(31, 28) = 182
     947         998 :       ijkl_sym(182) = 180
     948             :       !                     dz2     dz2   -      dzy     dzy
     949         998 :       ijkl_ind(31, 40) = 183
     950         998 :       ijkl_sym(183) = 181
     951             :       !                     dz2     dz2   -   dx2-y2  dx2-y2
     952         998 :       ijkl_ind(31, 43) = 184
     953             :       !                     dz2     dz2   -      dxy     dxy
     954         998 :       ijkl_ind(31, 45) = 185
     955         998 :       ijkl_sym(185) = 184
     956             :       ! ################    dzx       s   #######################
     957             :       !                     dzx       s   -       px       s
     958         998 :       ijkl_ind(6, 3) = 186
     959             :       !                     dzx       s   -       px      pz
     960         998 :       ijkl_ind(6, 11) = 187
     961             :       !                     dzx       s   -      dz2      px
     962         998 :       ijkl_ind(6, 20) = 188
     963             :       !                     dzx       s   -      dzx       s
     964         998 :       ijkl_ind(6, 6) = 189
     965             :       !                     dzx       s   -      dzx      pz
     966         998 :       ijkl_ind(6, 14) = 190
     967             :       !                     dzx       s   -      dzx     dz2
     968         998 :       ijkl_ind(6, 32) = 191
     969             :       !                     dzx       s   -   dx2-y2      px
     970         998 :       ijkl_ind(6, 23) = 192
     971             :       !                     dzx       s   -   dx2-y2  dx2-y2
     972         998 :       ijkl_ind(6, 38) = 193
     973             :       !                     dzx       s   -      dxy      py
     974         998 :       ijkl_ind(6, 30) = 194
     975         998 :       ijkl_sym(194) = 192
     976             :       !                     dzx       s   -      dxy     dzy
     977         998 :       ijkl_ind(6, 42) = 195
     978         998 :       ijkl_sym(195) = 193
     979             :       ! ################    dzx      pz   #######################
     980             :       !                     dzx      pz   -       px       s
     981         998 :       ijkl_ind(14, 3) = 196
     982             :       !                     dzx      pz   -       px      pz
     983         998 :       ijkl_ind(14, 11) = 197
     984             :       !                     dzx      pz   -      dz2      px
     985         998 :       ijkl_ind(14, 20) = 198
     986             :       !                     dzx      pz   -      dzx       s
     987         998 :       ijkl_ind(14, 6) = 199
     988             :       !                     dzx      pz   -      dzx      pz
     989         998 :       ijkl_ind(14, 14) = 200
     990             :       !                     dzx      pz   -      dzx     dz2
     991         998 :       ijkl_ind(14, 32) = 201
     992             :       !                     dzx      pz   -   dx2-y2      px
     993         998 :       ijkl_ind(14, 23) = 202
     994             :       !                     dzx      pz   -   dx2-y2  dx2-y2
     995         998 :       ijkl_ind(14, 38) = 203
     996             :       !                     dzx      pz   -      dxy      py
     997         998 :       ijkl_ind(14, 30) = 204
     998         998 :       ijkl_sym(204) = 202
     999             :       !                     dzx      pz   -      dxy     dzy
    1000         998 :       ijkl_ind(14, 42) = 205
    1001         998 :       ijkl_sym(205) = 203
    1002             :       ! ################    dzx      px   #######################
    1003             :       !                     dzx      px   -        s       s
    1004         998 :       ijkl_ind(21, 1) = 206
    1005             :       !                     dzx      px   -       pz       s
    1006         998 :       ijkl_ind(21, 2) = 207
    1007             :       !                     dzx      px   -       pz      pz
    1008         998 :       ijkl_ind(21, 10) = 208
    1009             :       !                     dzx      px   -       px      px
    1010         998 :       ijkl_ind(21, 18) = 209
    1011             :       !                     dzx      px   -       py      py
    1012         998 :       ijkl_ind(21, 25) = 210
    1013             :       !                     dzx      px   -      dz2       s
    1014         998 :       ijkl_ind(21, 5) = 211
    1015             :       !                     dzx      px   -      dz2      pz
    1016         998 :       ijkl_ind(21, 13) = 212
    1017             :       !                     dzx      px   -      dz2     dz2
    1018         998 :       ijkl_ind(21, 31) = 213
    1019             :       !                     dzx      px   -      dzx      px
    1020         998 :       ijkl_ind(21, 21) = 214
    1021             :       !                     dzx      px   -      dzx     dzx
    1022         998 :       ijkl_ind(21, 36) = 215
    1023             :       !                     dzx      px   -      dzy      py
    1024         998 :       ijkl_ind(21, 28) = 216
    1025             :       !                     dzx      px   -      dzy     dzy
    1026         998 :       ijkl_ind(21, 40) = 217
    1027             :       !                     dzx      px   -   dx2-y2       s
    1028         998 :       ijkl_ind(21, 8) = 218
    1029             :       !                     dzx      px   -   dx2-y2      pz
    1030         998 :       ijkl_ind(21, 16) = 219
    1031             :       !                     dzx      px   -   dx2-y2     dz2
    1032         998 :       ijkl_ind(21, 34) = 220
    1033             :       !                     dzx      px   -   dx2-y2  dx2-y2
    1034         998 :       ijkl_ind(21, 43) = 221
    1035             :       !                     dzx      px   -      dxy     dxy
    1036         998 :       ijkl_ind(21, 45) = 222
    1037         998 :       ijkl_sym(222) = 221
    1038             :       ! ################    dzx      py   #######################
    1039             :       !                     dzx      py   -       px      py
    1040         998 :       ijkl_ind(27, 19) = 223
    1041             :       !                     dzx      py   -      dzx      py
    1042         998 :       ijkl_ind(27, 27) = 224
    1043         998 :       ijkl_sym(224) = 219
    1044             :       !                     dzx      py   -      dzy      px
    1045         998 :       ijkl_ind(27, 22) = 225
    1046         998 :       ijkl_sym(225) = 219
    1047             :       !                     dzx      py   -      dzy     dzx
    1048         998 :       ijkl_ind(27, 37) = 226
    1049             :       !                     dzx      py   -      dxy       s
    1050         998 :       ijkl_ind(27, 9) = 227
    1051         998 :       ijkl_sym(227) = 218
    1052             :       !                     dzx      py   -      dxy      pz
    1053         998 :       ijkl_ind(27, 17) = 228
    1054         998 :       ijkl_sym(228) = 219
    1055             :       !                     dzx      py   -      dxy     dz2
    1056         998 :       ijkl_ind(27, 35) = 229
    1057         998 :       ijkl_sym(229) = 220
    1058             :       ! ################    dzx     dz2   #######################
    1059             :       !                     dzx     dz2   -       px       s
    1060         998 :       ijkl_ind(32, 3) = 230
    1061             :       !                     dzx     dz2   -       px      pz
    1062         998 :       ijkl_ind(32, 11) = 231
    1063             :       !                     dzx     dz2   -      dz2      px
    1064         998 :       ijkl_ind(32, 20) = 232
    1065             :       !                     dzx     dz2   -      dzx       s
    1066         998 :       ijkl_ind(32, 6) = 233
    1067             :       !                     dzx     dz2   -      dzx      pz
    1068         998 :       ijkl_ind(32, 14) = 234
    1069             :       !                     dzx     dz2   -      dzx     dz2
    1070         998 :       ijkl_ind(32, 32) = 235
    1071             :       !                     dzx     dz2   -   dx2-y2      px
    1072         998 :       ijkl_ind(32, 23) = 236
    1073             :       !                     dzx     dz2   -   dx2-y2  dx2-y2
    1074         998 :       ijkl_ind(32, 38) = 237
    1075             :       !                     dzx     dz2   -      dxy      py
    1076         998 :       ijkl_ind(32, 30) = 238
    1077         998 :       ijkl_sym(238) = 236
    1078             :       !                     dzx     dz2   -      dxy     dzy
    1079         998 :       ijkl_ind(32, 42) = 239
    1080         998 :       ijkl_sym(239) = 237
    1081             :       ! ################    dzx     dzx   #######################
    1082             :       !                     dzx     dzx   -        s       s
    1083         998 :       ijkl_ind(36, 1) = 240
    1084             :       !                     dzx     dzx   -       pz       s
    1085         998 :       ijkl_ind(36, 2) = 241
    1086             :       !                     dzx     dzx   -       pz      pz
    1087         998 :       ijkl_ind(36, 10) = 242
    1088             :       !                     dzx     dzx   -       px      px
    1089         998 :       ijkl_ind(36, 18) = 243
    1090             :       !                     dzx     dzx   -       py      py
    1091         998 :       ijkl_ind(36, 25) = 244
    1092             :       !                     dzx     dzx   -      dz2       s
    1093         998 :       ijkl_ind(36, 5) = 245
    1094             :       !                     dzx     dzx   -      dz2      pz
    1095         998 :       ijkl_ind(36, 13) = 246
    1096             :       !                     dzx     dzx   -      dz2     dz2
    1097         998 :       ijkl_ind(36, 31) = 247
    1098             :       !                     dzx     dzx   -      dzx      px
    1099         998 :       ijkl_ind(36, 21) = 248
    1100             :       !                     dzx     dzx   -      dzx     dzx
    1101         998 :       ijkl_ind(36, 36) = 249
    1102             :       !                     dzx     dzx   -      dzy      py
    1103         998 :       ijkl_ind(36, 28) = 250
    1104             :       !                     dzx     dzx   -      dzy     dzy
    1105         998 :       ijkl_ind(36, 40) = 251
    1106             :       !                     dzx     dzx   -   dx2-y2       s
    1107         998 :       ijkl_ind(36, 8) = 252
    1108             :       !                     dzx     dzx   -   dx2-y2      pz
    1109         998 :       ijkl_ind(36, 16) = 253
    1110             :       !                     dzx     dzx   -   dx2-y2     dz2
    1111         998 :       ijkl_ind(36, 34) = 254
    1112             :       !                     dzx     dzx   -   dx2-y2  dx2-y2
    1113         998 :       ijkl_ind(36, 43) = 255
    1114             :       !                     dzx     dzx   -      dxy     dxy
    1115         998 :       ijkl_ind(36, 45) = 256
    1116         998 :       ijkl_sym(256) = 255
    1117             :       ! ################    dzy       s   #######################
    1118             :       !                     dzy       s   -       py       s
    1119         998 :       ijkl_ind(7, 4) = 257
    1120         998 :       ijkl_sym(257) = 186
    1121             :       !                     dzy       s   -       py      pz
    1122         998 :       ijkl_ind(7, 12) = 258
    1123         998 :       ijkl_sym(258) = 187
    1124             :       !                     dzy       s   -      dz2      py
    1125         998 :       ijkl_ind(7, 26) = 259
    1126         998 :       ijkl_sym(259) = 188
    1127             :       !                     dzy       s   -      dzy       s
    1128         998 :       ijkl_ind(7, 7) = 260
    1129         998 :       ijkl_sym(260) = 189
    1130             :       !                     dzy       s   -      dzy      pz
    1131         998 :       ijkl_ind(7, 15) = 261
    1132         998 :       ijkl_sym(261) = 190
    1133             :       !                     dzy       s   -      dzy     dz2
    1134         998 :       ijkl_ind(7, 33) = 262
    1135         998 :       ijkl_sym(262) = 191
    1136             :       !                     dzy       s   -   dx2-y2      py
    1137         998 :       ijkl_ind(7, 29) = 263
    1138         998 :       ijkl_sym(263) = 192*(-1)
    1139             :       !                     dzy       s   -   dx2-y2     dzy
    1140         998 :       ijkl_ind(7, 41) = 264
    1141         998 :       ijkl_sym(264) = 193*(-1)
    1142             :       !                     dzy       s   -      dxy      px
    1143         998 :       ijkl_ind(7, 24) = 265
    1144         998 :       ijkl_sym(265) = 192
    1145             :       !                     dzy       s   -      dxy     dzx
    1146         998 :       ijkl_ind(7, 39) = 266
    1147         998 :       ijkl_sym(266) = 193
    1148             :       ! ################    dzy      pz   #######################
    1149             :       !                     dzy      pz   -       py       s
    1150         998 :       ijkl_ind(15, 4) = 267
    1151         998 :       ijkl_sym(267) = 196
    1152             :       !                     dzy      pz   -       py      pz
    1153         998 :       ijkl_ind(15, 12) = 268
    1154         998 :       ijkl_sym(268) = 197
    1155             :       !                     dzy      pz   -      dz2      py
    1156         998 :       ijkl_ind(15, 26) = 269
    1157         998 :       ijkl_sym(269) = 198
    1158             :       !                     dzy      pz   -      dzy       s
    1159         998 :       ijkl_ind(15, 7) = 270
    1160         998 :       ijkl_sym(270) = 199
    1161             :       !                     dzy      pz   -      dzy      pz
    1162         998 :       ijkl_ind(15, 15) = 271
    1163         998 :       ijkl_sym(271) = 200
    1164             :       !                     dzy      pz   -      dzy     dz2
    1165         998 :       ijkl_ind(15, 33) = 272
    1166         998 :       ijkl_sym(272) = 201
    1167             :       !                     dzy      pz   -   dx2-y2      py
    1168         998 :       ijkl_ind(15, 29) = 273
    1169         998 :       ijkl_sym(273) = 202*(-1)
    1170             :       !                     dzy      pz   -   dx2-y2     dzy
    1171         998 :       ijkl_ind(15, 41) = 274
    1172         998 :       ijkl_sym(274) = 203*(-1)
    1173             :       !                     dzy      pz   -      dxy      px
    1174         998 :       ijkl_ind(15, 24) = 275
    1175         998 :       ijkl_sym(275) = 202
    1176             :       !                     dzy      pz   -      dxy     dzx
    1177         998 :       ijkl_ind(15, 39) = 276
    1178         998 :       ijkl_sym(276) = 203
    1179             :       ! ################    dzy      px   #######################
    1180             :       !                     dzy      px   -       px      py
    1181         998 :       ijkl_ind(22, 19) = 277
    1182         998 :       ijkl_sym(277) = 223
    1183             :       !                     dzy      px   -      dzx      py
    1184         998 :       ijkl_ind(22, 27) = 278
    1185         998 :       ijkl_sym(278) = 219
    1186             :       !                     dzy      px   -      dzy      px
    1187         998 :       ijkl_ind(22, 22) = 279
    1188         998 :       ijkl_sym(279) = 219
    1189             :       !                     dzy      px   -      dzy     dzx
    1190         998 :       ijkl_ind(22, 37) = 280
    1191         998 :       ijkl_sym(280) = 226
    1192             :       !                     dzy      px   -      dxy       s
    1193         998 :       ijkl_ind(22, 9) = 281
    1194         998 :       ijkl_sym(281) = 218
    1195             :       !                     dzy      px   -      dxy      pz
    1196         998 :       ijkl_ind(22, 17) = 282
    1197         998 :       ijkl_sym(282) = 219
    1198             :       !                     dzy      px   -      dxy     dz2
    1199         998 :       ijkl_ind(22, 35) = 283
    1200         998 :       ijkl_sym(283) = 220
    1201             :       ! ################    dzy      py   #######################
    1202             :       !                     dzy      py   -        s       s
    1203         998 :       ijkl_ind(28, 1) = 284
    1204         998 :       ijkl_sym(284) = 206
    1205             :       !                     dzy      py   -       pz       s
    1206         998 :       ijkl_ind(28, 2) = 285
    1207         998 :       ijkl_sym(285) = 207
    1208             :       !                     dzy      py   -       pz      pz
    1209         998 :       ijkl_ind(28, 10) = 286
    1210         998 :       ijkl_sym(286) = 208
    1211             :       !                     dzy      py   -       px      px
    1212         998 :       ijkl_ind(28, 18) = 287
    1213         998 :       ijkl_sym(287) = 210
    1214             :       !                     dzy      py   -       py      py
    1215         998 :       ijkl_ind(28, 25) = 288
    1216         998 :       ijkl_sym(288) = 209
    1217             :       !                     dzy      py   -      dz2       s
    1218         998 :       ijkl_ind(28, 5) = 289
    1219         998 :       ijkl_sym(289) = 211
    1220             :       !                     dzy      py   -      dz2      pz
    1221         998 :       ijkl_ind(28, 13) = 290
    1222         998 :       ijkl_sym(290) = 212
    1223             :       !                     dzy      py   -      dz2     dz2
    1224         998 :       ijkl_ind(28, 31) = 291
    1225         998 :       ijkl_sym(291) = 213
    1226             :       !                     dzy      py   -      dzx      px
    1227         998 :       ijkl_ind(28, 21) = 292
    1228         998 :       ijkl_sym(292) = 216
    1229             :       !                     dzy      py   -      dzx     dzx
    1230         998 :       ijkl_ind(28, 36) = 293
    1231         998 :       ijkl_sym(293) = 217
    1232             :       !                     dzy      py   -      dzy      py
    1233         998 :       ijkl_ind(28, 28) = 294
    1234         998 :       ijkl_sym(294) = 214
    1235             :       !                     dzy      py   -      dzy     dzy
    1236         998 :       ijkl_ind(28, 40) = 295
    1237         998 :       ijkl_sym(295) = 215
    1238             :       !                     dzy      py   -   dx2-y2       s
    1239         998 :       ijkl_ind(28, 8) = 296
    1240         998 :       ijkl_sym(296) = 218*(-1)
    1241             :       !                     dzy      py   -   dx2-y2      pz
    1242         998 :       ijkl_ind(28, 16) = 297
    1243         998 :       ijkl_sym(297) = 219*(-1)
    1244             :       !                     dzy      py   -   dx2-y2     dz2
    1245         998 :       ijkl_ind(28, 34) = 298
    1246         998 :       ijkl_sym(298) = 220*(-1)
    1247             :       !                     dzy      py   -   dx2-y2  dx2-y2
    1248         998 :       ijkl_ind(28, 43) = 299
    1249         998 :       ijkl_sym(299) = 221
    1250             :       !                     dzy      py   -      dxy     dxy
    1251         998 :       ijkl_ind(28, 45) = 300
    1252         998 :       ijkl_sym(300) = 221
    1253             :       ! ################    dzy     dz2   #######################
    1254             :       !                     dzy     dz2   -       py       s
    1255         998 :       ijkl_ind(33, 4) = 301
    1256         998 :       ijkl_sym(301) = 230
    1257             :       !                     dzy     dz2   -       py      pz
    1258         998 :       ijkl_ind(33, 12) = 302
    1259         998 :       ijkl_sym(302) = 231
    1260             :       !                     dzy     dz2   -      dz2      py
    1261         998 :       ijkl_ind(33, 26) = 303
    1262         998 :       ijkl_sym(303) = 232
    1263             :       !                     dzy     dz2   -      dzy       s
    1264         998 :       ijkl_ind(33, 7) = 304
    1265         998 :       ijkl_sym(304) = 233
    1266             :       !                     dzy     dz2   -      dzy      pz
    1267         998 :       ijkl_ind(33, 15) = 305
    1268         998 :       ijkl_sym(305) = 234
    1269             :       !                     dzy     dz2   -      dzy     dz2
    1270         998 :       ijkl_ind(33, 33) = 306
    1271         998 :       ijkl_sym(306) = 235
    1272             :       !                     dzy     dz2   -   dx2-y2      py
    1273         998 :       ijkl_ind(33, 29) = 307
    1274         998 :       ijkl_sym(307) = 236*(-1)
    1275             :       !                     dzy     dz2   -   dx2-y2     dzy
    1276         998 :       ijkl_ind(33, 41) = 308
    1277         998 :       ijkl_sym(308) = 237*(-1)
    1278             :       !                     dzy     dz2   -      dxy      px
    1279         998 :       ijkl_ind(33, 24) = 309
    1280         998 :       ijkl_sym(309) = 236
    1281             :       !                     dzy     dz2   -      dxy     dzx
    1282         998 :       ijkl_ind(33, 39) = 310
    1283         998 :       ijkl_sym(310) = 237
    1284             :       ! ################    dzy     dzx   #######################
    1285             :       !                     dzy     dzx   -       px      py
    1286         998 :       ijkl_ind(37, 19) = 311
    1287             :       !                     dzy     dzx   -      dzx      py
    1288         998 :       ijkl_ind(37, 27) = 312
    1289         998 :       ijkl_sym(312) = 253
    1290             :       !                     dzy     dzx   -      dzy      px
    1291         998 :       ijkl_ind(37, 22) = 313
    1292         998 :       ijkl_sym(313) = 253
    1293             :       !                     dzy     dzx   -      dzy     dzx
    1294         998 :       ijkl_ind(37, 37) = 314
    1295             :       !                     dzy     dzx   -      dxy       s
    1296         998 :       ijkl_ind(37, 9) = 315
    1297         998 :       ijkl_sym(315) = 252
    1298             :       !                     dzy     dzx   -      dxy      pz
    1299         998 :       ijkl_ind(37, 17) = 316
    1300         998 :       ijkl_sym(316) = 253
    1301             :       !                     dzy     dzx   -      dxy     dz2
    1302         998 :       ijkl_ind(37, 35) = 317
    1303         998 :       ijkl_sym(317) = 254
    1304             :       ! ################    dzy     dzy   #######################
    1305             :       !                     dzy     dzy   -        s       s
    1306         998 :       ijkl_ind(40, 1) = 318
    1307         998 :       ijkl_sym(318) = 240
    1308             :       !                     dzy     dzy   -       pz       s
    1309         998 :       ijkl_ind(40, 2) = 319
    1310         998 :       ijkl_sym(319) = 241
    1311             :       !                     dzy     dzy   -       pz      pz
    1312         998 :       ijkl_ind(40, 10) = 320
    1313         998 :       ijkl_sym(320) = 242
    1314             :       !                     dzy     dzy   -       px      px
    1315         998 :       ijkl_ind(40, 18) = 321
    1316         998 :       ijkl_sym(321) = 244
    1317             :       !                     dzy     dzy   -       py      py
    1318         998 :       ijkl_ind(40, 25) = 322
    1319         998 :       ijkl_sym(322) = 243
    1320             :       !                     dzy     dzy   -      dz2       s
    1321         998 :       ijkl_ind(40, 5) = 323
    1322         998 :       ijkl_sym(323) = 245
    1323             :       !                     dzy     dzy   -      dz2      pz
    1324         998 :       ijkl_ind(40, 13) = 324
    1325         998 :       ijkl_sym(324) = 246
    1326             :       !                     dzy     dzy   -      dz2     dz2
    1327         998 :       ijkl_ind(40, 31) = 325
    1328         998 :       ijkl_sym(325) = 247
    1329             :       !                     dzy     dzy   -      dzx      px
    1330         998 :       ijkl_ind(40, 21) = 326
    1331         998 :       ijkl_sym(326) = 250
    1332             :       !                     dzy     dzy   -      dzx     dzx
    1333         998 :       ijkl_ind(40, 36) = 327
    1334         998 :       ijkl_sym(327) = 251
    1335             :       !                     dzy     dzy   -      dzy      py
    1336         998 :       ijkl_ind(40, 28) = 328
    1337         998 :       ijkl_sym(328) = 248
    1338             :       !                     dzy     dzy   -      dzy     dzy
    1339         998 :       ijkl_ind(40, 40) = 329
    1340         998 :       ijkl_sym(329) = 249
    1341             :       !                     dzy     dzy   -   dx2-y2       s
    1342         998 :       ijkl_ind(40, 8) = 330
    1343         998 :       ijkl_sym(330) = 252*(-1)
    1344             :       !                     dzy     dzy   -   dx2-y2      pz
    1345         998 :       ijkl_ind(40, 16) = 331
    1346         998 :       ijkl_sym(331) = 253*(-1)
    1347             :       !                     dzy     dzy   -   dx2-y2     dz2
    1348         998 :       ijkl_ind(40, 34) = 332
    1349         998 :       ijkl_sym(332) = 254*(-1)
    1350             :       !                     dzy     dzy   -   dx2-y2  dx2-y2
    1351         998 :       ijkl_ind(40, 43) = 333
    1352         998 :       ijkl_sym(333) = 255
    1353             :       !                     dzy     dzy   -      dxy     dxy
    1354         998 :       ijkl_ind(40, 45) = 334
    1355         998 :       ijkl_sym(334) = 255
    1356             :       ! ################ dx2-y2       s   #######################
    1357             :       !                  dx2-y2       s   -       px      px
    1358         998 :       ijkl_ind(8, 18) = 335
    1359             :       !                  dx2-y2       s   -       py      py
    1360         998 :       ijkl_ind(8, 25) = 336
    1361         998 :       ijkl_sym(336) = 335*(-1)
    1362             :       !                  dx2-y2       s   -      dzx      px
    1363         998 :       ijkl_ind(8, 21) = 337
    1364             :       !                  dx2-y2       s   -      dzx     dzx
    1365         998 :       ijkl_ind(8, 36) = 338
    1366             :       !                  dx2-y2       s   -      dzy      py
    1367         998 :       ijkl_ind(8, 28) = 339
    1368         998 :       ijkl_sym(339) = 337*(-1)
    1369             :       !                  dx2-y2       s   -      dzy     dzy
    1370         998 :       ijkl_ind(8, 40) = 340
    1371         998 :       ijkl_sym(340) = 338*(-1)
    1372             :       !                  dx2-y2       s   -   dx2-y2       s
    1373         998 :       ijkl_ind(8, 8) = 341
    1374             :       !                  dx2-y2       s   -   dx2-y2      pz
    1375         998 :       ijkl_ind(8, 16) = 342
    1376         998 :       ijkl_sym(342) = 337
    1377             :       !                  dx2-y2       s   -   dx2-y2     dz2
    1378         998 :       ijkl_ind(8, 34) = 343
    1379             :       ! ################ dx2-y2      pz   #######################
    1380             :       !                  dx2-y2      pz   -       px      px
    1381         998 :       ijkl_ind(16, 18) = 344
    1382         998 :       ijkl_sym(344) = 223
    1383             :       !                  dx2-y2      pz   -       py      py
    1384         998 :       ijkl_ind(16, 25) = 345
    1385         998 :       ijkl_sym(345) = 223*(-1)
    1386             :       !                  dx2-y2      pz   -      dzx      px
    1387         998 :       ijkl_ind(16, 21) = 346
    1388         998 :       ijkl_sym(346) = 219
    1389             :       !                  dx2-y2      pz   -      dzx     dzx
    1390         998 :       ijkl_ind(16, 36) = 347
    1391         998 :       ijkl_sym(347) = 226
    1392             :       !                  dx2-y2      pz   -      dzy      py
    1393         998 :       ijkl_ind(16, 28) = 348
    1394         998 :       ijkl_sym(348) = 219*(-1)
    1395             :       !                  dx2-y2      pz   -      dzy     dzy
    1396         998 :       ijkl_ind(16, 40) = 349
    1397         998 :       ijkl_sym(349) = 226*(-1)
    1398             :       !                  dx2-y2      pz   -   dx2-y2       s
    1399         998 :       ijkl_ind(16, 8) = 350
    1400         998 :       ijkl_sym(350) = 218
    1401             :       !                  dx2-y2      pz   -   dx2-y2      pz
    1402         998 :       ijkl_ind(16, 16) = 351
    1403         998 :       ijkl_sym(351) = 219
    1404             :       !                  dx2-y2      pz   -   dx2-y2     dz2
    1405         998 :       ijkl_ind(16, 34) = 352
    1406         998 :       ijkl_sym(352) = 220
    1407             :       ! ################ dx2-y2      px   #######################
    1408             :       !                  dx2-y2      px   -       px       s
    1409         998 :       ijkl_ind(23, 3) = 353
    1410             :       !                  dx2-y2      px   -       px      pz
    1411         998 :       ijkl_ind(23, 11) = 354
    1412             :       !                  dx2-y2      px   -      dz2      px
    1413         998 :       ijkl_ind(23, 20) = 355
    1414             :       !                  dx2-y2      px   -      dzx       s
    1415         998 :       ijkl_ind(23, 6) = 356
    1416             :       !                  dx2-y2      px   -      dzx      pz
    1417         998 :       ijkl_ind(23, 14) = 357
    1418             :       !                  dx2-y2      px   -      dzx     dz2
    1419         998 :       ijkl_ind(23, 32) = 358
    1420             :       !                  dx2-y2      px   -   dx2-y2      px
    1421         998 :       ijkl_ind(23, 23) = 359
    1422             :       !                  dx2-y2      px   -   dx2-y2  dx2-y2
    1423         998 :       ijkl_ind(23, 38) = 360
    1424             :       !                  dx2-y2      px   -      dxy      py
    1425         998 :       ijkl_ind(23, 30) = 361
    1426             :       !                  dx2-y2      px   -      dxy     dzy
    1427         998 :       ijkl_ind(23, 42) = 362
    1428             :       ! ################ dx2-y2      py   #######################
    1429             :       !                  dx2-y2      py   -       py       s
    1430         998 :       ijkl_ind(29, 4) = 363
    1431         998 :       ijkl_sym(363) = 353*(-1)
    1432             :       !                  dx2-y2      py   -       py      pz
    1433         998 :       ijkl_ind(29, 12) = 364
    1434         998 :       ijkl_sym(364) = 354*(-1)
    1435             :       !                  dx2-y2      py   -      dz2      py
    1436         998 :       ijkl_ind(29, 26) = 365
    1437         998 :       ijkl_sym(365) = 355*(-1)
    1438             :       !                  dx2-y2      py   -      dzy       s
    1439         998 :       ijkl_ind(29, 7) = 366
    1440         998 :       ijkl_sym(366) = 356*(-1)
    1441             :       !                  dx2-y2      py   -      dzy      pz
    1442         998 :       ijkl_ind(29, 15) = 367
    1443         998 :       ijkl_sym(367) = 357*(-1)
    1444             :       !                  dx2-y2      py   -      dzy     dz2
    1445         998 :       ijkl_ind(29, 33) = 368
    1446         998 :       ijkl_sym(368) = 358*(-1)
    1447             :       !                  dx2-y2      py   -   dx2-y2      py
    1448         998 :       ijkl_ind(29, 29) = 369
    1449         998 :       ijkl_sym(369) = 359
    1450             :       !                  dx2-y2      py   -   dx2-y2     dzy
    1451         998 :       ijkl_ind(29, 41) = 370
    1452         998 :       ijkl_sym(370) = 360
    1453             :       !                  dx2-y2      py   -      dxy      px
    1454         998 :       ijkl_ind(29, 24) = 371
    1455         998 :       ijkl_sym(371) = 361*(-1)
    1456             :       !                  dx2-y2      py   -      dxy     dzx
    1457         998 :       ijkl_ind(29, 39) = 372
    1458         998 :       ijkl_sym(372) = 362*(-1)
    1459             :       ! ################ dx2-y2     dz2   #######################
    1460             :       !                  dx2-y2     dz2   -       px      px
    1461         998 :       ijkl_ind(34, 18) = 373
    1462             :       !                  dx2-y2     dz2   -       py      py
    1463         998 :       ijkl_ind(34, 25) = 374
    1464         998 :       ijkl_sym(374) = 373*(-1)
    1465             :       !                  dx2-y2     dz2   -      dzx      px
    1466         998 :       ijkl_ind(34, 21) = 375
    1467             :       !                  dx2-y2     dz2   -      dzx     dzx
    1468         998 :       ijkl_ind(34, 36) = 376
    1469             :       !                  dx2-y2     dz2   -      dzy      py
    1470         998 :       ijkl_ind(34, 28) = 377
    1471         998 :       ijkl_sym(377) = 375*(-1)
    1472             :       !                  dx2-y2     dz2   -      dzy     dzy
    1473         998 :       ijkl_ind(34, 40) = 378
    1474         998 :       ijkl_sym(378) = 376*(-1)
    1475             :       !                  dx2-y2     dz2   -   dx2-y2       s
    1476         998 :       ijkl_ind(34, 8) = 379
    1477             :       !                  dx2-y2     dz2   -   dx2-y2      pz
    1478         998 :       ijkl_ind(34, 16) = 380
    1479         998 :       ijkl_sym(380) = 375
    1480             :       !                  dx2-y2     dz2   -   dx2-y2     dz2
    1481         998 :       ijkl_ind(34, 34) = 381
    1482             :       ! ################ dx2-y2     dzx   #######################
    1483             :       !                  dx2-y2     dzx   -       px       s
    1484         998 :       ijkl_ind(38, 3) = 382
    1485             :       !                  dx2-y2     dzx   -       px      pz
    1486         998 :       ijkl_ind(38, 11) = 383
    1487             :       !                  dx2-y2     dzx   -      dz2      px
    1488         998 :       ijkl_ind(38, 20) = 384
    1489             :       !                  dx2-y2     dzx   -      dzx       s
    1490         998 :       ijkl_ind(38, 6) = 385
    1491             :       !                  dx2-y2     dzx   -      dzx      pz
    1492         998 :       ijkl_ind(38, 14) = 386
    1493             :       !                  dx2-y2     dzx   -      dzx     dz2
    1494         998 :       ijkl_ind(38, 32) = 387
    1495             :       !                  dx2-y2     dzx   -   dx2-y2      px
    1496         998 :       ijkl_ind(38, 23) = 388
    1497             :       !                  dx2-y2     dzx   -   dx2-y2  dx2-y2
    1498         998 :       ijkl_ind(38, 38) = 389
    1499             :       !                  dx2-y2     dzx   -      dxy      py
    1500         998 :       ijkl_ind(38, 30) = 390
    1501             :       !                  dx2-y2     dzx   -      dxy     dzy
    1502         998 :       ijkl_ind(38, 42) = 391
    1503             :       ! ################ dx2-y2     dzy   #######################
    1504             :       !                  dx2-y2     dzy   -       py       s
    1505         998 :       ijkl_ind(41, 4) = 392
    1506         998 :       ijkl_sym(392) = 382*(-1)
    1507             :       !                  dx2-y2     dzy   -       py      pz
    1508         998 :       ijkl_ind(41, 12) = 393
    1509         998 :       ijkl_sym(393) = 383*(-1)
    1510             :       !                  dx2-y2     dzy   -      dz2      py
    1511         998 :       ijkl_ind(41, 26) = 394
    1512         998 :       ijkl_sym(394) = 384*(-1)
    1513             :       !                  dx2-y2     dzy   -      dzy       s
    1514         998 :       ijkl_ind(41, 7) = 395
    1515         998 :       ijkl_sym(395) = 385*(-1)
    1516             :       !                  dx2-y2     dzy   -      dzy      pz
    1517         998 :       ijkl_ind(41, 15) = 396
    1518         998 :       ijkl_sym(396) = 386*(-1)
    1519             :       !                  dx2-y2     dzy   -      dzy     dz2
    1520         998 :       ijkl_ind(41, 33) = 397
    1521         998 :       ijkl_sym(397) = 387*(-1)
    1522             :       !                  dx2-y2     dzy   -   dx2-y2      py
    1523         998 :       ijkl_ind(41, 29) = 398
    1524         998 :       ijkl_sym(398) = 388
    1525             :       !                  dx2-y2     dzy   -   dx2-y2     dzy
    1526         998 :       ijkl_ind(41, 41) = 399
    1527         998 :       ijkl_sym(399) = 389
    1528             :       !                  dx2-y2     dzy   -      dxy      px
    1529         998 :       ijkl_ind(41, 24) = 400
    1530         998 :       ijkl_sym(400) = 390*(-1)
    1531             :       !                  dx2-y2     dzy   -      dxy     dzx
    1532         998 :       ijkl_ind(41, 39) = 401
    1533         998 :       ijkl_sym(401) = 391*(-1)
    1534             :       ! ################ dx2-y2  dx2-y2   #######################
    1535             :       !                  dx2-y2  dx2-y2   -        s       s
    1536         998 :       ijkl_ind(43, 1) = 402
    1537             :       !                  dx2-y2  dx2-y2   -       pz       s
    1538         998 :       ijkl_ind(43, 2) = 403
    1539             :       !                  dx2-y2  dx2-y2   -       pz      pz
    1540         998 :       ijkl_ind(43, 10) = 404
    1541             :       !                  dx2-y2  dx2-y2   -       px      px
    1542         998 :       ijkl_ind(43, 18) = 405
    1543             :       !                  dx2-y2  dx2-y2   -       py      py
    1544         998 :       ijkl_ind(43, 25) = 406
    1545         998 :       ijkl_sym(406) = 405
    1546             :       !                  dx2-y2  dx2-y2   -      dz2       s
    1547         998 :       ijkl_ind(43, 5) = 407
    1548             :       !                  dx2-y2  dx2-y2   -      dz2      pz
    1549         998 :       ijkl_ind(43, 13) = 408
    1550             :       !                  dx2-y2  dx2-y2   -      dz2     dz2
    1551         998 :       ijkl_ind(43, 31) = 409
    1552             :       !                  dx2-y2  dx2-y2   -      dzx      px
    1553         998 :       ijkl_ind(43, 21) = 410
    1554             :       !                  dx2-y2  dx2-y2   -      dzx     dzx
    1555         998 :       ijkl_ind(43, 36) = 411
    1556             :       !                  dx2-y2  dx2-y2   -      dzy      py
    1557         998 :       ijkl_ind(43, 28) = 412
    1558         998 :       ijkl_sym(412) = 410
    1559             :       !                  dx2-y2  dx2-y2   -      dzy     dzy
    1560         998 :       ijkl_ind(43, 40) = 413
    1561         998 :       ijkl_sym(413) = 411
    1562             :       !                  dx2-y2  dx2-y2   -   dx2-y2  dx2-y2
    1563         998 :       ijkl_ind(43, 43) = 414
    1564             :       !                  dx2-y2  dx2-y2   -      dxy     dxy
    1565         998 :       ijkl_ind(43, 45) = 415
    1566             :       ! ################    dxy       s   #######################
    1567             :       !                     dxy       s   -       px      py
    1568         998 :       ijkl_ind(9, 19) = 416
    1569         998 :       ijkl_sym(416) = 335
    1570             :       !                     dxy       s   -      dzx      py
    1571         998 :       ijkl_ind(9, 27) = 417
    1572         998 :       ijkl_sym(417) = 337
    1573             :       !                     dxy       s   -      dzy      px
    1574         998 :       ijkl_ind(9, 22) = 418
    1575         998 :       ijkl_sym(418) = 337
    1576             :       !                     dxy       s   -      dzy     dzx
    1577         998 :       ijkl_ind(9, 37) = 419
    1578         998 :       ijkl_sym(419) = 338
    1579             :       !                     dxy       s   -      dxy       s
    1580         998 :       ijkl_ind(9, 9) = 420
    1581         998 :       ijkl_sym(420) = 341
    1582             :       !                     dxy       s   -      dxy      pz
    1583         998 :       ijkl_ind(9, 17) = 421
    1584         998 :       ijkl_sym(421) = 337
    1585             :       !                     dxy       s   -      dxy     dz2
    1586         998 :       ijkl_ind(9, 35) = 422
    1587         998 :       ijkl_sym(422) = 343
    1588             :       ! ################    dxy      pz   #######################
    1589             :       !                     dxy      pz   -       px      py
    1590         998 :       ijkl_ind(17, 19) = 423
    1591         998 :       ijkl_sym(423) = 223
    1592             :       !                     dxy      pz   -      dzx      py
    1593         998 :       ijkl_ind(17, 27) = 424
    1594         998 :       ijkl_sym(424) = 219
    1595             :       !                     dxy      pz   -      dzy      px
    1596         998 :       ijkl_ind(17, 22) = 425
    1597         998 :       ijkl_sym(425) = 219
    1598             :       !                     dxy      pz   -      dzy     dzx
    1599         998 :       ijkl_ind(17, 37) = 426
    1600         998 :       ijkl_sym(426) = 226
    1601             :       !                     dxy      pz   -      dxy       s
    1602         998 :       ijkl_ind(17, 9) = 427
    1603         998 :       ijkl_sym(427) = 218
    1604             :       !                     dxy      pz   -      dxy      pz
    1605         998 :       ijkl_ind(17, 17) = 428
    1606         998 :       ijkl_sym(428) = 219
    1607             :       !                     dxy      pz   -      dxy     dz2
    1608         998 :       ijkl_ind(17, 35) = 429
    1609         998 :       ijkl_sym(429) = 220
    1610             :       ! ################    dxy      px   #######################
    1611             :       !                     dxy      px   -       py       s
    1612         998 :       ijkl_ind(24, 4) = 430
    1613         998 :       ijkl_sym(430) = 353
    1614             :       !                     dxy      px   -       py      pz
    1615         998 :       ijkl_ind(24, 12) = 431
    1616         998 :       ijkl_sym(431) = 354
    1617             :       !                     dxy      px   -      dz2      py
    1618         998 :       ijkl_ind(24, 26) = 432
    1619         998 :       ijkl_sym(432) = 355
    1620             :       !                     dxy      px   -      dzy       s
    1621         998 :       ijkl_ind(24, 7) = 433
    1622         998 :       ijkl_sym(433) = 356
    1623             :       !                     dxy      px   -      dzy      pz
    1624         998 :       ijkl_ind(24, 15) = 434
    1625         998 :       ijkl_sym(434) = 357
    1626             :       !                     dxy      px   -      dzy     dz2
    1627         998 :       ijkl_ind(24, 33) = 435
    1628         998 :       ijkl_sym(435) = 358
    1629             :       !                     dxy      px   -   dx2-y2      py
    1630         998 :       ijkl_ind(24, 29) = 436
    1631         998 :       ijkl_sym(436) = 361*(-1)
    1632             :       !                     dxy      px   -   dx2-y2     dzy
    1633         998 :       ijkl_ind(24, 41) = 437
    1634         998 :       ijkl_sym(437) = 362*(-1)
    1635             :       !                     dxy      px   -      dxy      px
    1636         998 :       ijkl_ind(24, 24) = 438
    1637         998 :       ijkl_sym(438) = 359
    1638             :       !                     dxy      px   -      dxy     dzx
    1639         998 :       ijkl_ind(24, 39) = 439
    1640         998 :       ijkl_sym(439) = 360
    1641             :       ! ################    dxy      py   #######################
    1642             :       !                     dxy      py   -       px       s
    1643         998 :       ijkl_ind(30, 3) = 440
    1644         998 :       ijkl_sym(440) = 353
    1645             :       !                     dxy      py   -       px      pz
    1646         998 :       ijkl_ind(30, 11) = 441
    1647         998 :       ijkl_sym(441) = 354
    1648             :       !                     dxy      py   -      dz2      px
    1649         998 :       ijkl_ind(30, 20) = 442
    1650         998 :       ijkl_sym(442) = 355
    1651             :       !                     dxy      py   -      dzx       s
    1652         998 :       ijkl_ind(30, 6) = 443
    1653         998 :       ijkl_sym(443) = 356
    1654             :       !                     dxy      py   -      dzx      pz
    1655         998 :       ijkl_ind(30, 14) = 444
    1656         998 :       ijkl_sym(444) = 357
    1657             :       !                     dxy      py   -      dzx     dz2
    1658         998 :       ijkl_ind(30, 32) = 445
    1659         998 :       ijkl_sym(445) = 358
    1660             :       !                     dxy      py   -   dx2-y2      px
    1661         998 :       ijkl_ind(30, 23) = 446
    1662         998 :       ijkl_sym(446) = 361
    1663             :       !                     dxy      py   -   dx2-y2  dx2-y2
    1664         998 :       ijkl_ind(30, 38) = 447
    1665         998 :       ijkl_sym(447) = 362
    1666             :       !                     dxy      py   -      dxy      py
    1667         998 :       ijkl_ind(30, 30) = 448
    1668         998 :       ijkl_sym(448) = 359
    1669             :       !                     dxy      py   -      dxy     dzy
    1670         998 :       ijkl_ind(30, 42) = 449
    1671         998 :       ijkl_sym(449) = 360
    1672             :       ! ################    dxy     dz2   #######################
    1673             :       !                     dxy     dz2   -       px      py
    1674         998 :       ijkl_ind(35, 19) = 450
    1675         998 :       ijkl_sym(450) = 373
    1676             :       !                     dxy     dz2   -      dzx      py
    1677         998 :       ijkl_ind(35, 27) = 451
    1678         998 :       ijkl_sym(451) = 375
    1679             :       !                     dxy     dz2   -      dzy      px
    1680         998 :       ijkl_ind(35, 22) = 452
    1681         998 :       ijkl_sym(452) = 375
    1682             :       !                     dxy     dz2   -      dzy     dzx
    1683         998 :       ijkl_ind(35, 37) = 453
    1684         998 :       ijkl_sym(453) = 376
    1685             :       !                     dxy     dz2   -      dxy       s
    1686         998 :       ijkl_ind(35, 9) = 454
    1687         998 :       ijkl_sym(454) = 379
    1688             :       !                     dxy     dz2   -      dxy      pz
    1689         998 :       ijkl_ind(35, 17) = 455
    1690         998 :       ijkl_sym(455) = 375
    1691             :       !                     dxy     dz2   -      dxy     dz2
    1692         998 :       ijkl_ind(35, 35) = 456
    1693         998 :       ijkl_sym(456) = 381
    1694             :       ! ################    dxy     dzx   #######################
    1695             :       !                     dxy     dzx   -       py       s
    1696         998 :       ijkl_ind(39, 4) = 457
    1697         998 :       ijkl_sym(457) = 382
    1698             :       !                     dxy     dzx   -       py      pz
    1699         998 :       ijkl_ind(39, 12) = 458
    1700         998 :       ijkl_sym(458) = 383
    1701             :       !                     dxy     dzx   -      dz2      py
    1702         998 :       ijkl_ind(39, 26) = 459
    1703         998 :       ijkl_sym(459) = 384
    1704             :       !                     dxy     dzx   -      dzy       s
    1705         998 :       ijkl_ind(39, 7) = 460
    1706         998 :       ijkl_sym(460) = 385
    1707             :       !                     dxy     dzx   -      dzy      pz
    1708         998 :       ijkl_ind(39, 15) = 461
    1709         998 :       ijkl_sym(461) = 386
    1710             :       !                     dxy     dzx   -      dzy     dz2
    1711         998 :       ijkl_ind(39, 33) = 462
    1712         998 :       ijkl_sym(462) = 387
    1713             :       !                     dxy     dzx   -   dx2-y2      py
    1714         998 :       ijkl_ind(39, 29) = 463
    1715         998 :       ijkl_sym(463) = 390*(-1)
    1716             :       !                     dxy     dzx   -   dx2-y2     dzy
    1717         998 :       ijkl_ind(39, 41) = 464
    1718         998 :       ijkl_sym(464) = 391*(-1)
    1719             :       !                     dxy     dzx   -      dxy      px
    1720         998 :       ijkl_ind(39, 24) = 465
    1721         998 :       ijkl_sym(465) = 388
    1722             :       !                     dxy     dzx   -      dxy     dzx
    1723         998 :       ijkl_ind(39, 39) = 466
    1724         998 :       ijkl_sym(466) = 389
    1725             :       ! ################    dxy     dzy   #######################
    1726             :       !                     dxy     dzy   -       px       s
    1727         998 :       ijkl_ind(42, 3) = 467
    1728         998 :       ijkl_sym(467) = 382
    1729             :       !                     dxy     dzy   -       px      pz
    1730         998 :       ijkl_ind(42, 11) = 468
    1731         998 :       ijkl_sym(468) = 383
    1732             :       !                     dxy     dzy   -      dz2      px
    1733         998 :       ijkl_ind(42, 20) = 469
    1734         998 :       ijkl_sym(469) = 384
    1735             :       !                     dxy     dzy   -      dzx       s
    1736         998 :       ijkl_ind(42, 6) = 470
    1737         998 :       ijkl_sym(470) = 385
    1738             :       !                     dxy     dzy   -      dzx      pz
    1739         998 :       ijkl_ind(42, 14) = 471
    1740         998 :       ijkl_sym(471) = 386
    1741             :       !                     dxy     dzy   -      dzx     dz2
    1742         998 :       ijkl_ind(42, 32) = 472
    1743         998 :       ijkl_sym(472) = 387
    1744             :       !                     dxy     dzy   -   dx2-y2      px
    1745         998 :       ijkl_ind(42, 23) = 473
    1746         998 :       ijkl_sym(473) = 390
    1747             :       !                     dxy     dzy   -   dx2-y2  dx2-y2
    1748         998 :       ijkl_ind(42, 38) = 474
    1749         998 :       ijkl_sym(474) = 391
    1750             :       !                     dxy     dzy   -      dxy      py
    1751         998 :       ijkl_ind(42, 30) = 475
    1752         998 :       ijkl_sym(475) = 388
    1753             :       !                     dxy     dzy   -      dxy     dzy
    1754         998 :       ijkl_ind(42, 42) = 476
    1755         998 :       ijkl_sym(476) = 389
    1756             :       ! ################    dxy  dx2-y2   #######################
    1757             :       !                     dxy  dx2-y2   -      dxy  dx2-y2
    1758         998 :       ijkl_ind(44, 44) = 477
    1759             :       ! ################    dxy     dxy   #######################
    1760             :       !                     dxy     dxy   -        s       s
    1761         998 :       ijkl_ind(45, 1) = 478
    1762         998 :       ijkl_sym(478) = 402
    1763             :       !                     dxy     dxy   -       pz       s
    1764         998 :       ijkl_ind(45, 2) = 479
    1765         998 :       ijkl_sym(479) = 403
    1766             :       !                     dxy     dxy   -       pz      pz
    1767         998 :       ijkl_ind(45, 10) = 480
    1768         998 :       ijkl_sym(480) = 404
    1769             :       !                     dxy     dxy   -       px      px
    1770         998 :       ijkl_ind(45, 18) = 481
    1771         998 :       ijkl_sym(481) = 405
    1772             :       !                     dxy     dxy   -       py      py
    1773         998 :       ijkl_ind(45, 25) = 482
    1774         998 :       ijkl_sym(482) = 405
    1775             :       !                     dxy     dxy   -      dz2       s
    1776         998 :       ijkl_ind(45, 5) = 483
    1777         998 :       ijkl_sym(483) = 407
    1778             :       !                     dxy     dxy   -      dz2      pz
    1779         998 :       ijkl_ind(45, 13) = 484
    1780         998 :       ijkl_sym(484) = 408
    1781             :       !                     dxy     dxy   -      dz2     dz2
    1782         998 :       ijkl_ind(45, 31) = 485
    1783         998 :       ijkl_sym(485) = 409
    1784             :       !                     dxy     dxy   -      dzx      px
    1785         998 :       ijkl_ind(45, 21) = 486
    1786         998 :       ijkl_sym(486) = 410
    1787             :       !                     dxy     dxy   -      dzx     dzx
    1788         998 :       ijkl_ind(45, 36) = 487
    1789         998 :       ijkl_sym(487) = 411
    1790             :       !                     dxy     dxy   -      dzy      py
    1791         998 :       ijkl_ind(45, 28) = 488
    1792         998 :       ijkl_sym(488) = 410
    1793             :       !                     dxy     dxy   -      dzy     dzy
    1794         998 :       ijkl_ind(45, 40) = 489
    1795         998 :       ijkl_sym(489) = 411
    1796             :       !                     dxy     dxy   -   dx2-y2  dx2-y2
    1797         998 :       ijkl_ind(45, 43) = 490
    1798         998 :       ijkl_sym(490) = 415
    1799             :       !                     dxy     dxy   -      dxy     dxy
    1800         998 :       ijkl_ind(45, 45) = 491
    1801         998 :       ijkl_sym(491) = 414
    1802         998 :    END SUBROUTINE setup_ijkl_array
    1803             : 
    1804             : END MODULE semi_empirical_int_arrays

Generated by: LCOV version 1.15