C CUBEBB    SOURCE    CHAT      07/10/22    21:15:33     5921
      SUBROUTINE CUBEBB(X,B,VOL)
      implicit real*8(A-H,O-Z)
      implicit integer (I-N)

*      SUBROUTINE CUBE_BB(X,B,VOL)
*
*
*      IMPLICIT NONE
*
*
*
*      REAL *8 UNS12
*
*      REAL *8 X(24)
*
*      REAL *8 B(3,8),VOL
*
*
*
*      INTEGER I,J

      DIMENSION X(24),B(3,8)
      UNS12=1.D0/12.D0
*
******* CALCUL DES MATRICES B_BARRE
*
      B(1,1)= X(5)*(X(18)-X(9)+X(15)-X(12))+X(8)*(X(6)-X(12))+
     & X(11)*(X(9)-X(24)+X(6)-X(15))+X(14)*(X(24)-X(18)+X(12)-X(6))+
     & X(17)*(X(15)-X(6))+X(23)*(X(12)-X(15))
*
      B(1,2)= X(8)*(X(21)-X(12)+X(18)-X(3))+X(11)*(X(9)-X(3))+
     & X(2)*(X(12)-X(15)+X(9)-X(18))+X(17)*(X(15)-X(21)+X(3)-X(9))+
     & X(20)*(X(18)-X(9))+X(14)*(X(3)-X(18))
*
      B(1,3)= X(11)*(X(24)-X(3)+X(21)-X(6))+X(2)*(X(12)-X(6))+
     & X(5)*(X(3)-X(18)+X(12)-X(21))+X(20)*(X(18)-X(24)+X(6)-X(12))+
     & X(23)*(X(21)-X(12))+X(17)*(X(6)-X(21))
*
      B(1,4)= X(2)*(X(15)-X(6)+X(24)-X(9))+X(5)*(X(3)-X(9))+
     & X(8)*(X(6)-X(21)+X(3)-X(24))+X(23)*(X(21)-X(15)+X(9)-X(3))+
     & X(14)*(X(24)-X(3))+X(20)*(X(9)-X(24))
*
      B(1,5)= X(23)*(X(12)-X(21)+X(3)-X(18))+X(20)*(X(24)-X(18))+
     & X(17)*(X(21)-X(6)+X(24)-X(3))+X(2)*(X(6)-X(12)+X(18)-X(24))+
     & X(11)*(X(3)-X(24))+X(5)*(X(18)-X(3))
*
      B(1,6)= X(14)*(X(3)-X(24)+X(6)-X(21))+X(23)*(X(15)-X(21))+
     & X(20)*(X(24)-X(9)+X(15)-X(6))+X(5)*(X(9)-X(3)+X(21)-X(15))+
     & X(2)*(X(6)-X(15))+X(8)*(X(21)-X(6))
*
      B(1,7)= X(17)*(X(6)-X(15)+X(9)-X(24))+X(14)*(X(18)-X(24))+
     & X(23)*(X(15)-X(12)+X(18)-X(9))+X(8)*(X(12)-X(6)+X(24)-X(18))+
     & X(5)*(X(9)-X(18))+X(11)*(X(24)-X(9))
*
      B(1,8)= X(20)*(X(9)-X(18)+X(12)-X(15))+X(17)*(X(21)-X(15))+
     & X(14)*(X(18)-X(3)+X(21)-X(12))+X(11)*(X(3)-X(9)+X(15)-X(21))+
     & X(8)*(X(12)-X(21))+X(2)*(X(15)-X(12))
*
*
*
      B(2,1)= X(6)*(X(16)-X(7)+X(13)-X(10))+X(9)*(X(4)-X(10))+
     & X(12)*(X(7)-X(22)+X(4)-X(13))+X(15)*(X(22)-X(16)+X(10)-X(4))+
     & X(18)*(X(13)-X(4))+X(24)*(X(10)-X(13))
*
      B(2,2)= X(9)*(X(19)-X(10)+X(16)-X(1))+X(12)*(X(7)-X(1))+
     & X(3)*(X(10)-X(13)+X(7)-X(16))+X(18)*(X(13)-X(19)+X(1)-X(7))+
     & X(21)*(X(16)-X(7))+X(15)*(X(1)-X(16))
*
      B(2,3)= X(12)*(X(22)-X(1)+X(19)-X(4))+X(3)*(X(10)-X(4))+
     & X(6)*(X(1)-X(16)+X(10)-X(19))+X(21)*(X(16)-X(22)+X(4)-X(10))+
     & X(24)*(X(19)-X(10))+X(18)*(X(4)-X(19))
*
      B(2,4)= X(3)*(X(13)-X(4)+X(22)-X(7))+X(6)*(X(1)-X(7))+
     & X(9)*(X(4)-X(19)+X(1)-X(22))+X(24)*(X(19)-X(13)+X(7)-X(1))+
     & X(15)*(X(22)-X(1))+X(21)*(X(7)-X(22))
