C+ C NAME: C pr_t_lat_lon_2rot_delt.f C PURPOSE: C print_the Image #, Julian date, Sidereal Time, interpolated latitude and longitude of each image, and the rotations C and delta rotations. C C CATEGORY: C I/O C CALLING SEQUENCE: C pr_t_lat_lon_2rot_delt(NOBS,NSTAR,JJ,JDbeg,JDX,ST,alatyy,alonxx,AROTA) C C INPUTS: C NOBS integer Number of star images used' C NSTAR integer Number of stars with determined centroids C JJ integer Star that is used to determine the pole (1 for Polaris) C JDbeg real*8 Julian date that is used to begin the ASHI observations (8 pm MST August 25, 2022 or 2 am UT August 26, 2022) C JDX (NOBS) real*8 Julian Date of the image observation time (in UT) C ST (NOBS) real Sidereal time (in degrees) C alatyy(NOBS) real Interpolated latitude of ASHI C alonxx(NOBS) real Interpolated longitude of ASHI C AROTA (NOBS) real Rotation to get the pole to the image top without sidereal time C C OUTPUTS: C I integer The image number measured C JDX (NOBS) real*8 Julian Date of the image observation time C JDX in hours, min, sec C ST Sidereal time in degrees C alatyy(NOBS) real Interpolated latitude C alonxx(NOBS) real Interpolated longitude C AROTA (NOBS) real rotation to get back to the pole in degrees C DAROTA delta rotation to get to the pole in degrees C AROTAS rotation to get back to the pole in degrees, sidereal time imposed C DAROTAS delta rotation to get back to the pole in degrees, sidereal time imposed C C FUNCTIONS/SUBROUTINES: C C MODIFICATION HISTORY: C September-2022, Bernard Jackson (UCSD) C- subroutine pr_t_lat_lon_2rot_delt(NOBS,NSTAR,JJ,JDbeg,JDX,ST,alatyy,alonxx,AROTA) real alatyy(NOBS), & alonxx(NOBS), & ST (NOBS) real AROTA (NSTAR,NOBS) real*8 JDX (NOBS), & JDbeg print*, ' ' print*, ' Into pr_t_lat_lon_2rot_delt' do I=1,NOBS if(I.eq.1) then print*,' ' print*,'JD = Julian Date, and in UT in hours min, and secs of 26 August, 2022' print*,'ST = Sidereal time in degrees' print*,'lat,lon = latitude and west longitude of ASHI at the UT time (both in degrees)' print*,'Rot = Rotation to place pole at the top of the image' print*,'RotS = Rotation (HA - ST) from your center Pol placed at one location' print*,' ' write(*,'(A)')'Image JD hh mm ss ST lat lon Rot DRot RotS DRotS' end if AJDsthu = (JDX(I) - JDbeg)*24.0d0 + 2.0d0 IAJDsthu = AJDsthu thum = (AJDsthu - IAJDsthu)*60.0 ithum = thum tsecu = (thum - ithum)*60.0 IAJDsthl = IAJDsthu - 6 if(IAJDsthl.lt.0) IAJDsthl = IAJDsthl + 12 ARPST = -AROTA(JJ,I)-ST(I) if(I.ne.NOBS) then DAROTA = (-AROTA(JJ,I+1)) - (-AROTA(JJ,I)) DAROTAL = DAROTA if(DAROTA.lt.-180.0) DAROTA = DAROTA + 360.0 if(DAROTA.gt.180.0) DAROTA = DAROTA - 360.0 DARPST = (-AROTA(JJ,I+1)-ST(I+1)) - (-AROTA(JJ,I)-ST(I)) if(DARPST.lt.-180.0) DARPST = DARPST + 360.0 if(DARPST.gt.180.0) DARPST = DARPST - 360.0 DARPSTL = DARPST else DAROTA = DAROTAL DARPST = DARPSTL end if if(ARPST.lt.0.0) ARPST = ARPST + 360.0 if(ARPST.gt.360.0) ARPST = ARPST - 360.0 if(Iave.eq.0) write(*,'(I4,F14.5,I2,I3,F5.1,F8.3,F6.2,F7.2,2(F7.2,F7.3))'), & I,JDX(I),IAJDsthu,ithum,tsecu,ST(I),alatyy(I),alonxx(I),-AROTA(JJ,I),DAROTA,ARPST,DARPST end do print*, ' Out of pr_t_lat_lon_2rot_delt' return end