C KRES7 SOURCE GOUNAND 11/06/29 21:15:10 7016 SUBROUTINE KRES7(MSOLC,MRIGID,KSMBR0,KSMBR1,IDTARG, $ MCHSOL) IMPLICIT REAL*8 (A-H,O-Z) IMPLICIT INTEGER (I-N) C*********************************************************************** C NOM : KRES7 C DESCRIPTION : Effectue la décondensation des relations C Repris de resou.eso C C C LANGAGE : ESOPE C AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SFME/LTMF) C mél : gounand@semt2.smts.cea.fr C*********************************************************************** C VERSION : v1, 15/06/2011, version initiale C HISTORIQUE : v1, 15/06/2011, création C HISTORIQUE : C HISTORIQUE : C*********************************************************************** C Prière de PRENDRE LE TEMPS de compléter les commentaires C en cas de modification de ce sous-programme afin de faciliter C la maintenance ! C*********************************************************************** -INC CCOPTIO -INC SMRIGID -INC SMCHPOI -INC SMELEME * MCHPOI=MSOLC SEGACT MRIGID C----------------------- if(jrcond.ne.0) then * if(idepe.ne.0) then noen=1 ri1=jrelim ri2=jrgard ri6=jrdepp lagdua=imlag * write(ioimp,*) 'ri1,ri2,ri6',ri1,ri2,ri6 * reintroduction des inconnues supprimees call mucpri(mchpoi,ri6,ichp3) * write (6,*) ' resou - mchpoi ' * call ecchpo(mchpoi,0) * write (6,*) ' resou - ichp3' * call ecchpo(ichp3 ,0) * write (6,*) ' resou - ri6' * call prrigi(ri6,1) call adchpo(mchpoi,ichp3,ichp2,1.D0,1.D0) mchpo1=ksmbr1 * write (6,*) ' resou - iret ' call adchpo(ichp2,mchpo1,iret,1.D0,1D0) * call ecchpo(mchpoi) * call ecchpo(iret) if (idtarg.ne.0) call dtchpo(mchpoi) call dtchpo(ichp3) call dtchpo(ichp2) mchpo1=iret segact mchpo1*mod mchpo1.jattri(1)=1 C ------------- deplacements complets puis KU call mucpri(mchpo1,ri2 ,ichp5) * write (6,*) ' apres mucpri ' * call ecchpo(ichp5,0) mchpo4=ichp5 segact mchpo4*mod mchpo4.jattri(1)=1 segdes mchpo4 ichp6= ksmbr0 C ------- write(6,*) ' --------- KU - F ' * write (6,*) ' avant adchpo ichp5 ' * call ecchpo(ichp5) call adchpo(ichp5,ichp6,IRET,1D0,-1D0) call dtchpo(ichp5) * write (6,*) ' apres adchpo ' * call ecchpo(iret) call remplx(ri1,iret,ichp7) call verlx(ri2,iret,mchpo1,noen,ipt8) call dtchpo(iret) * write (6,*) ' apres remplx ichp7 ' * call ecchpo(ichp7,0) call fuchpo(mchpo1,ichp7,iret) mchpoi=iret * supression des multiplicateurs dédoublés if (lagdua.ne.0) then call dbbcf(mchpoi,lagdua) ipt1=lagdua segdes ipt1 endif endif SEGDES MRIGID * les champs de points qui sortent sont de nature diffuse SEGACT MCHPOI NAT = MAX(1,JATTRI(/1)) NSOUPO=IPCHP(/1) SEGADJ MCHPOI JATTRI(1)=1 SEGDES MCHPOI IRET = MCHPOI MCHSOL=IRET RETURN * * End of subroutine KRES7 * END