54      s11,s22,s33,s12,s23,s13,ielem,mu,kappa)
 
   83   INTEGER :: 
j,
k,l,
m,ierr,ielem
 
   85   REAL*8 :: s11,s22,s33,s12,s13,s23
 
   86   REAL*8 :: shear_modulus
 
   88   REAL*8 :: cij(3,3), bulk, sqrt_n, cr, 
n 
   89   REAL*8 :: e_vec(3,3), sigma_a(3)
 
   90   REAL*8 :: e_val(3), e_chain, xi3, xmu, xxx, xmu_max, xjay
 
   91   REAL*8 :: fv1(3), fv2(3), stretch(3)
 
  138   CALL 
rs(3,3,cij,e_val,1,e_vec,fv1,fv2,ierr)
 
  140      print *,
' error occurs  at element ', ielem
 
  151   e_chain=
sqrt(stretch(1)**2+stretch(2)**2+stretch(3)**2) 
 
  152   e_chain=1.0d0/
sqrt(3.0d0)*(e_chain)
 
  161   xjay=  stretch(1)*stretch(2)*stretch(3)
 
  170   CALL 
solve_x(xxx,xmu,ielem,stretch)
 
  175      sigma_a(
k)=cr*sqrt_n*(stretch(
k)**2-e_chain**2)/ &
 
  176           e_chain*xxx  +  bulk*log(
sqrt(xi3))  
 
  189      fact = xjay * sigma_a(
k) / (stretch(
k)**2)
 
  191      s11 = s11 + e_vec(1,
k) * e_vec(1,
k) * fact
 
  192      s22 = s22 + e_vec(2,
k) * e_vec(2,
k) * fact
 
  193      s33 = s33 + e_vec(3,
k) * e_vec(3,
k) * fact
 
  194      s12 = s12 + e_vec(1,
k) * e_vec(2,
k) * fact
 
  195      s23 = s23 + e_vec(2,
k) * e_vec(3,
k) * fact
 
  196      s13 = s13 + e_vec(1,
k) * e_vec(3,
k) * fact
 
  226   REAL*8 x, xmu, f, fp, 
dx, x0
 
  227   REAL*8 sinh, cosh, coth 
 
  235 10 sinh = (exp(
x) - exp(-
x))*0.5d0
 
  236   cosh = (exp(
x) + exp(-
x))*0.5d0
 
  238   f = coth -1.d0/
x - xmu
 
  239   IF(abs(f) .LE. 1.0
d-10) go to 20
 
  240   fp = -1.d0/(sinh**2) + 1.d0/(
x**2)
 
  244   IF(iter .GT. 10000) 
THEN 
  245      print *,
' iteration exceeds 10000' 
  246      print *,
' program stop ! ' 
  248      WRITE(*,*) (stretch(
k),
k=1,3) 
 
  259 SUBROUTINE rs(nm,n,a,w,matz,z,fv1,fv2,ierr)
 
  263   INTEGER n,nm,ierr,matz
 
  264   REAL*8  a(nm,
n),w(
n),
z(nm,
n),fv1(
n),fv2(
n)
 
  313   IF (
n .LE. nm) go to 10
 
  317 10 
IF (matz .NE. 0) go to 20
 
  322 CALL  
tql1(
n,w,fv1,ierr)
 
  326 CALL  
tql2(nm,
n,w,fv1,
z,ierr)
 
  346   p = dmax1(abs(
a),abs(
b))
 
  347   IF (p .EQ. 0.0d0) go to 20
 
  348   r = (dmin1(abs(
a),abs(
b))/p)**2
 
  351   IF (t .EQ. 4.0d0) go to 20
 
  415   INTEGER i,
j,l,
m,
n,ii,l1,l2,mml,ierr
 
  417   REAL*8 c,c2,c3,dl1,el1,f,
g,h,p,
r,
s,s2,tst1,tst2,
pythag 
  424   IF (
n .EQ. 1) go to 1001
 
  435         h = abs(
d(l)) + abs(e(l))
 
  436         IF (tst1 .LT. h) tst1 = h
 
  439            tst2 = tst1 + abs(e(
m))
 
  440            IF (tst2 .EQ. tst1) go to 120
 
  445 120        
IF (
m .EQ. l) go to 210
 
  446 130        
