VOYAGER
Voyager LECP Data Analysis Handbook
Instrument Modeling Reports
by Sheela Shodhan
E.14 PLOTR4
********************************************************************* SUBROUTINE PLOTR4(NC,X,Y,NPT,NLN,TITLE,XLAB,YLAB,LNPT,LNK) * * * PURPOSE : THIS ROUTINE IS USED TO PLOT MAXIMUM OF FOUR PLOTS ON * * A PAGE USING NCAR GRAPHICS. * * VARIABLES : * * NC : NUMBER OF PLOT (FROM 1 >> 4) * * NLN : TOTAL NUMBER OF LINES TO BE PLOTTED. * * NPT : 1-D ARRAY (I) : NUMBER OF POINTS TO BE PLOTTED IN LINE (I). * * X, Y : ARRAYS WHICH ARE INITIALISED WITH THE VALUES TO BE PLOTTED.* * FOR EACH ROW; COL 1. >> COL. NPT(I) : POINTS TO BE PLOTTED * * ON THE X AND THE Y-AXIS RESPECTIVELY. * *********************************************************************
PARAMETER (NB=50,NN=1000) CHARACTER*72 TITLE,XLAB,YLAB INTEGER NPT(NB),MTY(NB) REAL X(NB,NN),Y(NB,NN),X1(NN),Y1(NN),SP(4,4),ST(4) DATA (SP(1,J),J=1,4)/0.1,0.48,0.55,0.93/ DATA (SP(2,J),J=1,4)/0.6,0.98,0.55,0.93/ DATA (SP(3,J),J=1,4)/0.1,0.48,0.08,0.46/ DATA (SP(4,J),J=1,4)/0.6,0.98,0.08,0.46/ DATA (MTY(I),I=1,8)/1,2,3,4,5,6,7,8/
LPOWX=0 LPOWY=0 IF (LNPT.GT.10.AND.LNPT.LT.15) THEN LTYP=LNPT-10 ELSE LTYP=LNPT END IF CALL CMAXMIN(X,NPT,NLN,XMIN,XMAX) CALL CMAXMIN(Y,NPT,NLN,YMIN,YMAX) D WRITE(7,*) ' NC = ',NC D WRITE(7,6) XMIN,XMAX,YMIN,YMAX 6 FORMAT(' XMIN=',E11.4,' XMAX=',E11.4,' YMIN=',E11.4, X ' YMAX=',E11.4) IF (LTYP.EQ.1) THEN CALL NEAR(2,XMAX,XMIN,UMAX,UMIN,MJTKX,MNTKX,LPOWX) CALL NEAR(2,YMAX,YMIN,VMAX,VMIN,MJTKY,MNTKY,LPOWY) ELSE IF (LTYP.EQ.2) THEN CALL NEAR(2,XMAX,XMIN,UMAX,UMIN,MJTKX,MNTKX,LPOWX) CALL NEARLOG(YMAX,YMIN,VMAX,VMIN,MJTKY,MNTKY) ELSE IF (LTYP.EQ.3) THEN CALL NEARLOG(XMAX,XMIN,UMAX,UMIN,MJTKX,MNTKX) CALL NEAR(2,YMAX,YMIN,VMAX,VMIN,MJTKY,MNTKY,LPOWY) ELSE CALL NEARLOG(YMAX,YMIN,VMAX,VMIN,MJTKY,MNTKY) CALL NEARLOG(XMAX,XMIN,UMAX,UMIN,MJTKX,MNTKX) END IF END IF END IF D WRITE(7,6) XMIN,XMAX,YMIN,YMAX D WRITE(7,6) UMIN,UMAX,VMIN,VMAX
CALL HEADER4(TITLE) CALL SET(SP(NC,1),SP(NC,2),SP(NC,3),SP(NC,4),XMIN,XMAX, XYMIN,YMAX,LTYP) CALL OPTN('SSIZE',2) CALL OPTN('COLOR','WHITE') IF (LNPT.LT.10) THEN CALL PERIM(MJTKX,MNTKX,MJTKY,MNTKY) ELSE CALL GRID(MJTKX,MNTKX,MJTKY,MNTKY) END IF IF (NC.EQ.1) CALL OPTN('COLOR','YELLOW') IF (NC.EQ.2) CALL OPTN('COLOR','RED') IF (NC.EQ.3) CALL OPTN('COLOR','GREEN') IF (NC.EQ.4) CALL OPTN('COLOR','PINK') DO I=1,NLN IF (LNK.NE.11) THEN NTY=LNK ELSE NTY=MTY(I) END IF DO J=1,NPT(I) X1(J)=X(I,J) Y1(J)=Y(I,J) IF (NTY.EQ.0) CALL PWRITX(X1(J),Y1(J),'"140"',5,18,0,0) IF (NTY.EQ.1) CALL PWRITX(X1(J),Y1(J),'"632"',5,15,0,0) IF (NTY.EQ.2) CALL PWRITX(X1(J),Y1(J),'"1246"',6,14,0,0) IF (NTY.EQ.3) CALL PWRITX(X1(J),Y1(J),'"531"',5,15,0,0) IF (NTY.EQ.4) CALL PWRITX(X1(J),Y1(J),'"1245"',6,15,0,0) IF (NTY.EQ.5) CALL PWRITX(X1(J),Y1(J),'"532"',5,15,0,0) IF (NTY.EQ.6) CALL PWRITX(X1(J),Y1(J),'"1253"',6,15,0,0) IF (NTY.EQ.7) CALL PWRITX(X1(J),Y1(J),'"47"',4,15,0,0) IF (NTY.EQ.8) CALL PWRITX(X1(J),Y1(J),'"1307"',6,15,0,0) END DO IF (NTY.EQ.-1.OR.LNK.EQ.11) CALL CURVE(X1,Y1,NPT(I)) END DO CALL OPTN('COLOR','WHITE') ST(1)=SP(NC,1) ST(2)=SP(NC,2) ST(3)=SP(NC,3) ST(4)=SP(NC,4) CALL LABEL(4,ST,UMIN,UMAX,VMIN,VMAX,MJTKX,MJTKY,13, XLTYP,LPOWX,LPOWY) CALL XLABEL4(XLAB,NC,LPOWX) CALL YLABEL4(YLAB,NC,LPOWY) RETURN END C-------------------------------------------------------------------- SUBROUTINE HEADER4(TITLE) CHARACTER TITLE*72
NT=LENCHAR(TITLE) CALL SET(0.1,0.9,0.955,0.99,0.0,60.0,0.0,2.0,1) CALL PWRITX(30.0,0.5,%REF(TITLE),NT,18,0,0) RETURN END C-------------------------------------------------------------------- SUBROUTINE XLABEL4(XLAB,NC,LPOWX) CHARACTER XLAB*72,POW*25 REAL XL(4,4) DATA (XL(1,J),J=1,4)/0.1,0.5,0.48,0.50/ DATA (XL(2,J),J=1,4)/0.6,1.0,0.48,0.50/ DATA (XL(3,J),J=1,4)/0.1,0.5,0.02,0.04/ DATA (XL(4,J),J=1,4)/0.6,1.0,0.02,0.04/
NXC=LENCHAR(XLAB) CALL SET(XL(NC,1),XL(NC,2),XL(NC,3),XL(NC,4),0.0,60.0,0.0,2.0,1) CALL PWRITX(30.0,0.5,%REF(XLAB),NXC,14,0,0) IF (LPOWX.NE.0) THEN ENCODE(19,12,POW) LPOWX CALL PWRITX(55.0,0.5,%REF(POW),19,14,0,0) END IF 12 FORMAT(' "137"10"S3"',I3,'"N"') RETURN END C-------------------------------------------------------------------- SUBROUTINE YLABEL4(YLAB,NC,LPOWY) CHARACTER YLAB*72,POW*25
REAL YL(4,4) DATA (YL(1,J),J=1,4)/0.00,0.04,0.58,0.93/ DATA (YL(2,J),J=1,4)/0.50,0.54,0.58,0.93/ DATA (YL(3,J),J=1,4)/0.00,0.04,0.10,0.46/ DATA (YL(4,J),J=1,4)/0.50,0.54,0.10,0.46/
NYC=LENCHAR(YLAB) CALL SET(YL(NC,1),YL(NC,2),YL(NC,3),YL(NC,4),0.0,2.0,0.0,60.0,1) CALL PWRITX(0.5,30.0,%REF(YLAB),NYC,14,90,0) IF (LPOWY.NE.0) THEN ENCODE(19,12,POW) LPOWY CALL PWRITX(0.5,50.0,%REF(POW),19,14,90,0) END IF 12 FORMAT(' "137"10"S3"',I3,'"N"') RETURN END C-------------------------------------------------------------------- C--------------------------------------------------------------------
Return to thesis table of contents.
Return to Voyager
LECP Data Analysis Handbook Table of Contents.
Return to Fundamental
Technologies Home Page.
Updated 8/9/19, Cameron Crane
VOYAGER 1 ELAPSED TIME
--:--:--:--
Days: Hours:
Minutes: Seconds
*Since official launch
September 5, 1977, 12:56:00:00 UTC
*Since official launch
September 5, 1977, 12:56:00:00 UTC
VOYAGER 2 ELAPSED TIME
--:--:--:--
Days: Hours:
Minutes: Seconds
*Since official launch
August 20, 1977, 14:29:00:00 UTC
*Since official launch
August 20, 1977, 14:29:00:00 UTC
QUICK FACTS
Manufacturer:
Voyagers 1 and 2 were built in the Jet Propulsion
Laboratory in Southern California.
Mission Duration: 40+ years have elapsed for both Voyager 1 and Voyager 2 (both are ongoing).
Destination: Their original destinations were Saturn and Jupiter. Their current destination is interstellar space.
Mission Duration: 40+ years have elapsed for both Voyager 1 and Voyager 2 (both are ongoing).
Destination: Their original destinations were Saturn and Jupiter. Their current destination is interstellar space.