def calc_t1(target, tdb)
      t_1 = MkTime.new(tdb.strftime("%Y%m%d%H%M%S")).jd
      t_2 = t_1
      pv_1 = @icrs_2[target]
      df, m = 1.0, 0
      while df > 1.0e-10
        r_12 = (0..2).map { |i| pv_1[i] - @icrs_2[:earth][i] }
        r_12_d = calc_dist(pv_1, @icrs_2[:earth])
        df = (Const::C * Const::DAYSEC / Const::AU) * (t_2 - t_1) - r_12_d
        df_wk = (0..2).inject(0.0) { |s, i| s + r_12[i] * @icrs_2[target][i + 3] }
        df /= ((Const::C * Const::DAYSEC / Const::AU) + (df_wk) / r_12_d)
        t_1 += df
        m += 1
        raise Const::MSG_ERR_5 if m > 10
        pv_1 = get_icrs(Const::BODIES[target], t_1)
      end
      return t_1
    rescue => e
      raise
    end
def calc_t1(target, tdb)
      t_1 = MkTime.new(tdb.strftime("%Y%m%d%H%M%S")).jd
      t_2 = t_1
      pv_1 = @icrs_2[target]
      df, m = 1.0, 0
      while df > 1.0e-10
        r_12 = (0..2).map { |i| pv_1[i] - @icrs_2[:earth][i] }
        r_12_d = calc_dist(pv_1, @icrs_2[:earth])
        df = (Const::C * Const::DAYSEC / Const::AU) * (t_2 - t_1) - r_12_d
        df_wk = (0..2).inject(0.0) { |s, i| s + r_12[i] * @icrs_2[target][i + 3] }
        df /= ((Const::C * Const::DAYSEC / Const::AU) + (df_wk) / r_12_d)
        t_1 += df
        m += 1
        raise Const::MSG_ERR_5 if m > 10
        pv_1 = get_icrs(Const::BODIES[target], t_1)
      end
      return t_1
    rescue => e
      raise
    end
=========================================================================
 対象天体が光を発した時刻 t1 の計算（太陽・月専用）

 * 計算式： c * (t2 - t1) = r12  (但し、 c: 光の速度。 Newton 法で近似）
 * 太陽・月専用なので、太陽・木星・土星・天王星・海王星の重力場による
   光の曲がりは非考慮。

 @param:  target  (対象天体(Symbol))
 @param:  tdb     (Time Object(観測時刻;TDB))
 @return: t_1     (Numeric(Julian Day))
=========================================================================