; ; PURPOSE: Calculate date and time that correspond to a crn:Cl0 ; CALLING SEQUENCE : ; datetime_scrncrlz1,crn,crl,reso=,year,month,day,hh,mm,ss,/plt ; IUPUT: crn,crl,reso= ; OUTPUT: year,month,day,hh,mm,ss,/plt ; MODIFICATION HISTORY : ; First version: 20090531 by X. Zhao based on datetime_scrncrl.pro ; 20060327 by X. Zhao ; ;pro date_crncrlz1,crn,crl,RESO=reso,date1,crli,date0,PLT=plt pro date_crncrlz1,crn,crl,date1,crli,date0,PLT=plt if N_params() LT 1 then begin ; print,'date_crncrlz1,crn,crl,reso=,date1,crli,date0,/plt' print,'date_crncrlz1,crn,crl,crli,date0,/plt' print,"crn=2081 & crl=180.50" print,"resolution of 600sec., 300sec, 60sec, 10sec and 1sec" return endif ;lim=0.00277778 ;lim=0.000277778 lim=0.00194444 ; CASE 1 OF ; reso eq 600: lim=0.166667 ; 600 sec = 10 min. = 0.166667 hr ; reso eq 300: lim=0.0833333 ; reso eq 60: lim=0.0166667 ; reso eq 10: lim=0.00277778 ; reso eq 7: lim=0.00194444 ; reso eq 6: lim=0.00166667 ; reso eq 1: lim=0.000277778 ; ENDCASE date0_crncrl,crn,crl,date0 fdoy_date,date0,fdoy0,year crl_yyyymmddtime,year,fdoy0,crli dcl=crli-crl if ABS(dcl) gt 100 then crli=crli+360 dcl=crli-crl if keyword_set(plt) then print,'date0,crl,First crli:',date0,crl,crli CASE 1 OF ; Case 1 dcl gt 0.0005: begin fdoy=fdoy0 lbl1: fdoy=fdoy+lim/24 ;hrs=hrs+1. crl_yyyymmddtime,year,fdoy,crli dcl=crli-crl if ABS(dcl) gt 100 then crli=crli+360 dcl=crli-crl if keyword_set(plt) then print,'C1-crli,dcl:',crli,dcl if dcl gt 0.0005 then goto, lbl1 else day1=fdoy end ; Case 2 dcl lt -0.0005: begin fdoy=fdoy0 lbl3: fdoy=fdoy-lim/24 crl_yyyymmddtime,year,fdoy,crli dcl=crli-crl if keyword_set(plt) then print,'C2-fdoy,crli,dcl:',fdoy,crli,dcl if (crli eq 359.999) and (crl eq 360.0) then day1=fdoy if dcl lt -0.0005 then goto, lbl3 else day1=fdoy end else: day1=fdoy0 ENDCASE doy=FIX(fdoy) hrs1=(fdoy-doy)*24 hh=FIX(hrs1) & mm=FIX((hrs1-hh)*60) & ss=FIX((hrs1-hh)*3600-mm*60) doy2dmy,year,doy,day,month date_year_sec,year,month,day,hh,mm,ss,date1 if keyword_set(plt) then begin print,'Orig. crn,crl and date0 from times:',STRTRIM(crn,2),' ',STRTRIM(crl,2),' ',date0 print,'Last crn,crli and date1 :',STRTRIM(crn,2),' ',STRTRIM(crl,2),' ',date1 endif end