C ******************************************************************* C * * C * * C * PROGRAM NETPLOT * C * --------------- * C * * C * * C * THIS PROGRAM PLOTS THE STRAIN ELLIPSES AS WELL AS THE VALUES * C * OF AVERAGE DIFFERENTIAL ROTATION FOR NETWORK STATIONS * C * NETWORK POINTS ARE IDENTIFIED BY PLOTTING STATION NUMBERS * C * * C * * C * JOB CONTROL LANGUAGE * C * -------------------- * C * * C * * C * 1.0 INPUT DATA SETS * C * * C * STATION NUMBERS,VALUES OF DISPLACEMENTS AND VALUES OF AVERAGE * C * DIFFERENTIAL ROTATION(DIRECT OUTPUT OF PROGRAM 'STRAIN') * C * * C * //GO.FT08F001 DD DSN=A.M60689STNDXDY2.OMEGA, * C * // UNIT=DASD,VOL=SER=USER11,DISP=SHR * C * * C * ELEMENTS OF THE SYMMETRIC STRAIN TENSOR MATRIX * C * (DIRECT OUTPUT OF PROGRAM 'STRAIN') * C * * C * //GO.FT04F001 DD DSN=A.M6068.TMATRIX2.DATA, * C * // UNIT=P3350,VOL=SER=USER11,DISP=SHR * C * * C * VALUES OF THE AXES OF STRAIN ELLIPSES AND THE ORIENTATION * C * ANGLE OF THE SEMI-MAJOR AXIS OF THE STRAIN ELLIPSE * C * (DIRECT OUTPUT OF PROGRAM 'EVALUE') * C * * C * //GO.FT03F001 DD DSN=A.M6068.TEVALUE2.DATA, * C * // UNIT=P3350,VOL=SER=USER11,DISP=SHR * C * * C * STATION NUMBERS AND CO-ORDINATES * C * * C * //GO.FT02F001 DD DSN=A.M6068.ADJCRD31.DATA, * C * // UNIT=P3350,VOL=SER=USER11,DISP=SHR * C * //GO.SYSIN DD * * C * // * C * INPUT: * C * * C * CARD 1 FORMAT(I4) * C * NS=NUMBER OF STATIONS IN THE NETWORK * C * * C * ALL OTHER INPUT IS DONE FROM FILES * C * * C * ISTN,W,Z STATION NUMBER AND CO-ORDINATES OF THE NETWORK POINTS * C * FORMAT(1X,7A1,2F15.4) * C * * C * RMAJ,RMIN,PHI ARE SEMI-MAJOR ,SEMI-MINOR AXES AND ORIENTATION * C * ANGLE OF SEMI-MAJOR AXIS OF STRAIN ELLIPSE RESPECTIVELY * C * FORMAT(1X,2F16.10,F10.6) * C * * C * ITON,DX1,DY1 AND OMEGA ARE STATION NUMBER DISPLACEMENTS * C * IN X AND Y DIRECTION AND THE VALUES OF AVERAGE DIFFERENTIAL * C * ROTATION RESPECTIVELY * C * FORMAT(1X,A1,6A1,2F10.4,F16.10) * C * * C * A CONTAINS THE ELEMENTS OF THE SYMMETRIC STRAIN TENSOR MATRIX * C * ORIENTATION ANGLE PHI AND VALUES OF AVERAGE DIFF. ROTATION * C * FORMAT(1X,3F18.10) * C * * C * * C * OUTPUT: * C * * C * ORIENTATION ANGLE PHI OF SEMI MAJOR AXIS OF STRAIN ELLIPSE * C * AND VALUES OF AVERAGE DIFFERENTIAL ROTATION * C * FORMAT(7X,7A1,2F16.8/) * C * * C * * C * REFERENCES: * C * * C * GUJAR,U.G.(1975).USERS GUIDE.COMPUTER PLOTTING VOLUME 11, * C * UNIVERSITY OF NEW BRUNSWICK COMPUTER CENTRE. * C * * C * * C * WRITTEN BY KHAGENDRA THAPA NOVEMBER,1979. * C * * C * * C ******************************************************************* C C IMPLICIT REAL*4(A-H,O-Z) REAL*8 W,Z,RMAJ,RMIN,ANGL,A REAL*8 DX1,DY1,DOMEGA,PX,PY DIMENSION A(3) LOGICAL*1 ISTN(8),ITON(8) DATA ISTN(8)/'\'/ DATA ITON(8)/'\'/ C C READ THE NUMBER OF STATION NUMBERS C READ(5,201)NS 201 FORMAT(I4) C C SUBROUTINE SHIFT IS USED TO SHIFT THE PAPER TO PROPER SETTING C CALL SHIFT(2.0,4.0) C C SUBROUTINE AREA ALLOWS US TO FIX THE SIZE OF THE PLOT C CALL AREA(10.0,4.2105) C C SUBROUTINE SETPLOT IS USED TO FIX THE SCALE OF THE PLOT C THAT IS, TO FIX THE CORNERS OF THE RECTANGLE ASSIGNED BY THE C SUBROUTINE AREA C CALL SETPLT(950000.0,960000.0,1140000.0,1040000.0) C C SUBROUTINE AXS2 ENABLES US TO DO THE FOLLOWING THINGS: C (1) DRAW A STRAIGHT LINE BETWEEN TWO SPECIFIED POINTS, C (2) DRAW A SPECIFIED NUMBER OF EQUI-SPACED TICK MARKS, C (3) ANNOTATE EACH TICK MARK WITH SPECIFIED NUMBERS AND, C (4) DRAW A SPECIFIED LABEL ON THE SPECIFIED SIDE OF THE LINE C CALL AXS2(980000.,990000.,1140000.,990000.,'KILOMETRES\',980., @40.,-4,.09,.08,(.04,0.0)) CALL AXS2(980000.,990000.,980000.,1040000.,'KILOMETRES\',990., @25.,2,.09,.08,(0.0,0.04)) DO 99 J=1,NS C C READ STATION NUMBERS AND CO-ORDINATES OF STATIONS C READ(2,450)(ISTN(I),I=1,7),W,Z 450 FORMAT(1X,7A1,2F15.4) C C READ MAJOR AND MINOR AXES OF STRAIN ELLIPSES AND THE C ORIENTATION ANGLE OF THE SEMI-MAJOR AXES C READ(3,150)RMAJ,RMIN,PHI 150 FORMAT(1X,2F16.10,F10.6) X=W Y=Z RMAJOR=RMAJ RMINOR=RMIN C C READ STATION NUMBER DISPLACEMENTS OF POINTS AND C THE VALUES OF AVERAGE DIFFERENTIAL ROTATION C READ(8,415)(ITON(I),I=1,7),DX1,DY1,DOMEGA 415 FORMAT(1X,A1,6A1,2F10.4,F16.10) C C MAKE BOTH AXES NEGATIVE TO PLOT THEM IN USER UNITS C RMAJOR=-ABS(RMAJOR)*1.0D4 RMINOR=-ABS(RMINOR)*1.0D4 C C * READ THE ELEMENTS OF THE SYMMETRIC STRAIN TENSOR MATRIX * C READ(4,455)A 455 FORMAT(1X,3F18.10) COSPHI=COS(PHI) SINPHI=SIN(PHI) C C COMPUTE THE CO-ORDINATES AT EACH ENDS OF AXES C OF THE STRAIN ELLIPSE C X1=X+RMAJOR*COSPHI Y1=Y+RMAJOR*SINPHI X2=X-RMAJOR*COSPHI Y2=Y-RMAJOR*SINPHI X3=X-RMINOR*SINPHI X4=X+RMINOR*SINPHI Y3=Y+RMINOR*COSPHI Y4=Y-RMINOR*COSPHI C C SPECIFY THE RADIUS OF THE SEGMENT OF THE CIRCLE FOR PLOTTING C THE VALUES OF OMEGA C RADIUS=7500.0 SX=X SY=Y DX=DX1 DY=DY1 OMEGA=DOMEGA OMEGA=OMEGA*1.0E5 C C COMPUTE THE CO-ORDINATES OF THE CORNERS OF THE SEGMENT C * OF THE CIRCLE * C X5=SX+RADIUS Y5=SY X6=SX+RADIUS*COS(OMEGA) Y6=SY+RADIUS*SIN(OMEGA) X7=X C C SUBROUTINE 'NOWPLOT ENABLES ONE TO DRAW POINTS AND ST. LINES C CALL NOWPLT(0,X1,Y1) C C SUBROUTINE DASHLINES ENABLES ONE TO PLOT DASHLINES C C PLOT DASH LINES FOR NEGATIVE VALUES OF STRAIN ELLIPSES C IF(RMAJ.LT.0.0)CALL DSHLNS(X2,Y2,(0.04,0.04)) C C PLOT SOLID LINES FOR POSITIVE VALUES OF AXES OF STRAIN ELLIPSES C IF(RMAJ.GE.0.)CALL NOWPLT(2,X2,Y2) CALL NOWPLT(0,X4,Y4) IF(RMIN.LT.0.0)CALL DSHLNS(X3,Y3,(0.04,0.04)) IF(RMIN.GE.0.)CALL NOWPLT(2,X3,Y3) C C PLOT THE STRAIN ELLIPSE BY CALLING THE SUBROUTINE'ELLIPS' C CALL ELLIPS(X,Y,RMAJOR,RMINOR,PHI) IF(OMEGA.EQ.0.0)GOTO 88 IF(OMEGA.LT.0.0) GOTO 73 C C * PLOT THE ARC OF THE CIRCLE BY CALLING THE SUBROUTINE 'ARC' * C CALL ARC(SX,SY,X5,Y5,X6,Y6) C C PLOT SOLID LINES FOR THE RADII OF THE SEGMENT OF THE CIRCLE C FOR POSITIVE VALUES OF OMEGA AND DRAW THE SEGMENT OF THE CIRCLE C CALL NOWPLT(0,X5,Y5) CALL NOWPLT(2,SX,SY) CALL NOWPLT(0,X6,Y6) CALL NOWPLT(2,SX,SY) GOTO 88 73 CALL ARC(SX,SY,X6,Y6,X5,Y5) C C PLOT DASH LINES FOR THE RADII OF THE SEGMENT OF THE CIRCLE C FOR NEGATIVE VALUES OF OMEGA AND DRAW THE SEGMENT OF THE CIRCLE C CALL NOWPLT(0,X5,Y5) CALL DSHLNS(SX,SY,(0.04,0.04)) CALL NOWPLT(0,X6,Y6) CALL DSHLNS(SX,SY,(0.04,0.04)) 88 CONTINUE C C PLOT STATION NUMBERS BY CALLING SUBROUTINE 'CHARS' C CALL CHARS(X7,Y,ISTN,0.,.08) C WRITE(6,75)(ITON(I),I=1,7),OMEGA,PHI 75 FORMAT(7X,'THE STATION NAMES AND VALUES OF OMEGA AND PHI ARE'/, @ 7X,'GIVEN BELOW'/7X,7A1,2F16.8/) 99 CONTINUE C C SUBROUTINE ENDPLT IS CALLED TO INDICATE THE END OF ALL PLOTTING C CALL ENDPLT STOP END