VOYAGER
Voyager LECP Data Analysis Handbook
Instrument Modeling Reports
by Sheela Shodhan
E.7 TRACKSUB5
************************************************************************** * THIS FILE CONTAINS THE SUBROUTINES: * * (1) EVELO : TO DETERMINE THE VELOCITY OF THE ELECTRON FROM THE GIVEN * * ENERGY (E). * * (2) FPHI : FUNCTION TO DETERMINE THE AZIMUTHAL ANGLE PHI FORMED BY THE * * END LINE-SEGMENT OF THE TRAJECTORY OF THE ESCAPING PARTICLE. * * (3) GEOM : IT OPENS THE FILE OF COORDINATES OF THE VERTICES OF THE * * MODELLED POLYGONS OF THE SENSOR SUBSYSTEM AND THE FILE OF * * PLANE COEFFICIENTS AND INITIALISES THE ARRAYS 'COEFF'AND * * 'CHAN' WITH THE VERTICES AND THE PLANE COEFFICIENTS, RESPECTI* * -VELY. * * (4) PASSOUTPUT : IT WRITES THE POLAR AND THE AZIMUTHAL ANGLES OF THE * * ESCAPING PARTICLE AT THE DETECTOR AND AT THE APERTURE * * AND IT ALSO WRITES THE POSITION AND THE VELOCITIES OF * * THE PARTICLE AS IT ESCAPES THE APERTURE. * * (5) VELOPROJ : TO DETERMINE THE VELOCITY COMPONENTS FROM THE TOTAL VELO* * -CITY (V),POLAR ANGLE (THETA) AND THE AZIMUTHAL ANGLE (PHI).* **************************************************************************
SUBROUTINE VELOPROJ(V,VX,VY,VZ,THETA,PHI)
* PURPOSE : GIVEN THE VELOCITY, TO FIND THE COMPONENTS OF VELOCITY * * IN THE CARTESIAN COORDINATE SYSTEM I.E. TO FIND Vx,Vy,Vz * **************************************************************************
REAL*8 PHI,PHI1,PI,RAD,THETA,THETA1,V,VX,VY,VZ
PI = 4.0D0 * DATAN(1.0D0) RAD = PI/180.0D0 THETA1 = THETA * RAD PHI1 = PHI * RAD VX = V * DSIN(THETA1) * DCOS(PHI1) VY = V * DSIN(THETA1) * DSIN(PHI1) VZ = V * DCOS(THETA1)
RETURN END
C------------------------------------------------------------------------- C------------------------------------------------------------------------- REAL*8 FUNCTION EVELO(EK)
* PURPOSE : TO FIND THE RATIO OF THE VELOCITY OF THE e TO THE VELOCITY * * OF LIGHT. I.E. TO COMPUTE V/C GIVEN THE INITIAL ENERGY OF THE ELECTRON * * IN MEV. 2 2 * * FORMULA USED : (V/C) = 1 - (REST MASS) * * ---------------- 2 * * (K.E. + REST MASS) * ************************************************************************** IMPLICIT NONE REAL*8 C,E1,EK,TEMP DATA C/2.998D0/,E1/0.511D0/
TEMP = E1/(E1+EK) EVELO = C * DSQRT(1 - TEMP*TEMP)
RETURN END
C-------------------------------------------------------------------------- C-------------------------------------------------------------------------- SUBROUTINE GEOM
* PURPOSE: THIS SUBROUTINE OPENS THE FILES: * * COOR*.DAT:IT CONTAINS THE COORDINATES OF ALL THE VERTICES OF ALL THE * * PLANE SURFACES THAT THE PARTICLE IS LIKELY TO HIT * * COEFF.DAT:IT CONTAINS THE CONSTANT COEFFICIENTS A,B,C,D OF EACH OF THE * * PLANES THAT THE PARTILCE IS LIKELY TO HIT * * AND IT INITIALISES THE ARRAYS: * * CHAN:EACH ROW CORRESPONDS TO A PLANE SURFACE; * * COL. 1:NO. OF VERTICES OF THAT PLANE POLYGON * * COL. 2>>>COL. NVERT*3+1 :ALL THE COORDINATES OF THE VERTICES * * COEFF:EACH ROW CORRESPONDS TO A PLANE POLYGON * * COL. 1>>>COL. 4 :A,B,C,D * *************************************************************************** IMPLICIT NONE CHARACTER*72 FNAME,FNAME1 INTEGER HIT,I,I1,I2,J,K,MAXCOO,MAXSURF,NS,NV,NSURF,NVERT,NTY PARAMETER (MAXCOO=31,MAXSURF=50) REAL*8 A,B,C,D REAL*8 CHAN(MAXSURF,MAXCOO),COEFF(MAXSURF,4),TLN(2,3),VERT(10,3), & Y(6) COMMON /CHAN/CHAN,/TLN/TLN,/COEFF/COEFF,/NTY/NTY
WRITE(6,*) 'ENTER THE NAME OF THE FILE OF COORDINATES' READ(5,10) FNAME OPEN (UNIT=1,STATUS='OLD',FILE=FNAME)
WRITE(6,*) 'ENTER THE NAME OF THE FILE OF COEFFICIENTS' READ(5,10) FNAME1 OPEN (UNIT=2,STATUS='OLD',FILE=FNAME1)
READ (1,*) 2 READ(1,*,END=70) NTY READ(1,*) NVERT CHAN(NTY,1) = DFLOAT(NVERT) I1=2 3 READ(1,20,ERR=2) (CHAN(NTY,K),K=I1,I1+2) I1=K GO TO 3 70 CLOSE(1)
I2=1 4 READ(2,30,END=80) NS,NV,(COEFF(I2,J),J=1,4) I2=I2+1 GO TO 4 80 CLOSE(2)
D DO I=1,NTY D WRITE(6,*) 'SURFACE NO.:',I D WRITE(6,*)'COORDINATES ARE:' D WRITE(6,*) (CHAN(I,J),J=2,IDINT(CHAN(I,1))*3+1) D WRITE(6,*) 'THE PLANE COEFFICIENTS ARE:' D WRITE(6,*) (COEFF(I,J),J=1,4) D END DO
10 FORMAT(A72) 20 FORMAT(3(X,F9.6)) 30 FORMAT(1X,I3,1X,I3,4(1X,D13.6))
RETURN END C------------------------------------------------------------------------- C------------------------------------------------------------------------- SUBROUTINE PASSOUTPUT
* PURPOSE:THIS PROGRAM OUTPUTS THE POLAR & THE AZIMUTHAL ANGLES * * OF THE ESCAPING PARTICLES ONTO A FILE. * * * * NPAS : TOTAL NO. OF PARTICLES THAT ESCAPE THE SENSOR ASSEMBLY * * PAS(I,J) : 2-D ARRAY * * I : NO. OF ESCAPING PARTICLE * * J=1: POLAR ANGLE AT THE DETECTOR * * =2: AZIMUTHAL ANGLE AT THE DETECTOR * * =3: POLAR ANGLE AT THE APERTURE * * =4: AZIMUTHAL ANGLE AT THE APERTURE * * =5-10 :X,Y,Z,Vx,Vy,Vz OF THE ESCAPING PARTICLE * **************************************************************************
IMPLICIT NONE CHARACTER*72 FNAME1,FNAME2,FNAME3,FNAME4 INTEGER I,J REAL*8 PASVEL(10000,2),PI,RAD
COMMON /PASVEL/PASVEL COMMON /FNAME1/FNAME1 COMMON /FNAME4/FNAME4 COMMON /FNAME2/FNAME2,FNAME3 INCLUDE 'PASS5.CMN'
PI = 4.0D0*DATAN(1.0D0) RAD = 180.0D0/PI
OPEN(UNIT=8,FILE=FNAME1,ACCESS='SEQUENTIAL',STATUS='OLD') OPEN(UNIT=1,FILE=FNAME2,ACCESS='SEQUENTIAL',STATUS='OLD') OPEN(UNIT=2,FILE=FNAME3,ACCESS='SEQUENTIAL',STATUS='OLD') OPEN(UNIT=3,FILE=FNAME4,ACCESS='SEQUENTIAL',STATUS='OLD')
WRITE(8,*) 'NPAS:',NPAS WRITE(8,*) WRITE(8,20) DO I=1,NPAS PAS(I,3) = PAS(I,3)*RAD PAS(I,4) = PAS(I,4)*RAD PASVEL(I,1) = PASVEL(I,1)*RAD PASVEL(I,2) = PASVEL(I,2)*RAD WRITE(8,10) (PAS(I,J),J=1,10) WRITE(1,30) PAS(I,1),PAS(I,2) WRITE(2,30) PAS(I,3),PAS(I,4) WRITE(3,30) PASVEL(I,1),PASVEL(I,2) END DO
10 FORMAT(1X,4(F7.2,X),6(D15.8,X)) 20 FORMAT (1X,' THETA ',1X,' PHI ',1X,' OMEGA ',1X,' PSI ', & X,6X,'X(+02)',3X,X,6X,'Y(+02)',3X,X,6X,'Z(+02)',3X,X,4X, & 'VX(+10)',4X,X,4X,'VY(+10)',4X,X,4X,'VZ(+10)',4X) 30 FORMAT(2(X,F9.3)) RETURN END C---------------------------------------------------------------------------- C---------------------------------------------------------------------------- REAL*8 FUNCTION FPHI(XT,YT)
* PURPOSE : THIS ROUTINE DETERMINES THE AZIMUTHAL ANGLE PHI FORMED BY THE * * LINE-SEGMENTS YT & XT. * ****************************************************************************** IMPLICIT NONE REAL*8 PI,TOL,XT,YT PARAMETER (TOL=0.1D-10) D PRINT *,'TOL: ',TOL PI=4.0D0*DATAN(1.0D0)
IF (DABS(XT).LT.TOL .AND. YT.GT.0.0D0) THEN FPHI=PI/2.0D0 D PRINT *,'I AM IN 1' ELSE IF (DABS(XT) .LT. TOL .AND. YT.LT.0.0D0) THEN FPHI=1.5D0*PI D PRINT *,'I AM IN 2' ELSE IF (XT.GT.0.D0.AND.YT.GE.0.0D0) THEN FPHI=DATAN(YT/XT) D PRINT *,'I AM IN 3' ELSE IF (XT.LT.0.0D0.AND.YT.GE.0.D0) THEN FPHI=PI-DATAN(YT/DABS(XT)) D PRINT *,'I AM IN 4' ELSE IF (XT.LT.0.D0.AND.YT.LE.0.0D0) THEN FPHI=PI+DATAN(YT/XT) D PRINT *,'I AM IN 5' ELSE FPHI=2*PI-DATAN(DABS(YT)/XT) D PRINT *,'I AM IN 6' END IF END IF END IF END IF END IF 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.