土用の丑の日の意味
「土用」は大雑把に言えば、年に4回ある節分の前、約18日間のこと。節分は2月の節分が知られていますが、実は年4回あって、立夏、立秋、立冬、立春の前日だそうです。
つまり「土用」は「日」ではなく「期間」です。天文学的に計算できます。
一方「丑の日」には天文学的な意味はありません。
単純に十二支(子丑寅卯辰巳午未申酉戌亥)を一日ずつずらしているだけです。
例えば2013年7月21日は「子の日」、7月22日は「丑の日」、7月23日は「寅の日」となり、延々と繰り返されます。
「土用の丑の日」は、毎年ほぼ同じ時期に訪れる夏の「土用」の約18日間に、12日周期で訪れる「丑の日」のことです。毎年ありますが2回の年もあります。
ウナギを食べて元気になろうという風習があります。
「土用」は暑い時期ということで意味がありますが、「丑の日」には意味がありません。
十二支は基準となる日の干支が分かれば計算で求まります。
修正ユリウス日というのがあります。1858年11月17日を0日目として経過日数を示すものです。
修正ユリウス日が0日が寅の日であることが分かっています。
経過日数を計算し12で割ったあまりが寅の日からの日数になります。
JavaScriptで関数を作ってみました。修正ユリウス日に2を加えて(寅の日は子の日の2日後)、そのあまりによって十二支を返します。
function junishi(y, m, d) {
var junishi, mjd, amari;
junishi = ["子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥"];
if(m < 3) {
m += 12;
y--;
}
mjd = Math.floor(365.25 * y) + Math.floor(y / 400) - Math.floor(y / 100) + Math.floor(30.59 * (m - 2)) + d - 678912;
amari = (mjd + 2) % 12;
return junishi[amari];
}
var junishi, mjd, amari;
junishi = ["子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥"];
if(m < 3) {
m += 12;
y--;
}
mjd = Math.floor(365.25 * y) + Math.floor(y / 400) - Math.floor(y / 100) + Math.floor(30.59 * (m - 2)) + d - 678912;
amari = (mjd + 2) % 12;
return junishi[amari];
}
[ 2013年7月24日 | カテゴリー: 豆知識 | タグ: JavaScript , ウナギ , 土用 , 暦 ]
« 郵便記号は3種類 | 文字列を数値に変換する方法と処理速度 »
[…] 土用の丑の日を求める方法を記事にしようとしたところ、既に書いていたことを忘れていました。 […]