1 SUBROUTINE OFFSET_ccsdt_lr_alpha_offdiag_13_1_3_1(l_a_offset,k_a_o 2 &ffset,size) 3C $Id$ 4C This is a Fortran77 program generated by Tensor Contraction Engine v.1.0 5C Copyright (c) Battelle & Pacific Northwest National Laboratory (2002) 6C i3 ( h8 h13 h12 p3 )_yt 7 IMPLICIT NONE 8#include "global.fh" 9#include "mafdecls.fh" 10#include "sym.fh" 11#include "errquit.fh" 12#include "tce.fh" 13 INTEGER l_a_offset 14 INTEGER k_a_offset 15 INTEGER size 16 INTEGER length 17 INTEGER addr 18 INTEGER h8b 19 INTEGER h13b 20 INTEGER h12b 21 INTEGER p3b 22 length = 0 23 DO h8b = 1,noab 24 DO h13b = h8b,noab 25 DO h12b = 1,noab 26 DO p3b = noab+1,noab+nvab 27 IF (int_mb(k_spin+h8b-1)+int_mb(k_spin+h13b-1) .eq. int_mb(k_spin+ 28 &h12b-1)+int_mb(k_spin+p3b-1)) THEN 29 IF (ieor(int_mb(k_sym+h8b-1),ieor(int_mb(k_sym+h13b-1),ieor(int_mb 30 &(k_sym+h12b-1),int_mb(k_sym+p3b-1)))) .eq. ieor(irrep_y,irrep_t)) 31 &THEN 32 IF ((.not.restricted).or.(int_mb(k_spin+h8b-1)+int_mb(k_spin+h13b- 33 &1)+int_mb(k_spin+h12b-1)+int_mb(k_spin+p3b-1).ne.8)) THEN 34 length = length + 1 35 END IF 36 END IF 37 END IF 38 END DO 39 END DO 40 END DO 41 END DO 42 IF (.not.MA_PUSH_GET(mt_int,2*length+1,'noname',l_a_offset,k_a_off 43 &set)) CALL ERRQUIT('ccsdt_lr_alpha_offdiag_13_1_3_1',0,MA_ERR) 44 int_mb(k_a_offset) = length 45 addr = 0 46 size = 0 47 DO h8b = 1,noab 48 DO h13b = h8b,noab 49 DO h12b = 1,noab 50 DO p3b = noab+1,noab+nvab 51 IF (int_mb(k_spin+h8b-1)+int_mb(k_spin+h13b-1) .eq. int_mb(k_spin+ 52 &h12b-1)+int_mb(k_spin+p3b-1)) THEN 53 IF (ieor(int_mb(k_sym+h8b-1),ieor(int_mb(k_sym+h13b-1),ieor(int_mb 54 &(k_sym+h12b-1),int_mb(k_sym+p3b-1)))) .eq. ieor(irrep_y,irrep_t)) 55 &THEN 56 IF ((.not.restricted).or.(int_mb(k_spin+h8b-1)+int_mb(k_spin+h13b- 57 &1)+int_mb(k_spin+h12b-1)+int_mb(k_spin+p3b-1).ne.8)) THEN 58 addr = addr + 1 59 int_mb(k_a_offset+addr) = p3b - noab - 1 + nvab * (h12b - 1 + noab 60 & * (h13b - 1 + noab * (h8b - 1))) 61 int_mb(k_a_offset+length+addr) = size 62 size = size + int_mb(k_range+h8b-1) * int_mb(k_range+h13b-1) * int 63 &_mb(k_range+h12b-1) * int_mb(k_range+p3b-1) 64 END IF 65 END IF 66 END IF 67 END DO 68 END DO 69 END DO 70 END DO 71 RETURN 72 END 73