crevlc
C CREVLC SOURCE CB215821 22/08/22 21:15:02 11429 IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) ************************************************************************ * NOM : CREVLC * DESCRIPTION : Cree un objet EVOLUTION a partir d'un LISTCHPO, un * MAILLAGE et un LISTMOTS pour les ordonnees et d'un * LISTREEL pour les abscisses ************************************************************************ * APPELE PAR : evresu.eso ; evreco.eso ************************************************************************ * ENTREES : ILREE1 = pointeur vers le LISTREEL des abscisses * ILCHP1 = pointeur vers le LISTCHPO des ordonnees * IMAIL1 = pointeur vers le MELEME de POI1 * ILMOT1 = pointeur vers le LISTMOTS des composantes * (0 si non specifie) * ILMOT2 = pointeur vers le LISTMOTS des couleurs des courbes * TITR1 = titre de l'ensemble des courbes * SORTIES : IEVOL1 = pointeur vers l'objet EVOLUTIO ************************************************************************ -INC PPARAM -INC CCOPTIO -INC SMEVOLL -INC SMELEME -INC SMLENTI -INC SMLREEL -INC SMLMOTS -INC SMLCHPO * POINTEUR LCOUL.MLENTI POINTEUR LCOMP.MLMOTS POINTEUR LNOMS.MLMOTS * CHARACTER*(LOCOMP) MOCMP1 CHARACTER*8 CHA8 CHARACTER*10 CH10 CHARACTER*16 CH16 CHARACTER*72 TITR1,FMT1 * * * ====================== * LISTREEL DES ABSCISSES * ====================== * MLREEL=ILREE1 SEGACT,MLREEL * * * ====================== * LISTCHPO DES ORDONNEES * ====================== * MLCHPO=ILCHP1 SEGACT,MLCHPO IF (ICHPOI(/1).NE.NT) THEN RETURN ENDIF * * * ========= * GEOMETRIE * ========= * MELEME=IMAIL1 SEGACT,MELEME SEGACT,MELEME NPO=NUM(/2) IF (NPO.EQ.0) THEN MOTERR(1:8)='MAILLAGE' RETURN ENDIF * * * ======================== * LISTE DES NOMS DE POINTS * ======================== * JGM=NPO JGN=16 SEGINI,LNOMS DO I=1,NPO IPO1=NUM(1,I) * * ON A TROUVE UN NOM DANS LA LISTE DES OBJETS NOMMES IF (IRETOU.NE.0) THEN * * SINON, CREATION D'UN NOM PAR DEFAUT ELSE WRITE(CH10,FMT='(I10)') IPO1 ENDIF ENDDO * * * ===================== * LISTE DES COMPOSANTES * ===================== * LCOMP=ILMOT1 IF (LCOMP.NE.0) THEN SEGACT,LCOMP ELSE NCO=1 ENDIF * * * ================== * LISTE DES COULEURS * ================== * LCOUL=ILMOT2 SEGACT,LCOUL NCLR=LCOUL.LECT(/1) * * ON COMPLETE SI BESOIN LA LISTE DES COULEURS NEV=NCO*NPO IF (NEV.GT.NCLR) THEN JG=NEV SEGADJ,LCOUL DO K=NCLR+1,NEV LCOUL.LECT(K)=LCOUL.LECT(K-NCLR) ENDDO ENDIF * * * ==================== * CREATION DES COURBES * ==================== * N=NEV SEGINI,MEVOLL IEVOL1=MEVOLL ITYEVO='REEL' IEVTEX=TITR1 DO INO=1,NPO SEGACT,MELEME IPO1=NUM(1,INO) * MLREE2=ILREE2 SEGACT,MLREE2 MOTERR(1:8)='CREVLC' RETURN ENDIF * DO ICO=1,NCO * IF (NCO.EQ.1) THEN ILREEY=ILREE2 ELSE JG=NT SEGINI,MLREE3 ILREEY=MLREE3 IT1=(ICO-1)*NT DO IT=1,NT ENDDO ENDIF * IEV=(INO-1)*NCO+ICO SEGINI,KEVOLL IEVOLL(IEV)=KEVOLL TYPX='LISTREEL' TYPY='LISTREEL' IPROGX=ILREE1 IPROGY=ILREEY NUMEVX=LCOUL.LECT(IEV) NUMEVY='REEL' NOMEVX='TEMPS' if (lcomp.ne.0) then NOMEVY = MOCMP1 endif IF (NCO.EQ.1) THEN ELSE FMT1='(A," COMP. ",' // FMCOMP(2:4) WRITE(KEVTEX,FMT=FMT1) CH16(1:LN),MOCMP1 ENDIF ENDDO * IF (NCO.NE.1) SEGSUP,MLREE2 * ENDDO SEGSUP,LNOMS * RETURN * END * *
© Cast3M 2003 - Tous droits réservés.
Mentions légales