IF (
j .EQ. 30) go to 1000
 
  452          p = (
d(l1) - 
g) / (2.0d0 * e(l))
 
  454          d(l) = e(l) / (p + 
sign(
r,p))
 
  455          d(l1) = e(l) * (p + 
sign(
r,p))
 
  458          IF (l2 .GT. 
n) go to 145
 
  487          p = -
s * s2 * c3 * el1 * e(l) / dl1
 
  490          tst2 = tst1 + abs(e(l))
 
  491          IF (tst2 .GT. tst1) go to 130
 
  494          IF (l .EQ. 1) go to 250
 
  498             IF (p .GE. 
d(
i-1)) go to 270
 
  512       SUBROUTINE tql2(nm,n,d,e,z,ierr)
 
  583       INTEGER i,
j,
k,l,
m,
n,ii,l1,l2,nm,mml,ierr
 
  584       REAL*8 d(
n),e(
n),
z(nm,
n)
 
  585       REAL*8 c,c2,c3,dl1,el1,f,
g,h,p,
r,
s,s2,tst1,tst2,
pythag 
  590       IF (
n .EQ. 1) go to 1001
 
  601          h = abs(
d(l)) + abs(e(l))
 
  602          IF (tst1 .LT. h) tst1 = h
 
  605             tst2 = tst1 + abs(e(
m))
 
  606             IF (tst2 .EQ. tst1) go to 120
 
  611   120    
IF (
m .EQ. l) go to 220
 
  612   130    
IF (
j .EQ. 30) go to 1000
 
  618          p = (
d(l1) - 
g) / (2.0d0 * e(l))
 
  620          d(l) = e(l) / (p + 
sign(
r,p))
 
  621          d(l1) = e(l) * (p + 
sign(
r,p))
 
  624          IF (l2 .GT. 
n) go to 145
 
  660          p = -
s * s2 * c3 * el1 * e(l) / dl1
 
  663          tst2 = tst1 + abs(e(l))
 
  664          IF (tst2 .GT. tst1) go to 130
 
  674             IF (
d(
j) .GE. p) go to 260
 
  679          IF (
k .EQ. 
i) go to 300
 
  701       INTEGER i,
j,
k,l,
n,ii,nm,jp1
 
  702       REAL*8 a(nm,
n),
d(
n),e(
n),e2(
n)
 
  763          IF (l .LT. 1) go to 130
 
  768          IF (
scale .NE. 0.0d0) go to 140
 
  791          IF (l .EQ. 1) go to 285
 
  798             g = e(
j) + 
a(
j,
j) * f
 
  800             IF (l .LT. jp1) go to 220
 
  804                e(
k) = e(
k) + 
a(
k,
j) * f
 
  820   250    e(
j) = e(
j) - h * 
d(
j)
 
  891       INTEGER i,
j,
k,l,
n,ii,nm,jp1
 
  892       REAL*8 a(nm,
n),
d(
n),e(
n),
z(nm,
n)
 
  903       IF (
n .EQ. 1) go to 510
 
  910          IF (l .LT. 2) go to 130
 
  915          IF (
scale .NE. 0.0d0) go to 140
 
  943             g = e(
j) + 
z(
j,
j) * f
 
  945             IF (l .LT. jp1) go to 220
 
  949                e(
k) = e(
k) + 
z(
k,
j) * f
 
  965   250    e(
j) = e(
j) - hh * 
d(
j)
 
  986          IF (h .EQ. 0.0d0) go to 380
 
  989   330    
d(
k) = 
z(
k,
i) / h
 
subroutine tql1(n, d, e, ierr)
subroutine rs(nm, n, a, w, matz, z, fv1, fv2, ierr)
static SURF_BEGIN_NAMESPACE double sign(double x)
subroutine tred2(nm, n, a, d, e, z)
subroutine tql2(nm, n, d, e, z, ierr)
subroutine tred1(nm, n, a, d, e, e2)
void scale(const Real &a, Nodal_data &x)
void int int int REAL REAL REAL * z
REAL *8 function pythag(a, b)
subroutine arruda_boyce(Cij, S11, S22, S33, S12, S23, S13, ielem, mu, kappa)
subroutine solve_x(x, xmu, i, stretch)