*
      B(2,5)= X(24)*(X(10)-X(19)+X(1)-X(16))+X(21)*(X(22)-X(16))+
     & X(18)*(X(19)-X(4)+X(22)-X(1))+X(3)*(X(4)-X(10)+X(16)-X(22))+
     & X(12)*(X(1)-X(22))+X(6)*(X(16)-X(1))
*
      B(2,6)= X(15)*(X(1)-X(22)+X(4)-X(19))+X(24)*(X(13)-X(19))+
     & X(21)*(X(22)-X(7)+X(13)-X(4))+X(6)*(X(7)-X(1)+X(19)-X(13))+
     & X(3)*(X(4)-X(13))+X(9)*(X(19)-X(4))
*
      B(2,7)= X(18)*(X(4)-X(13)+X(7)-X(22))+X(15)*(X(16)-X(22))+
     & X(24)*(X(13)-X(10)+X(16)-X(7))+X(9)*(X(10)-X(4)+X(22)-X(16))+
     & X(6)*(X(7)-X(16))+X(12)*(X(22)-X(7))
*
      B(2,8)= X(21)*(X(7)-X(16)+X(10)-X(13))+X(18)*(X(19)-X(13))+
     & X(15)*(X(16)-X(1)+X(19)-X(10))+X(12)*(X(1)-X(7)+X(13)-X(19))+
     & X(9)*(X(10)-X(19))+X(3)*(X(13)-X(10))
*
*
*
      B(3,1)= X(4)*(X(17)-X(8)+X(14)-X(11))+X(7)*(X(5)-X(11))+
     & X(10)*(X(8)-X(23)+X(5)-X(14))+X(13)*(X(23)-X(17)+X(11)-X(5))+
     & X(16)*(X(14)-X(5))+X(22)*(X(11)-X(14))
*
      B(3,2)= X(7)*(X(20)-X(11)+X(17)-X(2))+X(10)*(X(8)-X(2))+
     & X(1)*(X(11)-X(14)+X(8)-X(17))+X(16)*(X(14)-X(20)+X(2)-X(8))+
     & X(19)*(X(17)-X(8))+X(13)*(X(2)-X(17))
*
      B(3,3)= X(10)*(X(23)-X(2)+X(20)-X(5))+X(1)*(X(11)-X(5))+
     & X(4)*(X(2)-X(17)+X(11)-X(20))+X(19)*(X(17)-X(23)+X(5)-X(11))+
     & X(22)*(X(20)-X(11))+X(16)*(X(5)-X(20))
*
      B(3,4)= X(1)*(X(14)-X(5)+X(23)-X(8))+X(4)*(X(2)-X(8))+
     & X(7)*(X(5)-X(20)+X(2)-X(23))+X(22)*(X(20)-X(14)+X(8)-X(2))+
     & X(13)*(X(23)-X(2))+X(19)*(X(8)-X(23))
*
      B(3,5)= X(22)*(X(11)-X(20)+X(2)-X(17))+X(19)*(X(23)-X(17))+
     & X(16)*(X(20)-X(5)+X(23)-X(2))+X(1)*(X(5)-X(11)+X(17)-X(23))+
     & X(10)*(X(2)-X(23))+X(4)*(X(17)-X(2))
*
      B(3,6)= X(13)*(X(2)-X(23)+X(5)-X(20))+X(22)*(X(14)-X(20))+
     & X(19)*(X(23)-X(8)+X(14)-X(5))+X(4)*(X(8)-X(2)+X(20)-X(14))+
     & X(1)*(X(5)-X(14))+X(7)*(X(20)-X(5))
*
      B(3,7)= X(16)*(X(5)-X(14)+X(8)-X(23))+X(13)*(X(17)-X(23))+
     & X(22)*(X(14)-X(11)+X(17)-X(8))+X(7)*(X(11)-X(5)+X(23)-X(17))+
     & X(4)*(X(8)-X(17))+X(10)*(X(23)-X(8))
*
      B(3,8)= X(19)*(X(8)-X(17)+X(11)-X(14))+X(16)*(X(20)-X(14))+
     & X(13)*(X(17)-X(2)+X(20)-X(11))+X(10)*(X(2)-X(8)+X(14)-X(20))+
     & X(7)*(X(11)-X(20))+X(1)*(X(14)-X(11))
*
*
******* CALCUL DU VOLUME DE L'ELEMENT
*
      VOL= UNS12*(B(1,1)*X(1)+B(1,2)*X(4)+B(1,3)*X(7)+B(1,4)*X(10)+
     &  B(1,5)*X(13)+B(1,6)*X(16)+B(1,7)*X(19)+B(1,8)*X(22))
*
******* CALCUL DES MATRICES B
*
      DO J=1,3
         DO I=1,8
              B(J,I)= UNS12*B(J,I)/VOL
         END DO
      END DO
*
*
      RETURN
      END


