54      dbm,dbb, dbd, dmm,dmb,dmd, ddm, ddb, ddd, a2, am, l_bar)
 
   59   REAL*8, 
DIMENSION(1:6,1:6) :: lo, lm, l2
 
   63   REAL*8, 
DIMENSION(1:6,1:6) :: mo
 
   64   REAL*8, 
DIMENSION(1:6,1:6) :: mm, m2
 
   65   REAL*8, 
DIMENSION(1:6,1:6) :: p
 
   66   REAL*8, 
DIMENSION(1:6,1:6) :: 
s, sinv,si
 
   67   REAL*8, 
DIMENSION(1:6,1:6) :: 
a,
b, lst
 
   68   REAL*8 , 
DIMENSION(1:6,1:6) :: l, 
m 
   70   REAL*8, 
DIMENSION(1:6,1:6) :: dbm, dbb, dbd, dmm,dmb,dmd, ddm, ddb, ddd
 
   71   REAL*8, 
DIMENSION(1:6,1:6) :: a2, am , 
c 
   73   REAL*8, 
DIMENSION(1:6,1:6) :: l_bar, lrlbarinv
 
   80   REAL*8, 
DIMENSION(1:6,1:6) :: dident = reshape( &
 
   81        (/1.d0, 0.d0, 0.d0, 0.d0, 0.d0, 0.d0, &
 
   82          0.d0, 1.d0, 0.d0, 0.d0, 0.d0, 0.d0, &
 
   83          0.d0, 0.d0, 1.d0, 0.d0, 0.d0, 0.d0, &
 
   84          0.d0, 0.d0, 0.d0, 1.d0, 0.d0, 0.d0, &
 
   85          0.d0, 0.d0, 0.d0, 0.d0, 1.d0, 0.d0, &
 
   86          0.d0, 0.d0, 0.d0, 0.d0, 0.d0, 1.d0 /),(/6,6/) )
 
  152         c(
i,
j) = cm*am(
i,
j) + (cb + cd)*a2(
i,
j)
 
  153         IF (
i.EQ.
j .AND. (
c(
i,
j) <= 0.9999 .OR. 
c(
i,
j) >=  1.00001))
THEN 
  154            print*,
'Incorrect Transformation tensors Am, A2' 
  157         IF (
i .NE. 
j .AND. (
c(
i,
j) >= 1.000e-4 .OR. 
c(
i,
j) <= -1.000e-4))
THEN 
  158            print*,
'Incorrect Transformation tensors Am, A2' 
  173   c = dident - cm*transpose(am)
 
  175   b = matmul(
a, lrlbarinv)
 
  191  c = -1.d0*cb*transpose(a2)
 
  193  b = matmul(
a, lrlbarinv)
 
  209  c = -1.d0*cd*transpose(a2)
 
  211  b = matmul(
a, lrlbarinv)
 
  234  c = dident - cb*transpose(a2) 
 
  236  b = matmul(
a, lrlbarinv)
 
  253  c = -1.d0*cm*transpose(am)
 
  255  b = matmul(
a, lrlbarinv)
 
  272  c = -1.d0*cd*transpose(a2)
 
  274  b = matmul(
a, lrlbarinv)
 
  292  c = dident - cd*transpose(a2)
 
  294  b = matmul(
a, lrlbarinv)
 
  311  c = -1.d0*cm*transpose(am)
 
  313  b = matmul(
a, lrlbarinv)
 
  329  c = - 1.d0*cb*transpose(a2)
 
  331  b = matmul(
a, lrlbarinv)
 
  354        si(
i,
j) = dident(
i,
j) - a2(
i,
j)
 
  360           print*,
'Incorrect Concentration tensors SUM_s=1^N Drs = I - Ar' 
  383        IF( 
b(
i,
j) >= 1.000e-10 .OR. 
b(
i,
j) <= -1.00e-10)
THEN 
  384           print*,
'A) Incorrect Concentration tensors | SUM_s=1^N Drs*Ms = 0' 
  404        IF( 
a(
i,
j) >= 1.000e-10 .OR. 
a(
i,
j) <= -1.00e-10)
THEN 
  405           print*,
'B) Incorrect Concentration tensors | SUM_s=1^N Drs*Ms = 0' 
  426        IF( 
a(
i,
j) >= 1.000e-10 .OR. 
a(
i,
j) <= -1.00e-10)
THEN 
  427           print*,
'C) Incorrect Concentration tensors | SUM_s=1^N Drs*Ms = 0' 
  444           print*,
'a) Incorrect Concentration tensors | cr*Drs*Ms = cs*Mr*Dsr' 
  463           print*,
'b) Incorrect Concentration tensors | cr*Drs*Ms = cs*Mr*Dsr' 
  473        a(
i,
j) = cm*dmm(
i,
j) + cb*dbm(
i,
j) + cd*ddm(
i,
j)
 
  474        b(
i,
j) = cm*dmb(
i,
j) + cb*dbb(
i,
j) + cd*ddb(
i,
j)
 
  475        c(
i,
j) = cm*dmd(
i,
j) + cb*dbd(
i,
j) + cd*ddd(
i,
j)
 
  476        IF(
a(
i,
j) >= 1.000e-10 .OR. 
a(
i,
j) <= -1.000e-10 .OR. &
 
  477             b(
i,
j) >= 1.000e-10 .OR. 
b(
i,
j) <= -1.000e-10 .OR. &
 
  478             c(
i,
j) >= 1.000e-10 .OR. 
c(
i,
j) <= -1.000e-10)
THEN 
  479           print*,
'c) Incorrect Concentration tensors | SUM_s=1^N cs*Dsr = 0' 
  562   REAL*8, 
DIMENSION(1:ndim,1:ndim) :: 
b 
  563   REAL*8, 
DIMENSION(1:ndim) :: 
a,
c 
  570   REAL*8, 
DIMENSION(1:ndim) :: sum2
 
  578            sum1 = sum1 + 
b(
j,
k)*
c(
k) 
 
  582      scaler = scaler + sum2(
i)*
a(
i)
 
subroutine vecmatvecmul(a, B, c, ndim, scaler)
 
subroutine a_d_tensors(Lo, Lm, L2, Mm, M2, cm, cb, cd, Dbm, Dbb, Dbd, Dmm, Dmb, Dmd, Ddm, Ddb, Ddd, A2, Am, L_bar)
 
subroutine eshelby(Shape, Mo, Lo, P, S)
 
subroutine invert2(Inv_in, a, nrow)