[f2py] f2py compilation problem

Hariprasath Ganesan <[email protected]> Tue, 6 Nov 2012 12:37:53 +0100
Newsgroups gmane.comp.python.f2py.user
Message-ID <CA+hFtnV6rp3uANGZugoS9D_kTzbz8w77CmwyVBkbqkodZZygBQ@mail.gmail.com>
--===============6939826838662489379==
Content-Type: multipart/alternative; boundary=0016e6dd993e563f1404cdd208a4

--0016e6dd993e563f1404cdd208a4
Content-Type: text/plain; charset=ISO-8859-1

Hi everybody,

I have recently written a subroutine in Fortran(f90) and tried to compile
it using f2py...I am encountering a strange error as follows..

getctype: No C-type found in "{}", assuming void.
getctype: No C-type found in "{}", assuming void.
getctype: No C-type found in "{}", assuming void.
getctype: No C-type found in "{}", assuming void.
getctype: No C-type found in "{}", assuming void.

I have printed my Fortran code below.....Kindly help me out to fix the
issue ....

------------------------------------------------Fortran
Code---------------------------------------------------------------------------------------------------------
SUBROUTINE
umat(amat,iel,iint,kode,elconloc,emec,emec0,beta,xokl,voj,xkl,vjithermal,t1
,dtime,time,ttime,icmd,ielas,mi,nstate_,xstateini,xstate,stre,stiff,iorien,pgauss,orab)
!
      IMPLICIT NONE
!
      CHARACTER*80 amat
!
      INTEGER
::ithermal,icmd,kode,ielas,iel,iint,nstate_,mi(*),iorien,n,i,fk
      REAL    ::
k,mu,lam,mu_elas,lam_elas,a,b,c,max_v,d1,d2,e,e_eq,f1,f2,tau,
      ,stiff_max1=0.D0,stiff_max2=0.D0,g1,g2,tr,m1,m2,n1
      REAL    ::  xstate,xstateini
      REAL    ::  elconloc(21),stiff(21),emec(6),emec0(6),beta(6),stre(6),
EpsElas(6)

,t1l(6),vj,dtime,xkl(3,3),xokl(3,3),voj,pgauss(3),orab(7,*),time,ttime
!
!---------------------     Material parameter definition
----------------------!
      n1 = elconloc(1)
      n = INT(n1)
      REAL    ::  valu(n),rel(n),stres_max(6),evis(6),vis_new(6)
!------------------------------------------------------------------------------!
!                         USER DEFINED
VARIABLES                               !
!------------------------------------------------------------------------------!
!                      valu -array which stores shear moduli in dashpot
elements
!                      rel  -array which stores the relaxation time
!                        k  -stores the maximum value of shear moduli
!       mu_elas & lam_elas  -Lame parameters for Equilibrium Spring
!                 mu & lam  -Lame parameter for 'n'th Maxwell Elem during
loop.
!                        e  -Young's modulus of 'n'th Maxwell Spring
!                        tr -trace of strain (emec)
!   d1,d2,f1,f2,g1,g2,m1,m2 -variables to store the internal computation
!
!------------------------------------------------------------------------------c
!                         f2py - argument
definitions                          c
!------------------------------------------------------------------------------c
!
!f2py intent(in)    ::  amat,elconloc,emec,emec0,dtime,time,ttime,icmd,ielas
!f2py intent(in)    ::  mi,nstate_,xstateini
!f2py intent(in,out)::  xstate,stres,stiff
!f2py depend(emec)  ::  stres
!
!----- Loop to read and store the material properties
-------------------------c
!
!****** Shear Moduli
!
      DO i=2,n+1
           valu(i-1)=elconloc(i)
      END DO
!
!****** Relaxation time
!
      DO i=n+2,(n*2)+1
           rel(i-n-1)=elconloc(i)
      END DO
!
!
!--------- calling utility subroutine to compute the maximum of shear
moduli---c
!
      CALL maximum(valu,n,max_v)
!
      k=100.D0*max_v
