C$NOEXT C$NOWAR DIMENSION X(1001,4),Y(1001,4),ERR(1001,4),INC(11),RANS(4) DIMENSION Z(1001,4) DIMENSION IERR(11) CHARACTER*64 DF(11),CXLF,PCHAR CHARACTER*12 CYLF,CZLF CHARACTER*4 LT(5) CHARACTER*2 LLSYM(10) CHARACTER*64 CT COMMON/CGPH/NCOLOR DATA ICLS/0/,LFLAG/0/ DATA LT/'SOLI','DOT ','DODA','SDAS','LDAS'/ DATA LLSYM/10*'--'/,ZNORM,YNORM,XNORM/1.,1.,1./ DATA IARG/0/,RSPLOT/0.20/ DATA CXLF/' '/,CYLF/' '/,CZLF/' '/ C NCOLOR=1 FOR B.W. 2 FOR COLOR NCOLOR=2 BX=1.E35 GX=-BX BY=1.E35 GY=-BY BZ=1.E35 GZ=-BZ NUMARGS=NARGS() NUMARGS=NUMARGS-1 IF(NUMARGS.EQ.0)NUMARGS=9 DO K=1,NUMARGS IF(NUMARGS.EQ.9)THEN PRINT*,' ENTER THE NAME OF THE DATA FILE IF NO MORE' CALL CHREAD(9,RANS,DF(K),0,IEND) IF(DF(K)(1:1).EQ.' ')GOTO 18 ELSE IARG=1 NTEMP=K CALL BGETARG(NTEMP,DF(K),NSTATUS) ENDIF INC(K)=5001 CALL EGREAD3(X(1,K),Y(1,K),Z(1,K),ERR(1,K),INC(K),DF(K), 2 IERR(K)) IF(INC(K).EQ.0)GOTO 18 DO I=1,INC(K) BX=AMIN1(BX,X(I,K)) GX=AMAX1(GX,X(I,K)) BY=AMIN1(BY,Y(I,K)) GY=AMAX1(GY,Y(I,K)) BZ=AMIN1(BZ,Z(I,K)) GZ=AMAX1(GZ,Z(I,K)) ENDDO ENDDO 18 NDSETS=K-1 C *** SET DEFAULTS FOR GRAPHING 20 IXAM=IBN(BX,GX,4,12) IYAM=IBN(BY,GY,3,8) IZAM=IBN(BZ,GZ,3,8) DLX=DLF((GX-BX)/IXAM,2,IXT,NDPX) DLY=DLF((GY-BY)/IYAM,2,IYT,NDPY) DLZ=DLF((GZ-BZ)/IZAM,2,IYT,NDPZ) 22 IBX=BX/DLX IF(BX.LT.0.)IBX=IBX-1 BX=IBX*DLX GX=BX+(IXAM+1)*DLX IBY=BY/DLY IF(BY.LT.0.)IBY=IBY-1 BY=IBY*DLY GY=BY+(IYAM+1)*DLY IBZ=BZ/DLZ IF(BZ.LT.0.)IBZ=IBZ-1 BZ=IBZ*DLZ GZ=BZ+(IZAM+1)*DLZ IXAM=IXAM+1 IYAM=IYAM+1 IZAM=IZAM+1 127 CONTINUE C ____---- CALL MENU(BX,GX,IXAM,DLX,CXLF,BY,GY,IYAM,DLY,CYLF, 2 BZ,GZ,IZAM,DLZ,CZLF,LLSYM, 2 NDSETS,ZNORM,YNORM,XNORM,ICLS,LFLAG,IARG,RSPLOT) CALL CLEARS theta=asin(.2/.86) XSF=.86*(GX-BX)/((GX-BX)**2+1.E-36) YSF=.86*(GY-BY)/((GY-BY)**2+1.E-36) ZSF=.46*(GZ-BZ)/((GZ-BZ)**2+1.E-36) CALL LINET('SOLI') CALL STPL(.11,.32) CALL PLOT(.98,.11) CALL STPL(.12,.32) CALL PLOT(.98,.52) CALL STPL(.12,.32) CALL PLOT(.12,.98) DTT=DLX*.86/(GX-BX) IBEG=1 DO I=1,IXAM+1 XCT=(I-1)*DTT+.12 YCT=.34-XCT*SIN(THETA) RIY=BX+(I-1)*DLX IF(ABS(RIY).LT.1.D-4*DLX)RIY=0 IF(LFLAG.EQ.2.OR.LFLAG.EQ.3)RIY=10**RIY XNUM=XNORM*RIY CALL NUMOUT(XCT,YCT-.02,XNUM,3,2) XCTO=XCT YCTO=YCT ENDDO DTT=DLY*.86/(GY-BY) DO I=1,IYAM+1 XCT=(I-1)*DTT+.12 YCT=.29+XCT*SIN(THETA) CALL STPL(XCT,YCT) CALL PLOT(XCT,YCT+.02) RIY=BY+(I-1)*DLY IF(ABS(RIY).LT.1.D-4*DLY)RIY=0 IF(LFLAG.EQ.2.OR.LFLAG.EQ.3)RIY=10**RIY YNUM=YNORM*RIY IF(I.EQ.1)YCT=YCT-.02 CALL NUMOUT(XCT,YCT-.03,YNUM,3,2) ENDDO DTT=DLZ*(.46/(GZ-BZ)) DO I=1,IZAM+1 YCT=(I-1)*DTT+.32 CALL STPL(.12,YCT) CALL PLOT(.14,YCT) IF(I.EQ.IZAM/2.AND.CZLF.NE.' ')THEN YCH=YCT+.5*DTT PCHAR=CZLF CALL BCHART(0.0,YCH,PCHAR) ENDIF RIZ=BZ+(I-1)*DLZ IF(ABS(RIZ).LT.1.D-4*DLZ)RIZ=0 IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)RIZ=10**RIZ ZNUM=ZNORM*RIZ CALL NUMOUT(0.1,YCT-.010,ZNUM,3,1) ENDDO KLT=1 DO K=1,NDSETS IBPLOT=0 C****** IF PLOTTING MORE THAN 1 DATA FILE, CALL LINET TO DETERMINE C COLOR IF(K.GT.1.) THEN KLT=KLT+1 CALL LINET(LT(KLT)) C******** WRITE HEADING FOR GRAPH (DATA FILENAME) C THE STRING (HEADING) THAT IS OUTPUTTED MUST END WITH A BACKSLASH IF(KLT.EQ.5) KLT=1 ENDIF CALL CCHAR(CXLF,IXLF) IF(IXLF.EQ.0)THEN CALL BCHART(.727,.916-.035*K,DF(K)) ELSE BEGX=.454-IXLF*.002 PCHAR=CXLF CALL LINET('SOLI') CALL BCHART(BEGX,.025,PCHAR) CALL LINET(LT(KLT)) ENDIF IPBEG=1 DO 320 I=1,INC(K) IF(X(I,K).LT.BX.OR.X(I,K).GT.GX)GOTO 320 IF(Y(I,K).LT.BY.OR.Y(I,K).GT.GY)GOTO 320 IF(Z(I,K).LT.BZ.OR.Z(I,K).GT.GZ)GOTO 320 HOR=(XSF*(X(I,K)-BX)+YSF*(Y(I,K)-BY))*COS(THETA) HOR=HOR+.12 HVER=(-XSF*(X(I,K)-BX)+YSF*(Y(I,K)-BY))*SIN(THETA) 2 +ZSF*(Z(I,K)-BZ) HVER=HVER+.32 IF(LLSYM(K).EQ.'P'.or.LLSYM(K).EQ.'t'.or.LLSYM(K).EQ.'T')THEN DO L=1,9 DO M=1,9 CALL PONT(HOR+.001*(L-5),HVER+.001*(M-5)) ENDDO ENDDO IF(LLSYM(K).EQ.'t'.or.LLSYM(K).EQ.'T')THEN c start at the point, then set both x and y to zero to draw the z intersection CALL STPL(HOR,HVER) HT=.12 VT=.32+ZSF*(Z(I,K)-BZ) CALL PLOT(HT,VT) c start at the point, then set z = 0 to find the position on the z plane CALL STPL(HOR,HVER) VT=.32+(-XSF*(X(I,K)-BX)+YSF*(Y(I,K)-BY))*SIN(THETA) CALL PLOT(HOR,VT) ENDIF ELSE IF(IPBEG.EQ.1)THEN CALL STPL(HOR,HVER) IPBEG=0 ELSE DIST=SQRT((HOR-OHOR)**2+(HVER-OHVER)**2) IF(DIST.LT.RSPLOT)THEN CALL PLOT(HOR,HVER) ELSE CALL STPL(HOR,HVER) ENDIF ENDIF ENDIF OHOR=HOR OHVER=HVER 320 CONTINUE ENDDO C *** STPL(0.,0.) OUTPUTS THE GRAPHICS TO THIS POINT CALL STPL(0.,0.) C *** CHREAD WAITS UNTIL USER HITS CARRIAGE RETURN CT=' ' 37 CALL CHREAD(9,RANS,CT,0,IEND) IF(CT(1:1).EQ.' ')THEN PRINT*,' TO GET THE MENU; TO STOP;' PRINT*,' OR BEG,ENDING X VALUES TO CONTINUE' GOTO 37 ENDIF IF(CT(2:3).EQ.' ')THEN IF(CT(1:1).EQ.'M'.OR.CT(1:1).EQ.'m')GOTO 127 IF(CT(1:1).EQ.'S'.OR.CT(1:1).EQ.'s')STOP ELSE IP=1 BX=RNUMB(CT,IP) GX=RNUMB(CT,IP) IARG=1 IF(BX.EQ.GX.AND.GX.EQ.0)THEN BX=1E37 GX=-1E37 DO K=1,NDSETS DO I=1,INC(K) BX=AMIN1(BX,X(I,K)) GX=AMAX1(GX,X(I,K)) ENDDO ENDDO ENDIF PRINT*,' ENTER AMIN,AMAX OR FOR DEFAULTS' CALL CHREAD(9,RANS,CT,2,IEND) AMIN=RANS(1) AMAX=RANS(2) IF(AMIN.NE.AMAX.OR.AMAX.NE.0)THEN BY=AMIN GY=AMAX ELSE BY=1E37 GY=-1E37 DO K=1,NDSETS DO I=1,INC(K) IF(X(I,K).GE.BX.AND.X(I,K).LE.GX)THEN BY=AMIN1(BY,Y(I,K)) GY=AMAX1(GY,Y(I,K)) ENDIF ENDDO ENDDO ENDIF DLY=(GY-BY)/IYAM DLX=(GX-BX)/IXAM PRINT*,' DO YOU WANT A LOG SCALE' CALL CHREAD(9,RANS,CT,0,IEND) LFLAG=0 IF(CT(1:1).EQ.'Y'.OR.CT(1:1).EQ.'y')THEN PRINT*,' ENTER 1 LOG Y-AXIS ONLY' PRINT*,' ENTER 2 LOG X-AXIS ONLY' PRINT*,' ENTER 3 LOG X AND Y AXIS' CALL CHREAD(9,RANS,CT,1,IEND) LFLAG=RANS(1) PRINT*,'LFLAG=',LFLAG IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN IF(BY.LE.0..OR.GY.LE.0.)THEN PRINT*,' LOG OF QUANT <= 0 BY,GY ',BY,GY LFLAG=0 CALL CHREAD(9,RANS,CT,1,IEND) GOTO 20 ENDIF BY=ALOG10(BY) GY=ALOG10(GY) DLY=(GY-BY)/IYAM ENDIF IF(LFLAG.EQ.2.OR.LFLAG.EQ.3)THEN IF(BX.LE.0..OR.GX.LE.0.)THEN PRINT*,' LOG OF QUANT <= 0 BX,GX ',BX,GX IF(LFLAG.EQ.3)LFLAG=1 IF(LFLAG.EQ.2)LFLAG=0 CALL CHREAD(9,RANS,CT,1,IEND) GOTO 20 ENDIF BX=ALOG10(BX) GX=ALOG10(GX) DLX=(GX-BX)/IXAM ENDIF ENDIF GOTO 127 ENDIF STOP C *** CALL STPL, CALL ANSI IS EQUIVALENT TO CALL STPL(-1.,Y) C *** THE INTERMEDIATE CHREAD USED HERE ALLOWS THE SCREEN TO BE C *** OBSERVED UNTIL A IS ENTERED ANSI LEAVES THE GRAPHICS SCREEN GOTO 127 500 STOP END SUBROUTINE MENU(BX,GX,IXAM,DLX,CXLF,BY,GY,IYAM,DLY,CYLF, 2 BZ,GZ,IZAM,DLZ,CZLF,LLSYM, 3 NDSETS,ZNORM,YNORM,XNORM,ICLS,LFLAG,IARG,RSPLOT) CHARACTER*64 CT CHARACTER*(*) CXLF,CYLF,CZLF CHARACTER*2 LLSYM(10) CHARACTER*64 CLS(2),CLFLAG(4) DIMENSION RANS(10) SAVE IXLF,IYLF DATA IXLF,IYLF/0,0/ DATA CLS/'SCREEN WILL BE CLEARED BEFORE NEXT PLOT', 2 'THIS PLOT WILL BE PLACED ON TOP OF THE PREVIOUS ONE.'/ DATA CLFLAG/' LINEAR X, LINEAR Y',' LINEAR X, LOG Y', 2 ' LOG X, LINEAR Y',' LOG X, LOG Y'/ 127 CONTINUE IF(IARG.EQ.1)THEN IARG=0 RETURN ENDIF WRITE(*,'('' CURRENT SETUP:'')') BXT=BX GXT=GX BYT=BY GYT=GY IF(LFLAG.EQ.2.OR.LFLAG.EQ.3)THEN BXT=10**BXT GXT=10**GXT DLXT=10**DLX BYT=10**BYT GYT=10**GYT DLYT=10**DLY ENDIF WRITE(*,2)XNORM*BXT,XNORM*GXT,XNORM 2 FORMAT(' 1. LOW-X:',1PG15.2,' HIGH-X:',1PG15.2,' XNORM',G12.4) WRITE(*,'('' 2. # OF X AXIS MARKS:'',I13)')IXAM IF(LFLAG.EQ.2.OR.LFLAG.EQ.3)THEN WRITE(*,'('' 3. XFACTOR: '',G12.4)')DLXT ELSE WRITE(*,'('' 3. DELTA-X: '',G12.4)')DLX*XNORM ENDIF BYT=BY GYT=GY BZT=BZ GZT=GZ IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN BZT=10**BYT GZT=10**GYT DLZT=10**DLY ENDIF WRITE(*,'('' 4. LOW-Y:'',1PG12.4,'' HIGH-Y:'',1PG12.4, 2 '' YNORM'',G12.4)')YNORM*BYT,YNORM*GYT,YNORM WRITE(*,'('' 5. # OF Y AXIS MARKS:'',I13)')IYAM IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN WRITE(*,'('' 6. YFACTOR: '',G12.4)')DLYT ELSE WRITE(*,'('' 6. DELTA-Y: '',G12.4)')DLY*YNORM ENDIF WRITE(*,'('' 7. LOW-Z:'',1PG12.4,'' HIGH-Z:'',1PG12.4, 2 '' ZNORM'',G12.4)')ZNORM*BZT,YNORM*GZT,ZNORM WRITE(*,'('' 8. # OF Z AXIS MARKS:'',I13)')IZAM IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN WRITE(*,'('' 9. ZFACTOR: '',G12.4)')DLZT ELSE WRITE(*,'('' 9. DELTA-Z: '',G12.4)')DLZ*ZNORM ENDIF WRITE(*,'(''10. Z COORDINATE LABEL: '',A)')CYLF WRITE(*,1001)(I,LLSYM(I),I=1,NDSETS) 1001 FORMAT('11. PLOT SYMBOLS',10(I2,A2)) WRITE(*,1003)CLS(ICLS+1) 1003 FORMAT('12. ',A) WRITE(*,'(''13. '',A)')CLFLAG(LFLAG+1) WRITE(*,'(''14. NO LINE BETWEEN POINTS APART BY MORE THAN'', 2 F5.2)')RSPLOT WRITE(*,'('' ---------------------------'')') C******** THRU STATEMENT #299, DEFAULT VALUES CAN BE CHANGED WRITE(*,12) 12 FORMAT(' CHANGE WHICH? <0>=NONE ,15 = STOP') CALL CHREAD(9,RANS,CT,1,IEND) ICH=RANS(1)+1.E-7 IF(ICH.EQ.0)RETURN C 1 2 3 4 5 6 7 8 9 10 11 12 13 GOTO (210,220,230,250,260,270,280,284,286,288,290,310,320),ICH IF(ICH.GT.13)STOP GOTO 127 210 PRINT*,' ENTER LOW-X, HIGH-X, XNORM OR FOR UNCHANGED' CALL CHREAD(9,RANS,CT,3,IEND) IF(RANS(3).NE.0.)XNORM=RANS(3) IF(RANS(1).NE.0..OR.RANS(2).NE.0.)THEN BX=RANS(1)/XNORM GX=RANS(2)/XNORM IF(LFLAG.EQ.2.OR.LFLAG.EQ.3)THEN BX=ALOG10(BX) GX=ALOG10(GX) ENDIF ELSE GOTO 127 ENDIF DLXT=DLF((GX-BX)/IXAM,2,IXT,NDPX) IF(LFLAG.EQ.2.OR.LFLAG.EQ.3)THEN XFACT=10**DLXT PRINT*,' ENTER XFACT FOR XFACT= ',XFACT CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLX=DLXT GOTO 127 ELSE DLX=ALOG10(RANS(1)) ENDIF ELSE PRINT*,' ENTER FOR DX= ',DLXT*XNORM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLX=DLXT GOTO 127 ELSE DLX=RANS(1)/XNORM ENDIF ENDIF IXAM=(GX-BX)/DLX 220 WRITE(*,221)IXAM 221 FORMAT(' ENTER # OF X-AXIS MARKS ',I13,'!') CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)GOTO 127 IXAM=RANS(1) DLXT=DLF((GX-BX)/IXAM,2,IXT,NDPX) IF(LFLAG.EQ.2.OR.LFLAG.EQ.3)THEN XFACT=10**DLXT PRINT*,' ENTER XFACT FOR XFACT= ',XFACT CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLX=DLXT GOTO 127 ELSE DLX=ALOG10(RANS(1)) ENDIF ELSE PRINT*,' ENTER FOR DX= ',DLXT*XNORM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLX=DLXT GOTO 127 ELSE DLX=RANS(1)/XNORM ENDIF ENDIF 230 IF(LFLAG.EQ.2.OR.LFLAG.EQ.3)THEN XFACT=10**DLX PRINT*,' ENTER XFACT FOR PRESENT ',XFACT CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0)GOTO 127 DLX=ALOG10(RANS(1)) ELSE PRINT*,' ENTER DELTA-X ',DLX*XNORM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0)GOTO 127 DLX=RANS(1)/XNORM ENDIF IXAM=(GX-BX)/DLX WRITE(*,232)IXAM 232 FORMAT(' # OF X-AXIS MARKS, DEFAULT = ',I5) CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).NE.0.)IXAM=RANS(1)+1.E-7 GOTO 127 240 WRITE(*,241)CXLF 241 FORMAT(' ENTER X COORDINATE LABEL ',A) CALL CHREAD(9,RANS,CXLF,0,IEND) CALL CCHAR(CXLF,IXLF) GOTO 127 250 PRINT*,' ENTER LOW-Y, HIGH-Y, YNORM OR FOR UNCHANGED' CALL CHREAD(9,RANS,CT,3,IEND) IF(RANS(3).NE.0.)YNORM=RANS(3) IF(RANS(1).NE.0..OR.RANS(2).NE.0.)THEN BY=RANS(1)/YNORM GY=RANS(2)/YNORM IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN BY=ALOG10(BY) GY=ALOG10(GY) ENDIF ELSE GOTO 127 ENDIF DLYT=DLF((GY-BY)/IYAM,2,IYT,NDPY) IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN YFACT=10**DLYT PRINT*,' ENTER YFACT FOR YFACT= ',YFACT CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLY=DLYT GOTO 127 ELSE DLY=ALOG10(RANS(1)) ENDIF ELSE PRINT*,' ENTER FOR DY= ',DLYT*YNORM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLY=DLYT GOTO 127 ELSE DLY=RANS(1)/YNORM ENDIF ENDIF IYAM=(GY-BY)/DLY 260 WRITE(*,221)IYAM 261 FORMAT(' ENTER # OF Y-AXIS MARKS ',I13,'!') CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)GOTO 127 IYAM=RANS(1) DLYT=DLF((GY-BY)/IYAM,2,IYT,NDPY) IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN YFACT=10**DLYT PRINT*,' ENTER YFACT FOR YFACT= ',YFACT CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLY=DLYT GOTO 127 ELSE DLY=ALOG10(RANS(1)) ENDIF ELSE PRINT*,' ENTER FOR DY= ',DLYT*YNORM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLY=DLYT GOTO 127 ELSE DLY=RANS(1)/YNORM ENDIF ENDIF 265 PRINT*,' SHOULD HAVE ENTERED 7' READ(*,*)ITEST IF(ITEST.EQ.1)STOP GOTO 127 270 IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN YFACT=10**DLY PRINT*,' ENTER YFACT FOR PRESENT ',YFACT CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0)GOTO 127 DLY=ALOG10(RANS(1)) ELSE PRINT*,' ENTER DELTA-Y ',DLY*YNORM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0)GOTO 127 DLY=RANS(1)/YNORM ENDIF IYAM=(GY-BY)/DLY WRITE(*,'('' # OF Y-AXIS MARKS, DEFAULT = '',I3)')IYAM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).NE.0.)IYAM=RANS(1)+1.E-7 GOTO 127 280 PRINT*,' ENTER LOW-Z, HIGH-Z, ZNORM OR FOR UNCHANGED' CALL CHREAD(9,RANS,CT,3,IEND) IF(RANS(3).NE.0.)ZNORM=RANS(3) IF(RANS(1).NE.0..OR.RANS(2).NE.0.)THEN BZ=RANS(1)/YNORM GZ=RANS(2)/YNORM IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN BZ=ALOG10(BY) GZ=ALOG10(GY) ENDIF ELSE GOTO 127 ENDIF DLZT=DLF((GZ-BZ)/IZAM,2,IZT,NDPZ) IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN ZFACT=10**DLZT PRINT*,' ENTER ZFACT FOR ZFACT= ',ZFACT CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLZ=DLZT GOTO 127 ELSE DLZ=ALOG10(RANS(1)) ENDIF ELSE PRINT*,' ENTER FOR DZ= ',DLZT*ZNORM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLZ=DLZT GOTO 127 ELSE DLZ=RANS(1)/ZNORM ENDIF ENDIF IZAM=(GZ-BZ)/DLZ 284 WRITE(*,'('' ENTER # OF Z-AXIS MARKS '',I13,''!'')')IZAM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)GOTO 127 IZAM=RANS(1) DLZT=DLF((GZ-BZ)/IZAM,2,IZT,NDPZ) IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN ZFACT=10**DLZT PRINT*,' ENTER ZFACT FOR ZFACT= ',ZFACT CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLZ=DLZT GOTO 127 ELSE DLZ=ALOG10(RANS(1)) ENDIF ELSE PRINT*,' ENTER FOR DZ= ',DLZT*ZNORM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0.)THEN DLZ=DLZT GOTO 127 ELSE DLZ=RANS(1)/ZNORM ENDIF ENDIF 286 IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN ZFACT=10**DLZ PRINT*,' ENTER ZFACT FOR PRESENT ',ZFACT CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0)GOTO 127 DLZ=ALOG10(RANS(1)) ELSE PRINT*,' ENTER DELTA-Z ',DLZ*ZNORM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).EQ.0)GOTO 127 DLZ=RANS(1)/ZNORM ENDIF IZAM=(GZ-BZ)/DLZ WRITE(*,'('' # OF Y-AXIS MARKS, DEFAULT = '',I3)')IZAM CALL CHREAD(9,RANS,CT,1,IEND) IF(RANS(1).NE.0.)IYAM=RANS(1)+1.E-7 GOTO 127 288 WRITE(*,'('' ENTER Z COORDINATE LABEL (10 CHARACER LIMIT)'' 2 /1X,A)')CYLF CALL CHREAD(9,RANS,CZLF,0,IEND) CALL CCHAR(CZLF,IZLF) GOTO 127 290 PRINT*,' ENTER DATA SET #, PLOT SYMBOL' CALL CHREAD(9,RANS,CT,1,IEND) K=RANS(1)+1.E-7 K=MAX0(1,K) LLSYM(K)=CT(1:1) IF(CT(2:2).EQ.'-')LLSYM(K)=CT(1:1)//CT(2:2) GOTO 127 300 IF(ICLS.EQ.0)THEN ICLS=1 ELSE ICLS=0 ENDIF GOTO 127 310 IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN BY=10**BY GY=10**GY DLY=(GY-BY)/IYAM ENDIF IF(LFLAG.EQ.2.OR.LFLAG.EQ.3)THEN BX=10**BX GX=10**GX DLX=(GX-BX)/IXAM ENDIF WRITE(*,'(1X,A,I3)')(CLFLAG(I),I-1,I=1,4) WRITE(*,'('' ENTER DESIRED I'')') CALL CHREAD(9,RANS,CT,1,IEND) LFLAG=RANS(1)+.5 IF(LFLAG.EQ.1.OR.LFLAG.EQ.3)THEN IF(BY.LE.0..OR.GY.LE.0.)THEN PRINT*,' LOG OF QUANT <= 0 BY,GY ',BY,GY LFLAG=0 CALL CHREAD(9,RANS,CT,1,IEND) GOTO 127 ENDIF BY=ALOG10(BY) GY=ALOG10(GY) DLY=(GY-BY)/IYAM ENDIF IF(LFLAG.EQ.2.OR.LFLAG.EQ.3)THEN IF(BX.LE.0..OR.GX.LE.0.)THEN PRINT*,' LOG OF QUANT <= 0 BX,GX ',BX,GX IF(LFLAG.EQ.3)LFLAG=1 IF(LFLAG.EQ.2)LFLAG=0 CALL CHREAD(9,RANS,CT,1,IEND) GOTO 127 ENDIF BX=ALOG10(BX) GX=ALOG10(GX) DLX=(GX-BX)/IXAM ENDIF GOTO 127 320 PRINT*,' ENTER THE SEPARATION DISTANCE FOR NO PLOT <0,1>' READ(*,*)RSPLOT GOTO 127 END C$NOLIST C$INCLUDE VFPLOTS C CMS ON THE CMS SYSTEM FOLLOWING LINE MUST BE CMSPLOTS C$INCLUDE GKSPLOTS