FUNCTION Dayofyr, iyr, imo, idm, century=century ; Be sure of arrays n_days = N_ELEMENTS(idm) n_yrs = N_ELEMENTS(iyr) IF((n_yrs NE n_days) AND (n_yrs NE 1)) THEN BEGIN print, ' BAD ARRAY SIZES', n_yrs, n_days dyr = -1 RETURN, dyr ENDIF n_mos = N_ELEMENTS(imo) IF((n_mos NE n_days) AND (n_mos NE 1)) THEN BEGIN print, ' BAD ARRAY SIZES', n_mos, n_days dyr = -1 RETURN, dyr ENDIF imo = imo > 1 imo = imo < 12 IF(KEYWORD_SET(century)) THEN cnt = century lyr = leap_yr(iyr, century = cnt, molim = molim) molim0 = molim(*, 0) & molim1 = molim(*, 1) dyr = idm & dyr(*) = -1 IF(n_yrs NE 1) THEN BEGIN sslyr1 = where(lyr EQ 1) & sslyr0 = where(lyr EQ 0) IF(sslyr1(0) NE -1) THEN dyr(sslyr1) = idm(sslyr1)+molim1(imo(sslyr1)-1) IF(sslyr0(0) NE -1) THEN dyr(sslyr0) = idm(sslyr0)+molim0(imo(sslyr0)-1) ENDIF ELSE BEGIN IF(lyr(0) EQ 1) THEN dyr = idm+molim1(imo-1) IF(lyr(0) EQ 0) THEN dyr = idm+molim0(imo-1) ENDELSE RETURN, dyr END