!
!-----------  Tangent stiffness  entries  For Equilibrium Spring
------------c
!
      fk=(2*n)+2
      e_eq=elconloc(fk)
      mu_elas=(3.D0*k*e_eq)/((9.D0*k)-e_eq)
      lam_elas=(3.D0*k*(3.D0*k-e_eq))/((9.D0*k)-e_eq)
!
      tr=emec(1)+emec(2)+emec(3)
!
!****** Outer Loop over all Maxwell elements
!
      DO i=1,n
!
!***** To read the state variables during the start of the incrementc
         evis=xstateini
!***** Computing lame parameter for maxwell element
*************************c
         mu=valu(i)
         tau=rel(i)
         d1=9.D0*mu*k
         d2=(3.D0*k)+mu
         e=d1/d2
         f1=(3.D0*k)*((3.D0*k)-e)
         f2=(9.D0*k)-e
         lam=f1/f2
!
!****** Calling utility subroutine to get state variable
**********************c
!
         CALL visc_strain(dtime,tau, emec,evis,vis_new)
!
!****** Inner loop to update state variable & compute non-equilibrium
stress **c
!
         DO p=1,6
             m1=lam*tr
             m2=(2.D0*mu)*(emec(p)-vis_new(p))
             stres_max(p)=stres_max(p)+(m1+m2)
         END DO
         xstate=vis_new
!
!-----------  Tangent stiffness entries  For Maxwell Elements
---------------c
!
         g1=tau/(tau+dtime)
         g2=(2.D0*mu)*g1
         stiff_max1=stiff_max1+g2
         stiff_max2=stiff_max2+lam
!
      END DO
!
!------------------------------------------------------------------------------c
!                         Stress Computation
!------------------------------------------------------------------------------c
!
      DO i=1,6
            stre(i)=(2.D0*mu_elas*emec(i))+(lam_elas*tr)+stres_max(i)
      END DO
!
!----------------- Assembly of Tangent Stiffness Matrix
-----------------------c
!
      IF(icmd.NE.3) THEN
!*****************************  ROW-1
***************************************c
          stiff(1)=(2.D0*mu_elas)+lam_elas+stiff_max1+stiff_max2
          stiff(2)=lam_elas+stiff_max2
          stiff(3)=lam_elas+stiff_max2
          stiff(4)=0.D0
          stiff(5)=0.D0
          stiff(6)=0.D0
!*****************************   ROW-2
***************************************c
          stiff(7)=(2.D0*mu_elas)+lam_elas+stiff_max1+stiff_max2
          stiff(8)=lam_elas+stiff_max2
          stiff(9)=0.D0
          stiff(10)=0.D0
          stiff(11)=0.D0
!*****************************   ROW-3
***************************************c
          stiff(12)=(2.D0*mu_elas)+lam_elas+stiff_max1+stiff_max2
          stiff(13)=0.D0
          stiff(14)=0.D0
          stiff(15)=0.D0
!*****************************   ROW-4
***************************************c
          stiff(16)=mu_elas+stiff_max1
          stiff(17)=0.D0
          stiff(18)=0.D0
!*****************************   ROW-5
***************************************c
          stiff(19)=mu_elas+stiff_max1
          stiff(20)=0.D0
!*****************************   ROW-6
***************************************c
          stiff(21)=mu_elas+stiff_max1
      END IF
!RETURN
END SUBROUTINE
!
!******************************************************************************c
!                           Utility
subroutines                                c
!******************************************************************************c
!
!
!
!------------------------------------------------------------------------------c
!         Utility subroutine to compute the maximum of Shear
moduli            c
!------------------------------------------------------------------------------c
SUBROUTINE maximum(valu,n,max_v)
      IMPLICIT NONE
      DO i=1,n
         IF(i.EQ.1) THEN
            a=valu(i)
            b=valu(i+1)
!
            IF(a.GT.b) THEN
               c=a
!
            ELSE
               c=b
            END IF
!
         END IF
!
         IF(i.NE.1) THEN
            a=valu(i)
            b=c
!
            IF(a.GT.b) THEN
               c=a
