module Zakuro::Daien::Lunar::Adjustment
Adjustment
補正値情報
Constants
- DAY_LIMIT
『歴代天文律暦等志彙編 七』中華書房 p.2230
遠/近の地点での中間
@return [Hash<Integer>] 遠/近の地点での中間
- LIST
『歴代天文律暦等志彙編 七』中華書房 p.2228-2230
@note 7日、14日、21日、28日の小余は
DAY_LIMIT
を参照のこと@return [Array<Row>] 月の補正値情報
Public Class Methods
minus_minute(day:, minute:)
click to toggle source
小余の下げ幅を求める
@param [Integer] day 大余 @param [Integer] minute 小余
@return [Integer] 小余の下げ幅
# File lib/zakuro/version/daien/stella/lunar/adjustment.rb, line 228 def self.minus_minute(day:, minute:) limit = DAY_LIMIT.fetch(day, -1) # 該当なし return minute if limit == -1 return minute unless minute > limit minute - limit end
specify(day:, minute:)
click to toggle source
月軌道の補正に必要な基本値を引き当てる
@param [True, False] forward 進(遠地点より数える)/退(近地点より数える) @param [Integer] day 大余 @param [Integer] minute 小余
@return [Row] 補正値
# File lib/zakuro/version/daien/stella/lunar/adjustment.rb, line 209 def self.specify(day:, minute:) LIST.each do |row| # NOTE: 範囲が重複している場合、最初に引き当てたほうを優先する return row if row.match?(day: day, minute: minute) end raise ArgumentError.new, "invalid parameter: #{day}/#{minute}" end