C*********************************************************************** C THIS SUBROUTINE IS DESIGNED TO GIVE THREE HISTOGRAMS OF SIGHTING C DISTANCE,SIGHTING ANGLE(COMPUTED OR MEASURED) OR THE SINE OF THE C SIGHTING ANGLE FOR ANY ONE CALL. C C SUBROUTINES CALLED: HIST,HISTGM,HEADER C********************************************************************** SUBROUTINE PHIST (X,N,KCUT,WIDTH,NAME,INDEX) INCLUDE 'PARMTR.INC' C********************************************************************** C DECLARATIONS C********************************************************************** CHARACTER*1 LABEL, HEAD, UL CHARACTER*1 NAME(24) REAL CUT(MAXCEL), X(*), FREQ(MAXCEL) C*********************************************************************** C COMMON STATEMENTS C*********************************************************************** COMMON /ALPHA/ LABEL(80), HEAD(30), UL(3,25) COMMON /PAGE/ IPAGE DO 20 K=2,4 C*********************************************************************** C CALCULATE CUT POINTS C*********************************************************************** NKCUT=KCUT/3 NKCUT=(KCUT*K)/3 SIZE=WIDTH/FLOAT(NKCUT) DO 10 I=1,NKCUT 10 CUT(I)=FLOAT(I)*SIZE C*********************************************************************** C CALCULATE FREQUENCIES C*********************************************************************** CALL HIST (X,N,CUT,NKCUT,FREQ) C*********************************************************************** C WRITE OUT HEADER STATEMENTS AND OUTPUT THE HISTOGRAM C*********************************************************************** CALL HEADER (1) KM1=K-1 IF (INDEX.EQ.2) THEN WRITE (6,40) NAME,KM1,SIZE,(UL(1,J),J=1,25) ELSE IF (INDEX.EQ.3) THEN WRITE (6,50) NAME,KM1,SIZE ELSE WRITE (6,40) NAME,KM1,SIZE ENDIF WRITE (6,90) CALL HISTGM (FREQ,NKCUT,38,CUT) IF (INDEX.EQ.2) THEN WRITE (6,70) NAME,(UL(1,J),J=1,25) ELSE IF (INDEX.EQ.3) THEN WRITE (6,80) NAME ELSE WRITE (6,70) NAME ENDIF 20 CONTINUE RETURN C*********************************************************************** C FORMAT STATEMENTS C*********************************************************************** C 40 FORMAT (//'0Histogram of ',24A1/' Cut Point Set ',I1, 1 ', Interval Width = ',G10.4,2X,25A1) 50 FORMAT (//'0Histogram of ',24A1/' Cut Point Set ',I1, 1 ', Interval Width = ',G10.4,2X,'Degrees') 60 FORMAT (1H0,13X,24A1) 70 FORMAT (/14X,24A1,' in ',25A1) 80 FORMAT (/14X,24A1,' in degrees') 90 FORMAT (///) END