!
            ELSE
               c=b
            END IF
!
         END IF
         max_v=c
      END DO
!RETURN
END SUBROUTINE
!
!------------------------------------------------------------------------------c
! Utility subroutine to compute viscous-strain(internal variable) in
! each Maxwell element using Backward Euler time integration scheme
!------------------------------------------------------------------------------c
SUBROUTINE visc_strain(dtime,tau, emec,evis,vis_new)
      IMPLICIT NONE
      a=dtime/(dtime+tau)
      DO i=1,6
          vis_new(i)=(emec(i)+evis(i))*a
      END DO
!RETURN
END SUBROUTINE

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Awaiting your help guys.....thanks in advance...................

kind regards,
Hari.

--0016e6dd993e563f1404cdd208a4
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Hi everybody,<br><br>I have recently written a subroutine in Fortran(f90) a=
nd tried to compile it using f2py...I am encountering a strange error as fo=
llows..<br><br>getctype: No C-type found in &quot;{}&quot;, assuming void.<=
br>
getctype: No C-type found in &quot;{}&quot;, assuming void.<br>getctype: No=
 C-type found in &quot;{}&quot;, assuming void.<br>getctype: No C-type foun=
d in &quot;{}&quot;, assuming void.<br>getctype: No C-type found in &quot;{=
}&quot;, assuming void.<br>
<br>I have printed my Fortran code below.....Kindly help me out to fix the =
issue ....<br><br>------------------------------------------------Fortran C=
ode------------------------------------------------------------------------=
---------------------------------<br>
SUBROUTINE umat(amat,iel,iint,kode,elconloc,emec,emec0,beta,xokl,voj,xkl,vj=
ithermal,t1<br>,dtime,time,ttime,icmd,ielas,mi,nstate_,xstateini,xstate,str=
e,stiff,iorien,pgauss,orab)<br>!<br>=A0=A0=A0=A0=A0 IMPLICIT NONE <br>!<br>=
=A0=A0=A0=A0=A0 CHARACTER*80 amat<br>
!=A0=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0 INTEGER ::ithermal,icmd,kode,ielas,=
iel,iint,nstate_,mi(*),iorien,n,i,fk<br>=A0=A0=A0=A0=A0 REAL=A0=A0=A0 ::=A0=
 k,mu,lam,mu_elas,lam_elas,a,b,c,max_v,d1,d2,e,e_eq,f1,f2,tau,<br>=A0=A0=A0=
=A0=A0 ,stiff_max1=3D0.D0,stiff_max2=3D0.D0,g1,g2,tr,m1,m2,n1<br>
=A0=A0=A0=A0=A0 REAL=A0=A0=A0 ::=A0 xstate,xstateini=A0=A0=A0=A0=A0 <br>=A0=
=A0=A0=A0=A0 REAL=A0=A0=A0 ::=A0 elconloc(21),stiff(21),emec(6),emec0(6),be=
ta(6),stre(6), EpsElas(6)<br>=A0=A0=A0=A0=A0 ,t1l(6),vj,dtime,xkl(3,3),xokl=
(3,3),voj,pgauss(3),orab(7,*),time,ttime=A0=A0=A0=A0=A0 <br>!=A0=A0=A0=A0=
=A0 <br>
!---------------------=A0=A0=A0=A0 Material parameter definition ----------=
------------!<br>=A0=A0=A0=A0=A0 n1 =3D elconloc(1)<br>=A0=A0=A0=A0=A0 n =
=3D INT(n1)<br>=A0=A0=A0=A0=A0 REAL=A0=A0=A0 ::=A0 valu(n),rel(n),stres_max=
(6),evis(6),vis_new(6)<br>!------------------------------------------------=
------------------------------!<br>
!=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 U=
SER DEFINED VARIABLES=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 ! <br>!-------------------------------=
-----------------------------------------------!<br>!=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 valu -array which stores shear m=
oduli in dashpot elements=A0=A0=A0=A0=A0 <br>
!=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 rel=A0 -ar=
ray which stores the relaxation time <br>!=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 k=A0 -stores the maximum value of shea=
r moduli<br>!=A0=A0=A0=A0=A0=A0 mu_elas &amp; lam_elas=A0 -Lame parameters =
for Equilibrium Spring<br>!=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
 mu &amp; lam=A0 -Lame parameter for &#39;n&#39;th Maxwell Elem during loop=
