redu3d
C REDU3D SOURCE PV090527 23/01/27 21:16:02 11574 subroutine redu3d(NBRINC,NINC,NDIMG,DEPSE1,DEPSM1,DEPSK1, # DEPST1,DEPSC1,DEPSL1,LogReducGEL,reduc,dbgvd,Mbg,dbgpg, # precision3d,ierr1,affiche) c reduction de l increment de la solution dans l espace generalise implicit real*8 (a-h,o-z) implicit integer (i-n) integer NBRINC,NINC,NDIMG c vecteur deformations solutions real*8 DEPSE1(NDIMG),DEPSM1(NDIMG),DEPSK1(NDIMG) real*8 Mbg(0:NBRINC,0:1) c poro meca gels real*8 dbgPg(0:NBRINC) c vecteur solution def anelastiques real*8 DEPST1(NDIMG),DEPSC1(NDIMG) real*8 DEPSL1(NDIMG) real*8 reduc,precision3d integer ierr1 logical affiche integer idir logical affiche_local logical LogReducGEL real*8 dbgvd(0:NBRINC) affiche_local=affiche if ((reduc.gt.0.d0).and. # (reduc.lt.1.d0))then c application de la reduction do idir=1,NDIMG c elastiques DEPSE1(idir)=DEPSE1(idir)*reduc c maxwell DEPSM1(idir)=DEPSM1(idir)*reduc c kelvin DEPSK1(idir)=DEPSK1(idir)*reduc c plasticite traction DEPST1(idir)=DEPST1(idir)*reduc c cisiallement DEPSC1(idir)=DEPSC1(idir)*reduc c localisee DEPSL1(idir)=DEPSL1(idir)*reduc end do if(LogReducGEL) then do iphase=0,ninc dbgvd(iphase)=reduc*dbgvd(iphase) dbgpg(iphase)=-MBG(iphase,1)*dbgvd(iphase) end do end if if(affiche_local) then print*,'Dans redu3d reduc=',reduc end if else if( (reduc.gt.1.d0).or. # (reduc.lt.0.d0)) then print*,'Probleme dans reducinc3d',reduc ierr1=1 return end if end if return end
© Cast3M 2003 - Tous droits réservés.
Mentions légales