.<br>
!=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 e=A0=
 -Young&#39;s modulus of &#39;n&#39;th Maxwell Spring<br>!=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 tr -trace of strain =
(emec)<br>!=A0=A0 d1,d2,f1,f2,g1,g2,m1,m2 -variables to store the internal =
computation<br>!<br>!------------------------------------------------------=
------------------------c<br>
!=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 f=
2py - argument definitions=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0 c<br>!-----------------------------------------=
-------------------------------------c<br>!<br>!f2py intent(in)=A0=A0=A0 ::=
=A0 amat,elconloc,emec,emec0,dtime,time,ttime,icmd,ielas<br>
!f2py intent(in)=A0=A0=A0 ::=A0 mi,nstate_,xstateini<br>!f2py intent(in,out=
)::=A0 xstate,stres,stiff<br>!f2py depend(emec)=A0 ::=A0 stres=A0=A0=A0=A0=
=A0=A0 <br>!<br>!----- Loop to read and store the material properties -----=
--------------------c<br>
!<br>!****** Shear Moduli<br>!=A0=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0 DO i=
=3D2,n+1<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 valu(i-1)=3Delconloc(i)<br>=A0=
=A0=A0=A0=A0 END DO<br>!<br>!****** Relaxation time=A0=A0=A0=A0=A0=A0 <br>!=
=A0=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0 DO i=3Dn+2,(n*2)+1<br>=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0 rel(i-n-1)=3Delconloc(i)<br>
=A0=A0=A0=A0=A0 END DO<br>!=A0=A0=A0=A0=A0=A0 <br>!=A0=A0=A0=A0=A0 <br>!---=
------ calling utility subroutine to compute the maximum of shear moduli---=
c=A0=A0=A0=A0=A0 <br>!<br>=A0=A0=A0=A0=A0 CALL maximum(valu,n,max_v)<br>!=
=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0 k=3D100.D0*max_v<br>!<br>!-----------=
=A0 Tangent stiffness=A0 entries=A0 For Equilibrium Spring=A0=A0 ----------=
--c<br>
!<br>=A0=A0=A0=A0=A0 fk=3D(2*n)+2<br>=A0=A0=A0=A0=A0 e_eq=3Delconloc(fk)<br=
>=A0=A0=A0=A0=A0 mu_elas=3D(3.D0*k*e_eq)/((9.D0*k)-e_eq)<br>=A0=A0=A0=A0=A0=
 lam_elas=3D(3.D0*k*(3.D0*k-e_eq))/((9.D0*k)-e_eq)<br>!<br>=A0=A0=A0=A0=A0 =
tr=3Demec(1)+emec(2)+emec(3) <br>!<br>!****** Outer Loop over all Maxwell e=
lements=A0=A0=A0=A0=A0=A0 <br>
!<br>=A0=A0=A0=A0=A0 DO i=3D1,n<br>!=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 <br>!=
***** To read the state variables during the start of the incrementc=A0=A0=
=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0 evis=3Dxstateini<br>!***** Computing=
 lame parameter for maxwell element *************************c<br>
=A0=A0=A0=A0=A0=A0=A0=A0 mu=3Dvalu(i)<br>=A0=A0=A0=A0=A0=A0=A0=A0 tau=3Drel=
(i)<br>=A0=A0=A0=A0=A0=A0=A0=A0 d1=3D9.D0*mu*k<br>=A0=A0=A0=A0=A0=A0=A0=A0 =
d2=3D(3.D0*k)+mu<br>=A0=A0=A0=A0=A0=A0=A0=A0 e=3Dd1/d2<br>=A0=A0=A0=A0=A0=
=A0=A0=A0 f1=3D(3.D0*k)*((3.D0*k)-e)<br>=A0=A0=A0=A0=A0=A0=A0=A0 f2=3D(9.D0=
*k)-e<br>=A0=A0=A0=A0=A0=A0=A0=A0 lam=3Df1/f2<br>!<br>!****** Calling utili=
ty subroutine to get state variable **********************c=A0=A0=A0=A0=A0=
=A0 <br>
!=A0=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0 CALL visc_strain(dtime,tau=
, emec,evis,vis_new)=A0=A0=A0=A0=A0=A0 <br>!=A0=A0=A0=A0=A0=A0 <br>!****** =
Inner loop to update state variable &amp; compute non-equilibrium stress **=
c=A0=A0=A0=A0=A0=A0=A0 <br>!=A0=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0=
 DO p=3D1,6<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 m1=3Dlam*tr=A0=A0=A0=A0=
=A0=A0=A0 <br>
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 m2=3D(2.D0*mu)*(emec(p)-vis_new(p))=A0=
=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 stres_max(p)=3Dstr=
es_max(p)+(m1+m2)<br>=A0=A0=A0=A0=A0=A0=A0=A0 END DO<br>=A0=A0=A0=A0=A0=A0=
=A0=A0 xstate=3Dvis_new<br>!<br>!-----------=A0 Tangent stiffness entries=
=A0 For Maxwell Elements=A0=A0 ---------------c<br>
!=A0=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0 g1=3Dtau/(tau+dtime)<br>=
=A0=A0=A0=A0=A0=A0=A0=A0 g2=3D(2.D0*mu)*g1<br>=A0=A0=A0=A0=A0=A0=A0=A0 stif=
f_max1=3Dstiff_max1+g2<br>=A0=A0=A0=A0=A0=A0=A0=A0 stiff_max2=3Dstiff_max2+=
lam<br>!<br>=A0=A0=A0=A0=A0 END DO<br>!<br>!-------------------------------=
-----------------------------------------------c<br>
!=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 S=
tress Computation<br>!-----------------------------------------------------=
-------------------------c<br>!=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0 DO i=3D1=
,6<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 stre(i)=3D(2.D0*mu_elas*emec(i))+(l=
am_elas*tr)+stres_max(i)<br>
=A0=A0=A0=A0=A0 END DO<br>!<br>!----------------- Assembly of Tangent Stiff=
ness Matrix -----------------------c<br>!<br>=A0=A0=A0=A0=A0 IF(icmd.NE.3) =
THEN=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 <br>!*****************************=
=A0 ROW-1=A0 ***************************************c=A0=A0=A0=A0=A0=A0=A0=
=A0 <br>
=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(1)=3D(2.D0*mu_elas)+lam_elas+stiff_max1+s=
tiff_max2<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(2)=3Dlam_elas+stiff_max2<br>=
=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(3)=3Dlam_elas+stiff_max2<br>=A0=A0=A0=A0=
=A0=A0=A0=A0=A0 stiff(4)=3D0.D0<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(5)=3D0=
.D0<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(6)=3D0.D0<br>
!*****************************=A0=A0 ROW-2=A0 *****************************=
**********c=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(7)=3D(2.D0=
*mu_elas)+lam_elas+stiff_max1+stiff_max2<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 sti=
ff(8)=3Dlam_elas+stiff_max2<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(9)=3D0.D0<=
br>
=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(10)=3D0.D0<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=
 stiff(11)=3D0.D0=A0=A0=A0=A0 <br>!*****************************=A0=A0 ROW-=
3=A0 ***************************************c=A0=A0=A0=A0=A0 <br>=A0=A0=A0=
=A0=A0=A0=A0=A0=A0 stiff(12)=3D(2.D0*mu_elas)+lam_elas+stiff_max1+stiff_max=
2<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(13)=3D0.D0<br>
=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(14)=3D0.D0<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=
 stiff(15)=3D0.D0<br>!*****************************=A0=A0 ROW-4=A0 ********=
*******************************c <br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(16)=
=3Dmu_elas+stiff_max1<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(17)=3D0.D0<br>=
=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(18)=3D0.D0=A0=A0=A0 <br>
!*****************************=A0=A0 ROW-5=A0 *****************************=
**********c=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(19)=3Dmu_e=
las+stiff_max1<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(20)=3D0.D0=A0=A0=A0=A0=
=A0 <br>!*****************************=A0=A0 ROW-6=A0 *********************=
******************c=A0=A0=A0=A0=A0 <br>
=A0=A0=A0=A0=A0=A0=A0=A0=A0 stiff(21)=3Dmu_elas+stiff_max1<br>=A0=A0=A0=A0=
=A0 END IF <br>!RETURN<br>END SUBROUTINE<br>!=A0=A0=A0=A0=A0 <br>!*********=
*********************************************************************c<br>!=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0 Utility subroutines=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 c<br>
!**************************************************************************=
****c<br>!<br>!<br>!<br>!--------------------------------------------------=
----------------------------c<br>!=A0=A0=A0=A0=A0=A0=A0=A0 Utility subrouti=
ne to compute the maximum of Shear moduli=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 =
c<br>
!--------------------------------------------------------------------------=
----c<br>SUBROUTINE maximum(valu,n,max_v)<br>=A0=A0=A0=A0=A0 IMPLICIT NONE=
=A0=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0 DO i=3D1,n<br>=A0=A0=A0=A0=A0=A0=A0=
=A0 IF(i.EQ.1) THEN<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 a=3Dvalu(i)<br>
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 b=3Dvalu(i+1)<br>!<br>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0 IF(a.GT.b) THEN<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
=A0 c=3Da=A0=A0=A0=A0=A0=A0 <br>!<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 ELSE=
 <br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 c=3Db<br>=A0=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0 END IF<br>!=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0 END=
 IF<br>!=A0=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0 IF(i.NE.1) THEN<br>
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 a=3Dvalu(i)<br>=A0=A0=A0=A0=A0=A0=A0=A0=
=A0=A0=A0 b=3Dc<br>!=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 I=
F(a.GT.b) THEN<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 c=3Da<br>!=A0=
=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 ELSE<br>=A0=A0=A0=A0=A0=
=A0=A0=A0=A0=A0=A0=A0=A0=A0 c=3Db<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 END =
IF<br>!=A0=A0=A0=A0=A0 <br>=A0=A0=A0=A0=A0=A0=A0=A0 END IF<br>=A0=A0=A0=A0=
=A0=A0=A0=A0 max_v=3Dc<br>
=A0=A0=A0=A0=A0 END DO<br>!RETURN<br>END SUBROUTINE<br>!=A0=A0=A0=A0=A0 <br=
>!-------------------------------------------------------------------------=
-----c<br>! Utility subroutine to compute viscous-strain(internal variable)=
 in <br>! each Maxwell element using Backward Euler time integration scheme=
<br>
!--------------------------------------------------------------------------=
----c<br>SUBROUTINE visc_strain(dtime,tau, emec,evis,vis_new) <br>=A0=A0=A0=
=A0=A0 IMPLICIT NONE<br>=A0=A0=A0=A0=A0 a=3Ddtime/(dtime+tau)<br>=A0=A0=A0=
=A0=A0 DO i=3D1,6<br>=A0=A0=A0=A0=A0=A0=A0=A0=A0 vis_new(i)=3D(emec(i)+evis=
(i))*a<br>
=A0=A0=A0=A0=A0 END DO<br>!RETURN=A0 <br>END SUBROUTINE<br>=A0=A0=A0=A0=A0=
=A0 <br>-------------------------------------------------------------------=
---------------------------------------------------------------------------=
---------------------------------<br>
Awaiting your help guys.....thanks in advance...................<br><br>kin=
d regards,<br>Hari.<br>

--0016e6dd993e563f1404cdd208a4--


--===============6939826838662489379==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
f2py-users mailing list
f2py-users-Y4l6ocDipWCuvFJfX82//[email protected]
http://cens.ioc.ee/mailman/listinfo/f2py-users

--===============6939826838662489379==--