算命学ロジック完全仕様 §22 の付録。参照実装 engine.js の実際の出力から作った、再実装の答え合わせ用データ。
本編(共有ページ)
F.1 の作業例を手で追う → F.2 で meishiki を合わせる → F.3 応用技 → F.4 大運・行運・相性・暦・検索。全量の突き合わせは F.5 のスクリプトで。
手順の番号は本編の節に対応する(①②=§2.4 と §3.5、③=§3.2、④=§3.3、⑤=§3.4、⑥=§3.7、⑦=§4.2、⑧=§4.3、⑨=§5、大運=§15)。
| 手順 | 計算 | 結果 |
|---|---|---|
| ① ユリウス日 | jdn(1984,10,10) |
2445984 |
| ② 日柱 | didx = mod(2445984 + 49, 60) = 13 → KAN[3] SHI[1] |
丁丑(14番) |
| ③ 直前の節 | 節入り表 1984年 の 10番目 = 8日 → 1984-10-08(寒露・月支戌) |
keika = 2445984 − 2445982 + 1 = 3 |
| ④ 年柱 | 立春は 1984年2月5日 → 立春以後なので 1984年 → yidx = mod(1984 − 4, 60) = 0 |
甲子(1番) |
| ⑤ 月柱 | 月支 戌、五虎遁 GOTORA[甲]+寅から数えて 8 番目 |
甲戌(11番) |
| ⑥ 蔵干(採用) | 年支子・月支戌・日支丑 を keika=3 で引く(月:kantei/年日:kantei) |
年 癸・月 辛・日 癸 |
| ⑦ 人体図 | 日干丁から見る |
北=玉堂星(年干甲)/東=車騎星(癸)/中央=禄存星(辛)/西=車騎星(癸)/南=玉堂星(月干甲)/伴=鳳閣星(己) |
| ⑧ 従星 | 日干丁から年支・月支・日支 |
初年=天馳星(1)・中年=天印星(6)・晩年=天庫星(5) → 合計 12 |
| ⑨ 天中殺 | floor(13 / 10) = 1(親の天中殺は floor(0 / 10) = 0) |
申酉天中殺(親: 戌亥天中殺) |
| 大運 | 年干が陽 × 男 → 順行。次の節まで 28日 → round(28/3) = 立運 9歳 |
9歳 乙亥(龍高星/天報星)、19歳 丙子(石門星/天馳星)、29歳 丁丑(貫索星/天庫星)、39歳 戊寅(調舒星/天極星) … |
| 手順 | 計算 | 結果 |
|---|---|---|
| ① ユリウス日 | jdn(2000,2,4) |
2451579 |
| ② 日柱 | didx = mod(2451579 + 49, 60) = 28 → KAN[8] SHI[4] |
壬辰(29番) |
| ③ 直前の節 | 節入り表 2000年 の 2番目 = 4日 → 2000-02-04(立春・月支寅) |
keika = 2451579 − 2451579 + 1 = 1 |
| ④ 年柱 | 立春は 2000年2月4日 → 立春以後なので 2000年 → yidx = mod(2000 − 4, 60) = 16 |
庚辰(17番) |
| ⑤ 月柱 | 月支 寅、五虎遁 GOTORA[庚]+寅から数えて 0 番目 |
戊寅(15番) |
| ⑥ 蔵干(採用) | 年支辰・月支寅・日支辰 を keika=1 で引く(月:kantei/年日:kantei) |
年 乙・月 戊・日 乙 |
| ⑦ 人体図 | 日干壬から見る |
北=龍高星(年干庚)/東=調舒星(乙)/中央=車騎星(戊)/西=調舒星(乙)/南=車騎星(月干戊)/伴=調舒星(乙) |
| ⑧ 従星 | 日干壬から年支・月支・日支 |
初年=天庫星(5)・中年=天胡星(4)・晩年=天庫星(5) → 合計 14 |
| ⑨ 天中殺 | floor(28 / 10) = 2(親の天中殺は floor(16 / 10) = 1) |
午未天中殺(親: 申酉天中殺) |
| ⑩ 時柱 | 日干壬 + 23時 |
庚子 |
| 大運 | 年干が陽 × 女 → 逆行。前の節から 0日 → round(0/3) = 立運 0歳 |
0歳 丁丑(司禄星/天堂星)、10歳 丙子(禄存星/天将星)、20歳 乙亥(調舒星/天禄星)、30歳 甲戌(鳳閣星/天南星) … |
| 手順 | 計算 | 結果 |
|---|---|---|
| ① ユリウス日 | jdn(2026,8,7) |
2461260 |
| ② 日柱 | didx = mod(2461260 + 49, 60) = 49 → KAN[9] SHI[1] |
癸丑(50番) |
| ③ 直前の節 | 節入り表 2026年 の 8番目 = 7日 → 2026-08-07(立秋・月支申) |
keika = 2461260 − 2461260 + 1 = 1 |
| ④ 年柱 | 立春は 2026年2月4日 → 立春以後なので 2026年 → yidx = mod(2026 − 4, 60) = 42 |
丙午(43番) |
| ⑤ 月柱 | 月支 申、五虎遁 GOTORA[丙]+寅から数えて 6 番目 |
丙申(33番) |
| ⑥ 蔵干(採用) | 年支午・月支申・日支丑 を keika=1 で引く(月:kantei/年日:kantei) |
年 己・月 戊・日 癸 |
| ⑦ 人体図 | 日干癸から見る |
北=司禄星(年干丙)/東=車騎星(己)/中央=牽牛星(戊)/西=貫索星(癸)/南=司禄星(月干丙)/伴=龍高星(辛) |
| ⑧ 従星 | 日干癸から年支・月支・日支 |
初年=天馳星(1)・中年=天極星(2)・晩年=天南星(10) → 合計 13 |
| ⑨ 天中殺 | floor(49 / 10) = 4(親の天中殺は floor(42 / 10) = 4) |
寅卯天中殺(親: 寅卯天中殺) |
| 大運 | 年干が陽 × 男 → 順行。次の節まで 31日 → round(31/3) = 立運 10歳 |
10歳 丁酉(禄存星/天胡星)、20歳 戊戌(牽牛星/天堂星)、30歳 己亥(車騎星/天将星)、40歳 庚子(玉堂星/天禄星) … |
| 手順 | 計算 | 結果 |
|---|---|---|
| ① ユリウス日 | jdn(2021,2,3) |
2459249 |
| ② 日柱 | didx = mod(2459249 + 49, 60) = 18 → KAN[8] SHI[6] |
壬午(19番) |
| ③ 直前の節 | 節入り表 2021年 の 2番目 = 3日 → 2021-02-03(立春・月支寅) |
keika = 2459249 − 2459249 + 1 = 1 |
| ④ 年柱 | 立春は 2021年2月3日 → 立春以後なので 2021年 → yidx = mod(2021 − 4, 60) = 37 |
辛丑(38番) |
| ⑤ 月柱 | 月支 寅、五虎遁 GOTORA[辛]+寅から数えて 0 番目 |
庚寅(27番) |
| ⑥ 蔵干(採用) | 年支丑・月支寅・日支午 を keika=1 で引く(月:kantei/年日:kantei) |
年 癸・月 戊・日 己 |
| ⑦ 人体図 | 日干壬から見る |
北=玉堂星(年干辛)/東=石門星(癸)/中央=車騎星(戊)/西=牽牛星(己)/南=龍高星(月干庚)/伴=禄存星(丙) |
| ⑧ 従星 | 日干壬から年支・月支・日支 |
初年=天堂星(8)・中年=天胡星(4)・晩年=天報星(3) → 合計 15 |
| ⑨ 天中殺 | floor(18 / 10) = 1(親の天中殺は floor(37 / 10) = 3) |
申酉天中殺(親: 辰巳天中殺) |
| 大運 | 年干が陰 × 女 → 順行。次の節まで 30日 → round(30/3) = 立運 10歳 |
10歳 辛卯(玉堂星/天極星)、20歳 壬辰(貫索星/天庫星)、30歳 癸巳(石門星/天馳星)、40歳 甲午(鳳閣星/天報星) … |
各行は meishiki(y,m,d,opts) の正規化した出力(gen_golden.cjs の canon と同じ形)。opts は見出しの横に示した。
1901-01-01 — 範囲の下端(前年12月の大雪の中。年柱は庚子)
{"date":"1901-01-01","weekday":"火","setsu":{"name":"大雪","jst":"1900-12-07 21:55","keika":26,"isSetsuiriDay":false},"pillars":{"year":{"kan":"庚","shi":"子","kanshi":"庚子","zokan":"癸","no":37,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"戊","shi":"子","kanshi":"戊子","zokan":"癸","no":25,"stages":{"初元":null,"中元":null,"本元":"癸"}},"day":{"kan":"己","shi":"卯","kanshi":"己卯","zokan":"乙","no":16,"stages":{"初元":null,"中元":null,"本元":"乙"}}},"stars":{"ancestor":{"kan":"乙","star":"車騎星"},"north":{"kan":"庚","star":"調舒星"},"center":{"kan":"癸","star":"禄存星"},"south":{"kan":"戊","star":"石門星"},"east":{"kan":"癸","star":"禄存星"},"west":{"kan":"乙","star":"車騎星"}},"starSet":["車騎星","調舒星","禄存星","石門星"],"jusei":{"early":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"late":{"shi":"卯","name":"天胡星","energy":4,"unsei":"病"}},"juseiSet":["天馳星","天胡星"],"totalEnergy":6,"gogyoDist":{"金":2,"火":1,"土":2,"木":1},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"辰巳天中殺","ijou":{"year":"通常","month":"暗合","day":null},"nikkanGogyo":"土","nisshiGogyo":"木","moon":null,"hourPillar":null}
1901-01-05 — 小寒の前日
{"date":"1901-01-05","weekday":"土","setsu":{"name":"大雪","jst":"1900-12-07 21:55","keika":30,"isSetsuiriDay":false},"pillars":{"year":{"kan":"庚","shi":"子","kanshi":"庚子","zokan":"癸","no":37,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"戊","shi":"子","kanshi":"戊子","zokan":"癸","no":25,"stages":{"初元":null,"中元":null,"本元":"癸"}},"day":{"kan":"癸","shi":"未","kanshi":"癸未","zokan":"己","no":20,"stages":{"初元":"丁","中元":"乙","本元":"己"}}},"stars":{"ancestor":{"kan":"乙","star":"鳳閣星"},"north":{"kan":"庚","star":"玉堂星"},"center":{"kan":"癸","star":"貫索星"},"south":{"kan":"戊","star":"牽牛星"},"east":{"kan":"癸","star":"貫索星"},"west":{"kan":"己","star":"車騎星"}},"starSet":["鳳閣星","玉堂星","貫索星","牽牛星","車騎星"],"jusei":{"early":{"shi":"子","name":"天禄星","energy":11,"unsei":"建禄"},"mid":{"shi":"子","name":"天禄星","energy":11,"unsei":"建禄"},"late":{"shi":"未","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天禄星","天庫星"],"totalEnergy":27,"gogyoDist":{"火":1,"水":1,"木":2,"金":2},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"辰巳天中殺","ijou":{"year":"通常","month":"暗合","day":null},"nikkanGogyo":"水","nisshiGogyo":"土","moon":{"kind":"満月","time":"09:13"},"hourPillar":null}
1901-01-06 — 節入りの日(小寒 08:53)
{"date":"1901-01-06","weekday":"日","setsu":{"name":"小寒","jst":"1901-01-06 08:53","keika":1,"isSetsuiriDay":true},"pillars":{"year":{"kan":"庚","shi":"子","kanshi":"庚子","zokan":"癸","no":37,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"己","shi":"丑","kanshi":"己丑","zokan":"癸","no":26,"stages":{"初元":"癸","中元":"辛","本元":"己"}},"day":{"kan":"甲","shi":"申","kanshi":"甲申","zokan":"戊","no":21,"stages":{"初元":"戊","中元":"壬","本元":"庚"}}},"stars":{"ancestor":{"kan":"乙","star":"石門星"},"north":{"kan":"庚","star":"車騎星"},"center":{"kan":"癸","star":"玉堂星"},"south":{"kan":"己","star":"司禄星"},"east":{"kan":"癸","star":"玉堂星"},"west":{"kan":"戊","star":"禄存星"}},"starSet":["石門星","車騎星","玉堂星","司禄星","禄存星"],"jusei":{"early":{"shi":"子","name":"天恍星","energy":7,"unsei":"沐浴"},"mid":{"shi":"丑","name":"天南星","energy":10,"unsei":"冠帯"},"late":{"shi":"申","name":"天馳星","energy":1,"unsei":"絶"}},"juseiSet":["天恍星","天南星","天馳星"],"totalEnergy":18,"gogyoDist":{"木":1,"金":1,"水":2,"土":2},"tenchusatsu":"午未天中殺","tenchusatsuShi":["午","未"],"tenchusatsuYear":"辰巳天中殺","ijou":{"year":"通常","month":null,"day":null},"nikkanGogyo":"木","nisshiGogyo":"金","moon":null,"hourPillar":null}
1984-02-04 — 立春の前日
{"date":"1984-02-04","weekday":"土","setsu":{"name":"小寒","jst":"1984-01-06 12:40","keika":30,"isSetsuiriDay":false},"pillars":{"year":{"kan":"癸","shi":"亥","kanshi":"癸亥","zokan":"壬","no":60,"stages":{"初元":null,"中元":"甲","本元":"壬"}},"month":{"kan":"乙","shi":"丑","kanshi":"乙丑","zokan":"己","no":2,"stages":{"初元":"癸","中元":"辛","本元":"己"}},"day":{"kan":"戊","shi":"辰","kanshi":"戊辰","zokan":"戊","no":5,"stages":{"初元":"乙","中元":"癸","本元":"戊"}}},"stars":{"ancestor":{"kan":"戊","star":"貫索星"},"north":{"kan":"癸","star":"司禄星"},"center":{"kan":"己","star":"石門星"},"south":{"kan":"乙","star":"牽牛星"},"east":{"kan":"壬","star":"禄存星"},"west":{"kan":"戊","star":"貫索星"}},"starSet":["貫索星","司禄星","石門星","牽牛星","禄存星"],"jusei":{"early":{"shi":"亥","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"丑","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"辰","name":"天南星","energy":10,"unsei":"冠帯"}},"juseiSet":["天馳星","天印星","天南星"],"totalEnergy":17,"gogyoDist":{"木":3,"土":2,"金":1},"tenchusatsu":"戌亥天中殺","tenchusatsuShi":["戌","亥"],"tenchusatsuYear":"子丑天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"土","nisshiGogyo":"土","moon":null,"hourPillar":null}
1984-02-05 — 節入りの日(立春 00:18)。日単位なので 5日の朝から甲子年
{"date":"1984-02-05","weekday":"日","setsu":{"name":"立春","jst":"1984-02-05 00:18","keika":1,"isSetsuiriDay":true},"pillars":{"year":{"kan":"甲","shi":"子","kanshi":"甲子","zokan":"癸","no":1,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"丙","shi":"寅","kanshi":"丙寅","zokan":"戊","no":3,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"己","shi":"巳","kanshi":"己巳","zokan":"戊","no":6,"stages":{"初元":"戊","中元":"庚","本元":"丙"}}},"stars":{"ancestor":{"kan":"己","star":"貫索星"},"north":{"kan":"甲","star":"牽牛星"},"center":{"kan":"戊","star":"石門星"},"south":{"kan":"丙","star":"玉堂星"},"east":{"kan":"癸","star":"禄存星"},"west":{"kan":"戊","star":"石門星"}},"starSet":["貫索星","牽牛星","石門星","玉堂星","禄存星"],"jusei":{"early":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"寅","name":"天極星","energy":2,"unsei":"死"},"late":{"shi":"巳","name":"天将星","energy":12,"unsei":"帝旺"}},"juseiSet":["天馳星","天極星","天将星"],"totalEnergy":15,"gogyoDist":{"木":3,"金":1,"水":1,"土":1},"tenchusatsu":"戌亥天中殺","tenchusatsuShi":["戌","亥"],"tenchusatsuYear":"戌亥天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"土","nisshiGogyo":"火","moon":null,"hourPillar":null}
1984-02-06
{"date":"1984-02-06","weekday":"月","setsu":{"name":"立春","jst":"1984-02-05 00:18","keika":2,"isSetsuiriDay":false},"pillars":{"year":{"kan":"甲","shi":"子","kanshi":"甲子","zokan":"癸","no":1,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"丙","shi":"寅","kanshi":"丙寅","zokan":"戊","no":3,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"庚","shi":"午","kanshi":"庚午","zokan":"己","no":7,"stages":{"初元":null,"中元":"己","本元":"丁"}}},"stars":{"ancestor":{"kan":"己","star":"玉堂星"},"north":{"kan":"甲","star":"禄存星"},"center":{"kan":"戊","star":"龍高星"},"south":{"kan":"丙","star":"車騎星"},"east":{"kan":"癸","star":"調舒星"},"west":{"kan":"己","star":"玉堂星"}},"starSet":["玉堂星","禄存星","龍高星","車騎星","調舒星"],"jusei":{"early":{"shi":"子","name":"天極星","energy":2,"unsei":"死"},"mid":{"shi":"寅","name":"天馳星","energy":1,"unsei":"絶"},"late":{"shi":"午","name":"天恍星","energy":7,"unsei":"沐浴"}},"juseiSet":["天極星","天馳星","天恍星"],"totalEnergy":10,"gogyoDist":{"水":3,"土":1,"金":1,"火":1},"tenchusatsu":"戌亥天中殺","tenchusatsuShi":["戌","亥"],"tenchusatsuYear":"戌亥天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"金","nisshiGogyo":"火","moon":null,"hourPillar":null}
2000-02-03
{"date":"2000-02-03","weekday":"木","setsu":{"name":"小寒","jst":"2000-01-06 10:00","keika":29,"isSetsuiriDay":false},"pillars":{"year":{"kan":"己","shi":"卯","kanshi":"己卯","zokan":"乙","no":16,"stages":{"初元":null,"中元":null,"本元":"乙"}},"month":{"kan":"丁","shi":"丑","kanshi":"丁丑","zokan":"己","no":14,"stages":{"初元":"癸","中元":"辛","本元":"己"}},"day":{"kan":"辛","shi":"卯","kanshi":"辛卯","zokan":"乙","no":28,"stages":{"初元":null,"中元":null,"本元":"乙"}}},"stars":{"ancestor":{"kan":"甲","star":"司禄星"},"north":{"kan":"己","star":"龍高星"},"center":{"kan":"己","star":"龍高星"},"south":{"kan":"丁","star":"車騎星"},"east":{"kan":"乙","star":"禄存星"},"west":{"kan":"乙","star":"禄存星"}},"starSet":["司禄星","龍高星","車騎星","禄存星"],"jusei":{"early":{"shi":"卯","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"丑","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"卯","name":"天馳星","energy":1,"unsei":"絶"}},"juseiSet":["天馳星","天印星"],"totalEnergy":8,"gogyoDist":{"土":3,"水":2,"金":1},"tenchusatsu":"午未天中殺","tenchusatsuShi":["午","未"],"tenchusatsuYear":"申酉天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"金","nisshiGogyo":"木","moon":null,"hourPillar":null}
2000-02-04 — 節入りの日(立春 21:40)。日単位なので 4日の朝から庚辰年
{"date":"2000-02-04","weekday":"金","setsu":{"name":"立春","jst":"2000-02-04 21:40","keika":1,"isSetsuiriDay":true},"pillars":{"year":{"kan":"庚","shi":"辰","kanshi":"庚辰","zokan":"乙","no":17,"stages":{"初元":"乙","中元":"癸","本元":"戊"}},"month":{"kan":"戊","shi":"寅","kanshi":"戊寅","zokan":"戊","no":15,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"壬","shi":"辰","kanshi":"壬辰","zokan":"乙","no":29,"stages":{"初元":"乙","中元":"癸","本元":"戊"}}},"stars":{"ancestor":{"kan":"乙","star":"調舒星"},"north":{"kan":"庚","star":"龍高星"},"center":{"kan":"戊","star":"車騎星"},"south":{"kan":"戊","star":"車騎星"},"east":{"kan":"乙","star":"調舒星"},"west":{"kan":"乙","star":"調舒星"}},"starSet":["調舒星","龍高星","車騎星"],"jusei":{"early":{"shi":"辰","name":"天庫星","energy":5,"unsei":"墓"},"mid":{"shi":"寅","name":"天胡星","energy":4,"unsei":"病"},"late":{"shi":"辰","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天庫星","天胡星"],"totalEnergy":14,"gogyoDist":{"火":3,"水":1,"金":2},"tenchusatsu":"午未天中殺","tenchusatsuShi":["午","未"],"tenchusatsuYear":"申酉天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"水","nisshiGogyo":"土","moon":null,"hourPillar":null}
2000-02-05
{"date":"2000-02-05","weekday":"土","setsu":{"name":"立春","jst":"2000-02-04 21:40","keika":2,"isSetsuiriDay":false},"pillars":{"year":{"kan":"庚","shi":"辰","kanshi":"庚辰","zokan":"乙","no":17,"stages":{"初元":"乙","中元":"癸","本元":"戊"}},"month":{"kan":"戊","shi":"寅","kanshi":"戊寅","zokan":"戊","no":15,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"癸","shi":"巳","kanshi":"癸巳","zokan":"戊","no":30,"stages":{"初元":"戊","中元":"庚","本元":"丙"}}},"stars":{"ancestor":{"kan":"乙","star":"鳳閣星"},"north":{"kan":"庚","star":"玉堂星"},"center":{"kan":"戊","star":"牽牛星"},"south":{"kan":"戊","star":"牽牛星"},"east":{"kan":"乙","star":"鳳閣星"},"west":{"kan":"戊","star":"牽牛星"}},"starSet":["鳳閣星","玉堂星","牽牛星"],"jusei":{"early":{"shi":"辰","name":"天印星","energy":6,"unsei":"養"},"mid":{"shi":"寅","name":"天恍星","energy":7,"unsei":"沐浴"},"late":{"shi":"巳","name":"天報星","energy":3,"unsei":"胎"}},"juseiSet":["天印星","天恍星","天報星"],"totalEnergy":16,"gogyoDist":{"火":2,"水":1,"金":3},"tenchusatsu":"午未天中殺","tenchusatsuShi":["午","未"],"tenchusatsuYear":"申酉天中殺","ijou":{"year":null,"month":null,"day":"暗合"},"nikkanGogyo":"水","nisshiGogyo":"火","moon":{"kind":"新月","time":"22:03"},"hourPillar":null}
2021-02-02
{"date":"2021-02-02","weekday":"火","setsu":{"name":"小寒","jst":"2021-01-05 12:23","keika":29,"isSetsuiriDay":false},"pillars":{"year":{"kan":"庚","shi":"子","kanshi":"庚子","zokan":"癸","no":37,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"己","shi":"丑","kanshi":"己丑","zokan":"己","no":26,"stages":{"初元":"癸","中元":"辛","本元":"己"}},"day":{"kan":"辛","shi":"巳","kanshi":"辛巳","zokan":"丙","no":18,"stages":{"初元":"戊","中元":"庚","本元":"丙"}}},"stars":{"ancestor":{"kan":"乙","star":"禄存星"},"north":{"kan":"庚","star":"石門星"},"center":{"kan":"己","star":"龍高星"},"south":{"kan":"己","star":"龍高星"},"east":{"kan":"癸","star":"鳳閣星"},"west":{"kan":"丙","star":"牽牛星"}},"starSet":["禄存星","石門星","龍高星","鳳閣星","牽牛星"],"jusei":{"early":{"shi":"子","name":"天貴星","energy":9,"unsei":"長生"},"mid":{"shi":"丑","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"巳","name":"天極星","energy":2,"unsei":"死"}},"juseiSet":["天貴星","天印星","天極星"],"totalEnergy":17,"gogyoDist":{"土":1,"木":1,"水":2,"火":1,"金":1},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"辰巳天中殺","ijou":{"year":"通常","month":null,"day":"暗合"},"nikkanGogyo":"金","nisshiGogyo":"火","moon":null,"hourPillar":null}
2021-02-03 — 節入りの日(立春 23:58)。日単位なので 3日の朝から辛丑年
{"date":"2021-02-03","weekday":"水","setsu":{"name":"立春","jst":"2021-02-03 23:58","keika":1,"isSetsuiriDay":true},"pillars":{"year":{"kan":"辛","shi":"丑","kanshi":"辛丑","zokan":"癸","no":38,"stages":{"初元":"癸","中元":"辛","本元":"己"}},"month":{"kan":"庚","shi":"寅","kanshi":"庚寅","zokan":"戊","no":27,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"壬","shi":"午","kanshi":"壬午","zokan":"己","no":19,"stages":{"初元":null,"中元":"己","本元":"丁"}}},"stars":{"ancestor":{"kan":"丙","star":"禄存星"},"north":{"kan":"辛","star":"玉堂星"},"center":{"kan":"戊","star":"車騎星"},"south":{"kan":"庚","star":"龍高星"},"east":{"kan":"癸","star":"石門星"},"west":{"kan":"己","star":"牽牛星"}},"starSet":["禄存星","玉堂星","車騎星","龍高星","石門星","牽牛星"],"jusei":{"early":{"shi":"丑","name":"天堂星","energy":8,"unsei":"衰"},"mid":{"shi":"寅","name":"天胡星","energy":4,"unsei":"病"},"late":{"shi":"午","name":"天報星","energy":3,"unsei":"胎"}},"juseiSet":["天堂星","天胡星","天報星"],"totalEnergy":15,"gogyoDist":{"土":1,"水":2,"金":2,"木":1},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"辰巳天中殺","ijou":{"year":null,"month":null,"day":"暗合"},"nikkanGogyo":"水","nisshiGogyo":"火","moon":null,"hourPillar":null}
2021-02-04
{"date":"2021-02-04","weekday":"木","setsu":{"name":"立春","jst":"2021-02-03 23:58","keika":2,"isSetsuiriDay":false},"pillars":{"year":{"kan":"辛","shi":"丑","kanshi":"辛丑","zokan":"癸","no":38,"stages":{"初元":"癸","中元":"辛","本元":"己"}},"month":{"kan":"庚","shi":"寅","kanshi":"庚寅","zokan":"戊","no":27,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"癸","shi":"未","kanshi":"癸未","zokan":"丁","no":20,"stages":{"初元":"丁","中元":"乙","本元":"己"}}},"stars":{"ancestor":{"kan":"丙","star":"司禄星"},"north":{"kan":"辛","star":"龍高星"},"center":{"kan":"戊","star":"牽牛星"},"south":{"kan":"庚","star":"玉堂星"},"east":{"kan":"癸","star":"貫索星"},"west":{"kan":"丁","star":"禄存星"}},"starSet":["司禄星","龍高星","牽牛星","玉堂星","貫索星","禄存星"],"jusei":{"early":{"shi":"丑","name":"天南星","energy":10,"unsei":"冠帯"},"mid":{"shi":"寅","name":"天恍星","energy":7,"unsei":"沐浴"},"late":{"shi":"未","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天南星","天恍星","天庫星"],"totalEnergy":22,"gogyoDist":{"土":2,"水":2,"金":1,"木":1},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"辰巳天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"水","nisshiGogyo":"土","moon":null,"hourPillar":null}
2026-08-06
{"date":"2026-08-06","weekday":"木","setsu":{"name":"小暑","jst":"2026-07-07 10:56","keika":31,"isSetsuiriDay":false},"pillars":{"year":{"kan":"丙","shi":"午","kanshi":"丙午","zokan":"丁","no":43,"stages":{"初元":null,"中元":"己","本元":"丁"}},"month":{"kan":"乙","shi":"未","kanshi":"乙未","zokan":"己","no":32,"stages":{"初元":"丁","中元":"乙","本元":"己"}},"day":{"kan":"壬","shi":"子","kanshi":"壬子","zokan":"癸","no":49,"stages":{"初元":null,"中元":null,"本元":"癸"}}},"stars":{"ancestor":{"kan":"辛","star":"玉堂星"},"north":{"kan":"丙","star":"禄存星"},"center":{"kan":"己","star":"牽牛星"},"south":{"kan":"乙","star":"調舒星"},"east":{"kan":"丁","star":"司禄星"},"west":{"kan":"癸","star":"石門星"}},"starSet":["玉堂星","禄存星","牽牛星","調舒星","司禄星","石門星"],"jusei":{"early":{"shi":"午","name":"天報星","energy":3,"unsei":"胎"},"mid":{"shi":"未","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"子","name":"天将星","energy":12,"unsei":"帝旺"}},"juseiSet":["天報星","天印星","天将星"],"totalEnergy":21,"gogyoDist":{"水":1,"土":2,"金":1,"火":1,"木":1},"tenchusatsu":"寅卯天中殺","tenchusatsuShi":["寅","卯"],"tenchusatsuYear":"寅卯天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"水","nisshiGogyo":"水","moon":null,"hourPillar":null}
2026-08-07 — 節入りの日(立秋 20:42)。日単位なので 7日の朝から申月
{"date":"2026-08-07","weekday":"金","setsu":{"name":"立秋","jst":"2026-08-07 20:42","keika":1,"isSetsuiriDay":true},"pillars":{"year":{"kan":"丙","shi":"午","kanshi":"丙午","zokan":"己","no":43,"stages":{"初元":null,"中元":"己","本元":"丁"}},"month":{"kan":"丙","shi":"申","kanshi":"丙申","zokan":"戊","no":33,"stages":{"初元":"戊","中元":"壬","本元":"庚"}},"day":{"kan":"癸","shi":"丑","kanshi":"癸丑","zokan":"癸","no":50,"stages":{"初元":"癸","中元":"辛","本元":"己"}}},"stars":{"ancestor":{"kan":"辛","star":"龍高星"},"north":{"kan":"丙","star":"司禄星"},"center":{"kan":"戊","star":"牽牛星"},"south":{"kan":"丙","star":"司禄星"},"east":{"kan":"己","star":"車騎星"},"west":{"kan":"癸","star":"貫索星"}},"starSet":["龍高星","司禄星","牽牛星","車騎星","貫索星"],"jusei":{"early":{"shi":"午","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"申","name":"天極星","energy":2,"unsei":"死"},"late":{"shi":"丑","name":"天南星","energy":10,"unsei":"冠帯"}},"juseiSet":["天馳星","天極星","天南星"],"totalEnergy":13,"gogyoDist":{"水":1,"土":2,"金":2,"木":1},"tenchusatsu":"寅卯天中殺","tenchusatsuShi":["寅","卯"],"tenchusatsuYear":"寅卯天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"水","nisshiGogyo":"土","moon":null,"hourPillar":null}
2026-08-08
{"date":"2026-08-08","weekday":"土","setsu":{"name":"立秋","jst":"2026-08-07 20:42","keika":2,"isSetsuiriDay":false},"pillars":{"year":{"kan":"丙","shi":"午","kanshi":"丙午","zokan":"己","no":43,"stages":{"初元":null,"中元":"己","本元":"丁"}},"month":{"kan":"丙","shi":"申","kanshi":"丙申","zokan":"戊","no":33,"stages":{"初元":"戊","中元":"壬","本元":"庚"}},"day":{"kan":"甲","shi":"寅","kanshi":"甲寅","zokan":"戊","no":51,"stages":{"初元":"戊","中元":"丙","本元":"甲"}}},"stars":{"ancestor":{"kan":"辛","star":"牽牛星"},"north":{"kan":"丙","star":"鳳閣星"},"center":{"kan":"戊","star":"禄存星"},"south":{"kan":"丙","star":"鳳閣星"},"east":{"kan":"己","star":"司禄星"},"west":{"kan":"戊","star":"禄存星"}},"starSet":["牽牛星","鳳閣星","禄存星","司禄星"],"jusei":{"early":{"shi":"午","name":"天極星","energy":2,"unsei":"死"},"mid":{"shi":"申","name":"天馳星","energy":1,"unsei":"絶"},"late":{"shi":"寅","name":"天禄星","energy":11,"unsei":"建禄"}},"juseiSet":["天極星","天馳星","天禄星"],"totalEnergy":14,"gogyoDist":{"金":1,"火":2,"土":3},"tenchusatsu":"子丑天中殺","tenchusatsuShi":["子","丑"],"tenchusatsuYear":"寅卯天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"木","nisshiGogyo":"木","moon":null,"hourPillar":null}
1904-02-29 — うるう日
{"date":"1904-02-29","weekday":"月","setsu":{"name":"立春","jst":"1904-02-05 14:24","keika":25,"isSetsuiriDay":false},"pillars":{"year":{"kan":"甲","shi":"辰","kanshi":"甲辰","zokan":"戊","no":41,"stages":{"初元":"乙","中元":"癸","本元":"戊"}},"month":{"kan":"丙","shi":"寅","kanshi":"丙寅","zokan":"甲","no":3,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"癸","shi":"巳","kanshi":"癸巳","zokan":"丙","no":30,"stages":{"初元":"戊","中元":"庚","本元":"丙"}}},"stars":{"ancestor":{"kan":"己","star":"車騎星"},"north":{"kan":"甲","star":"調舒星"},"center":{"kan":"甲","star":"調舒星"},"south":{"kan":"丙","star":"司禄星"},"east":{"kan":"戊","star":"牽牛星"},"west":{"kan":"丙","star":"司禄星"}},"starSet":["車騎星","調舒星","司禄星","牽牛星"],"jusei":{"early":{"shi":"辰","name":"天印星","energy":6,"unsei":"養"},"mid":{"shi":"寅","name":"天恍星","energy":7,"unsei":"沐浴"},"late":{"shi":"巳","name":"天報星","energy":3,"unsei":"胎"}},"juseiSet":["天印星","天恍星","天報星"],"totalEnergy":16,"gogyoDist":{"金":2,"火":2,"土":2},"tenchusatsu":"午未天中殺","tenchusatsuShi":["午","未"],"tenchusatsuYear":"寅卯天中殺","ijou":{"year":null,"month":null,"day":"暗合"},"nikkanGogyo":"水","nisshiGogyo":"火","moon":null,"hourPillar":null}
2000-02-29 — うるう日(400年周期)
{"date":"2000-02-29","weekday":"火","setsu":{"name":"立春","jst":"2000-02-04 21:40","keika":26,"isSetsuiriDay":false},"pillars":{"year":{"kan":"庚","shi":"辰","kanshi":"庚辰","zokan":"戊","no":17,"stages":{"初元":"乙","中元":"癸","本元":"戊"}},"month":{"kan":"戊","shi":"寅","kanshi":"戊寅","zokan":"甲","no":15,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"丁","shi":"巳","kanshi":"丁巳","zokan":"丙","no":54,"stages":{"初元":"戊","中元":"庚","本元":"丙"}}},"stars":{"ancestor":{"kan":"乙","star":"龍高星"},"north":{"kan":"庚","star":"司禄星"},"center":{"kan":"甲","star":"玉堂星"},"south":{"kan":"戊","star":"調舒星"},"east":{"kan":"戊","star":"調舒星"},"west":{"kan":"丙","star":"石門星"}},"starSet":["龍高星","司禄星","玉堂星","調舒星","石門星"],"jusei":{"early":{"shi":"辰","name":"天堂星","energy":8,"unsei":"衰"},"mid":{"shi":"寅","name":"天極星","energy":2,"unsei":"死"},"late":{"shi":"巳","name":"天将星","energy":12,"unsei":"帝旺"}},"juseiSet":["天堂星","天極星","天将星"],"totalEnergy":22,"gogyoDist":{"水":2,"土":1,"火":2,"木":1},"tenchusatsu":"子丑天中殺","tenchusatsuShi":["子","丑"],"tenchusatsuYear":"申酉天中殺","ijou":{"year":null,"month":null,"day":"通常"},"nikkanGogyo":"火","nisshiGogyo":"火","moon":null,"hourPillar":null}
2096-02-29 — うるう日
{"date":"2096-02-29","weekday":"水","setsu":{"name":"立春","jst":"2096-02-04 04:46","keika":26,"isSetsuiriDay":false},"pillars":{"year":{"kan":"丙","shi":"辰","kanshi":"丙辰","zokan":"戊","no":53,"stages":{"初元":"乙","中元":"癸","本元":"戊"}},"month":{"kan":"庚","shi":"寅","kanshi":"庚寅","zokan":"甲","no":27,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"辛","shi":"巳","kanshi":"辛巳","zokan":"丙","no":18,"stages":{"初元":"戊","中元":"庚","本元":"丙"}}},"stars":{"ancestor":{"kan":"辛","star":"貫索星"},"north":{"kan":"丙","star":"牽牛星"},"center":{"kan":"甲","star":"司禄星"},"south":{"kan":"庚","star":"石門星"},"east":{"kan":"戊","star":"玉堂星"},"west":{"kan":"丙","star":"牽牛星"}},"starSet":["貫索星","牽牛星","司禄星","石門星","玉堂星"],"jusei":{"early":{"shi":"辰","name":"天庫星","energy":5,"unsei":"墓"},"mid":{"shi":"寅","name":"天報星","energy":3,"unsei":"胎"},"late":{"shi":"巳","name":"天極星","energy":2,"unsei":"死"}},"juseiSet":["天庫星","天報星","天極星"],"totalEnergy":10,"gogyoDist":{"木":2,"金":2,"土":1,"水":1},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"子丑天中殺","ijou":{"year":null,"month":null,"day":"暗合"},"nikkanGogyo":"金","nisshiGogyo":"火","moon":null,"hourPillar":null}
1984-10-10 — 基準例
{"date":"1984-10-10","weekday":"水","setsu":{"name":"寒露","jst":"1984-10-08 11:42","keika":3,"isSetsuiriDay":false},"pillars":{"year":{"kan":"甲","shi":"子","kanshi":"甲子","zokan":"癸","no":1,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"甲","shi":"戌","kanshi":"甲戌","zokan":"辛","no":11,"stages":{"初元":"辛","中元":"丁","本元":"戊"}},"day":{"kan":"丁","shi":"丑","kanshi":"丁丑","zokan":"癸","no":14,"stages":{"初元":"癸","中元":"辛","本元":"己"}}},"stars":{"ancestor":{"kan":"己","star":"鳳閣星"},"north":{"kan":"甲","star":"玉堂星"},"center":{"kan":"辛","star":"禄存星"},"south":{"kan":"甲","star":"玉堂星"},"east":{"kan":"癸","star":"車騎星"},"west":{"kan":"癸","star":"車騎星"}},"starSet":["鳳閣星","玉堂星","禄存星","車騎星"],"jusei":{"early":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"戌","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"丑","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天馳星","天印星","天庫星"],"totalEnergy":12,"gogyoDist":{"火":1,"水":2,"土":1,"金":2},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"戌亥天中殺","ijou":{"year":null,"month":"通常","day":null},"nikkanGogyo":"火","nisshiGogyo":"土","moon":{"kind":"満月","time":"08:58"},"hourPillar":null}
1984-10-10 {"hour":0} — 出生時 0時
{"date":"1984-10-10","weekday":"水","setsu":{"name":"寒露","jst":"1984-10-08 11:42","keika":3,"isSetsuiriDay":false},"pillars":{"year":{"kan":"甲","shi":"子","kanshi":"甲子","zokan":"癸","no":1,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"甲","shi":"戌","kanshi":"甲戌","zokan":"辛","no":11,"stages":{"初元":"辛","中元":"丁","本元":"戊"}},"day":{"kan":"丁","shi":"丑","kanshi":"丁丑","zokan":"癸","no":14,"stages":{"初元":"癸","中元":"辛","本元":"己"}}},"stars":{"ancestor":{"kan":"己","star":"鳳閣星"},"north":{"kan":"甲","star":"玉堂星"},"center":{"kan":"辛","star":"禄存星"},"south":{"kan":"甲","star":"玉堂星"},"east":{"kan":"癸","star":"車騎星"},"west":{"kan":"癸","star":"車騎星"}},"starSet":["鳳閣星","玉堂星","禄存星","車騎星"],"jusei":{"early":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"戌","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"丑","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天馳星","天印星","天庫星"],"totalEnergy":12,"gogyoDist":{"火":1,"水":2,"土":1,"金":2},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"戌亥天中殺","ijou":{"year":null,"month":"通常","day":null},"nikkanGogyo":"火","nisshiGogyo":"土","moon":{"kind":"満月","time":"08:58"},"hourPillar":{"kan":"庚","shi":"子","kanshi":"庚子","zokan":"癸","no":37,"ijou":"通常","jusei":"天馳星","shusei":"司禄星","shiIndex":0,"stages":{"初元":null,"中元":null,"本元":"癸"}}}
1984-10-10 {"hour":1} — 出生時 1時
{"date":"1984-10-10","weekday":"水","setsu":{"name":"寒露","jst":"1984-10-08 11:42","keika":3,"isSetsuiriDay":false},"pillars":{"year":{"kan":"甲","shi":"子","kanshi":"甲子","zokan":"癸","no":1,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"甲","shi":"戌","kanshi":"甲戌","zokan":"辛","no":11,"stages":{"初元":"辛","中元":"丁","本元":"戊"}},"day":{"kan":"丁","shi":"丑","kanshi":"丁丑","zokan":"癸","no":14,"stages":{"初元":"癸","中元":"辛","本元":"己"}}},"stars":{"ancestor":{"kan":"己","star":"鳳閣星"},"north":{"kan":"甲","star":"玉堂星"},"center":{"kan":"辛","star":"禄存星"},"south":{"kan":"甲","star":"玉堂星"},"east":{"kan":"癸","star":"車騎星"},"west":{"kan":"癸","star":"車騎星"}},"starSet":["鳳閣星","玉堂星","禄存星","車騎星"],"jusei":{"early":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"戌","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"丑","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天馳星","天印星","天庫星"],"totalEnergy":12,"gogyoDist":{"火":1,"水":2,"土":1,"金":2},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"戌亥天中殺","ijou":{"year":null,"month":"通常","day":null},"nikkanGogyo":"火","nisshiGogyo":"土","moon":{"kind":"満月","time":"08:58"},"hourPillar":{"kan":"辛","shi":"丑","kanshi":"辛丑","zokan":"癸","no":38,"ijou":null,"jusei":"天庫星","shusei":"禄存星","shiIndex":1,"stages":{"初元":"癸","中元":"辛","本元":"己"}}}
1984-10-10 {"hour":11} — 出生時 11時
{"date":"1984-10-10","weekday":"水","setsu":{"name":"寒露","jst":"1984-10-08 11:42","keika":3,"isSetsuiriDay":false},"pillars":{"year":{"kan":"甲","shi":"子","kanshi":"甲子","zokan":"癸","no":1,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"甲","shi":"戌","kanshi":"甲戌","zokan":"辛","no":11,"stages":{"初元":"辛","中元":"丁","本元":"戊"}},"day":{"kan":"丁","shi":"丑","kanshi":"丁丑","zokan":"癸","no":14,"stages":{"初元":"癸","中元":"辛","本元":"己"}}},"stars":{"ancestor":{"kan":"己","star":"鳳閣星"},"north":{"kan":"甲","star":"玉堂星"},"center":{"kan":"辛","star":"禄存星"},"south":{"kan":"甲","star":"玉堂星"},"east":{"kan":"癸","star":"車騎星"},"west":{"kan":"癸","star":"車騎星"}},"starSet":["鳳閣星","玉堂星","禄存星","車騎星"],"jusei":{"early":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"戌","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"丑","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天馳星","天印星","天庫星"],"totalEnergy":12,"gogyoDist":{"火":1,"水":2,"土":1,"金":2},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"戌亥天中殺","ijou":{"year":null,"month":"通常","day":null},"nikkanGogyo":"火","nisshiGogyo":"土","moon":{"kind":"満月","time":"08:58"},"hourPillar":{"kan":"丙","shi":"午","kanshi":"丙午","zokan":"己","no":43,"ijou":null,"jusei":"天禄星","shusei":"石門星","shiIndex":6,"stages":{"初元":null,"中元":"己","本元":"丁"}}}
1984-10-10 {"hour":23} — 出生時 23時
{"date":"1984-10-10","weekday":"水","setsu":{"name":"寒露","jst":"1984-10-08 11:42","keika":3,"isSetsuiriDay":false},"pillars":{"year":{"kan":"甲","shi":"子","kanshi":"甲子","zokan":"癸","no":1,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"甲","shi":"戌","kanshi":"甲戌","zokan":"辛","no":11,"stages":{"初元":"辛","中元":"丁","本元":"戊"}},"day":{"kan":"丁","shi":"丑","kanshi":"丁丑","zokan":"癸","no":14,"stages":{"初元":"癸","中元":"辛","本元":"己"}}},"stars":{"ancestor":{"kan":"己","star":"鳳閣星"},"north":{"kan":"甲","star":"玉堂星"},"center":{"kan":"辛","star":"禄存星"},"south":{"kan":"甲","star":"玉堂星"},"east":{"kan":"癸","star":"車騎星"},"west":{"kan":"癸","star":"車騎星"}},"starSet":["鳳閣星","玉堂星","禄存星","車騎星"],"jusei":{"early":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"戌","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"丑","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天馳星","天印星","天庫星"],"totalEnergy":12,"gogyoDist":{"火":1,"水":2,"土":1,"金":2},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"戌亥天中殺","ijou":{"year":null,"month":"通常","day":null},"nikkanGogyo":"火","nisshiGogyo":"土","moon":{"kind":"満月","time":"08:58"},"hourPillar":{"kan":"庚","shi":"子","kanshi":"庚子","zokan":"癸","no":37,"ijou":"通常","jusei":"天馳星","shusei":"司禄星","shiIndex":0,"stages":{"初元":null,"中元":null,"本元":"癸"}}}
1984-10-10 {"zokanMonth":"A","zokanYearDay":"A"} — 蔵干 A 流派
{"date":"1984-10-10","weekday":"水","setsu":{"name":"寒露","jst":"1984-10-08 11:42","keika":3,"isSetsuiriDay":false},"pillars":{"year":{"kan":"甲","shi":"子","kanshi":"甲子","zokan":"壬","no":1,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"甲","shi":"戌","kanshi":"甲戌","zokan":"辛","no":11,"stages":{"初元":"辛","中元":"丁","本元":"戊"}},"day":{"kan":"丁","shi":"丑","kanshi":"丁丑","zokan":"癸","no":14,"stages":{"初元":"癸","中元":"辛","本元":"己"}}},"stars":{"ancestor":{"kan":"己","star":"鳳閣星"},"north":{"kan":"甲","star":"玉堂星"},"center":{"kan":"辛","star":"禄存星"},"south":{"kan":"甲","star":"玉堂星"},"east":{"kan":"壬","star":"牽牛星"},"west":{"kan":"癸","star":"車騎星"}},"starSet":["鳳閣星","玉堂星","禄存星","牽牛星","車騎星"],"jusei":{"early":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"戌","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"丑","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天馳星","天印星","天庫星"],"totalEnergy":12,"gogyoDist":{"火":1,"水":2,"土":1,"金":2},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"戌亥天中殺","ijou":{"year":null,"month":"通常","day":null},"nikkanGogyo":"火","nisshiGogyo":"土","moon":{"kind":"満月","time":"08:58"},"hourPillar":null}
1984-10-10 {"zokanMonth":"hongen","zokanYearDay":"hongen"} — 蔵干 本元のみ
{"date":"1984-10-10","weekday":"水","setsu":{"name":"寒露","jst":"1984-10-08 11:42","keika":3,"isSetsuiriDay":false},"pillars":{"year":{"kan":"甲","shi":"子","kanshi":"甲子","zokan":"癸","no":1,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"甲","shi":"戌","kanshi":"甲戌","zokan":"戊","no":11,"stages":{"初元":"辛","中元":"丁","本元":"戊"}},"day":{"kan":"丁","shi":"丑","kanshi":"丁丑","zokan":"己","no":14,"stages":{"初元":"癸","中元":"辛","本元":"己"}}},"stars":{"ancestor":{"kan":"己","star":"鳳閣星"},"north":{"kan":"甲","star":"玉堂星"},"center":{"kan":"戊","star":"調舒星"},"south":{"kan":"甲","star":"玉堂星"},"east":{"kan":"癸","star":"車騎星"},"west":{"kan":"己","star":"鳳閣星"}},"starSet":["鳳閣星","玉堂星","調舒星","車騎星"],"jusei":{"early":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"戌","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"丑","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天馳星","天印星","天庫星"],"totalEnergy":12,"gogyoDist":{"火":3,"水":2,"金":1},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"戌亥天中殺","ijou":{"year":null,"month":"通常","day":null},"nikkanGogyo":"火","nisshiGogyo":"土","moon":{"kind":"満月","time":"08:58"},"hourPillar":null}
1984-10-10 {"zokanMonth":"kantei","zokanYearDay":"hongen"} — 月は既定・年日は本元
{"date":"1984-10-10","weekday":"水","setsu":{"name":"寒露","jst":"1984-10-08 11:42","keika":3,"isSetsuiriDay":false},"pillars":{"year":{"kan":"甲","shi":"子","kanshi":"甲子","zokan":"癸","no":1,"stages":{"初元":null,"中元":null,"本元":"癸"}},"month":{"kan":"甲","shi":"戌","kanshi":"甲戌","zokan":"辛","no":11,"stages":{"初元":"辛","中元":"丁","本元":"戊"}},"day":{"kan":"丁","shi":"丑","kanshi":"丁丑","zokan":"己","no":14,"stages":{"初元":"癸","中元":"辛","本元":"己"}}},"stars":{"ancestor":{"kan":"己","star":"鳳閣星"},"north":{"kan":"甲","star":"玉堂星"},"center":{"kan":"辛","star":"禄存星"},"south":{"kan":"甲","star":"玉堂星"},"east":{"kan":"癸","star":"車騎星"},"west":{"kan":"己","star":"鳳閣星"}},"starSet":["鳳閣星","玉堂星","禄存星","車騎星"],"jusei":{"early":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"mid":{"shi":"戌","name":"天印星","energy":6,"unsei":"養"},"late":{"shi":"丑","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天馳星","天印星","天庫星"],"totalEnergy":12,"gogyoDist":{"火":2,"水":2,"土":1,"金":1},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"戌亥天中殺","ijou":{"year":null,"month":"通常","day":null},"nikkanGogyo":"火","nisshiGogyo":"土","moon":{"kind":"満月","time":"08:58"},"hourPillar":null}
1990-05-01
{"date":"1990-05-01","weekday":"火","setsu":{"name":"清明","jst":"1990-04-05 10:12","keika":27,"isSetsuiriDay":false},"pillars":{"year":{"kan":"庚","shi":"午","kanshi":"庚午","zokan":"丁","no":7,"stages":{"初元":null,"中元":"己","本元":"丁"}},"month":{"kan":"庚","shi":"辰","kanshi":"庚辰","zokan":"戊","no":17,"stages":{"初元":"乙","中元":"癸","本元":"戊"}},"day":{"kan":"丙","shi":"寅","kanshi":"丙寅","zokan":"甲","no":3,"stages":{"初元":"戊","中元":"丙","本元":"甲"}}},"stars":{"ancestor":{"kan":"乙","star":"玉堂星"},"north":{"kan":"庚","star":"禄存星"},"center":{"kan":"戊","star":"鳳閣星"},"south":{"kan":"庚","star":"禄存星"},"east":{"kan":"丁","star":"石門星"},"west":{"kan":"甲","star":"龍高星"}},"starSet":["玉堂星","禄存星","鳳閣星","石門星","龍高星"],"jusei":{"early":{"shi":"午","name":"天将星","energy":12,"unsei":"帝旺"},"mid":{"shi":"辰","name":"天南星","energy":10,"unsei":"冠帯"},"late":{"shi":"寅","name":"天貴星","energy":9,"unsei":"長生"}},"juseiSet":["天将星","天南星","天貴星"],"totalEnergy":31,"gogyoDist":{"水":2,"土":2,"火":1,"木":1},"tenchusatsu":"戌亥天中殺","tenchusatsuShi":["戌","亥"],"tenchusatsuYear":"戌亥天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"火","nisshiGogyo":"木","moon":null,"hourPillar":null}
1975-03-15
{"date":"1975-03-15","weekday":"土","setsu":{"name":"啓蟄","jst":"1975-03-06 14:05","keika":10,"isSetsuiriDay":false},"pillars":{"year":{"kan":"乙","shi":"卯","kanshi":"乙卯","zokan":"乙","no":52,"stages":{"初元":null,"中元":null,"本元":"乙"}},"month":{"kan":"己","shi":"卯","kanshi":"己卯","zokan":"乙","no":16,"stages":{"初元":null,"中元":null,"本元":"乙"}},"day":{"kan":"庚","shi":"申","kanshi":"庚申","zokan":"戊","no":57,"stages":{"初元":"戊","中元":"壬","本元":"庚"}}},"stars":{"ancestor":{"kan":"庚","star":"貫索星"},"north":{"kan":"乙","star":"司禄星"},"center":{"kan":"乙","star":"司禄星"},"south":{"kan":"己","star":"玉堂星"},"east":{"kan":"乙","star":"司禄星"},"west":{"kan":"戊","star":"龍高星"}},"starSet":["貫索星","司禄星","玉堂星","龍高星"],"jusei":{"early":{"shi":"卯","name":"天報星","energy":3,"unsei":"胎"},"mid":{"shi":"卯","name":"天報星","energy":3,"unsei":"胎"},"late":{"shi":"申","name":"天禄星","energy":11,"unsei":"建禄"}},"juseiSet":["天報星","天禄星"],"totalEnergy":17,"gogyoDist":{"木":1,"土":3,"水":2},"tenchusatsu":"子丑天中殺","tenchusatsuShi":["子","丑"],"tenchusatsuYear":"子丑天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"金","nisshiGogyo":"金","moon":null,"hourPillar":null}
1963-12-25
{"date":"1963-12-25","weekday":"水","setsu":{"name":"大雪","jst":"1963-12-08 05:12","keika":18,"isSetsuiriDay":false},"pillars":{"year":{"kan":"癸","shi":"卯","kanshi":"癸卯","zokan":"乙","no":40,"stages":{"初元":null,"中元":null,"本元":"乙"}},"month":{"kan":"甲","shi":"子","kanshi":"甲子","zokan":"癸","no":1,"stages":{"初元":null,"中元":null,"本元":"癸"}},"day":{"kan":"壬","shi":"寅","kanshi":"壬寅","zokan":"甲","no":39,"stages":{"初元":"戊","中元":"丙","本元":"甲"}}},"stars":{"ancestor":{"kan":"戊","star":"車騎星"},"north":{"kan":"癸","star":"石門星"},"center":{"kan":"癸","star":"石門星"},"south":{"kan":"甲","star":"鳳閣星"},"east":{"kan":"乙","star":"調舒星"},"west":{"kan":"甲","star":"鳳閣星"}},"starSet":["車騎星","石門星","鳳閣星","調舒星"],"jusei":{"early":{"shi":"卯","name":"天極星","energy":2,"unsei":"死"},"mid":{"shi":"子","name":"天将星","energy":12,"unsei":"帝旺"},"late":{"shi":"寅","name":"天胡星","energy":4,"unsei":"病"}},"juseiSet":["天極星","天将星","天胡星"],"totalEnergy":18,"gogyoDist":{"金":1,"木":2,"火":3},"tenchusatsu":"辰巳天中殺","tenchusatsuShi":["辰","巳"],"tenchusatsuYear":"辰巳天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"水","nisshiGogyo":"木","moon":null,"hourPillar":null}
2010-07-07 — 節入りの日(小暑 14:02)
{"date":"2010-07-07","weekday":"水","setsu":{"name":"小暑","jst":"2010-07-07 14:02","keika":1,"isSetsuiriDay":true},"pillars":{"year":{"kan":"庚","shi":"寅","kanshi":"庚寅","zokan":"戊","no":27,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"month":{"kan":"癸","shi":"未","kanshi":"癸未","zokan":"丁","no":20,"stages":{"初元":"丁","中元":"乙","本元":"己"}},"day":{"kan":"戊","shi":"午","kanshi":"戊午","zokan":"己","no":55,"stages":{"初元":null,"中元":"己","本元":"丁"}}},"stars":{"ancestor":{"kan":"乙","star":"牽牛星"},"north":{"kan":"庚","star":"鳳閣星"},"center":{"kan":"丁","star":"玉堂星"},"south":{"kan":"癸","star":"司禄星"},"east":{"kan":"戊","star":"貫索星"},"west":{"kan":"己","star":"石門星"}},"starSet":["牽牛星","鳳閣星","玉堂星","司禄星","貫索星","石門星"],"jusei":{"early":{"shi":"寅","name":"天貴星","energy":9,"unsei":"長生"},"mid":{"shi":"未","name":"天堂星","energy":8,"unsei":"衰"},"late":{"shi":"午","name":"天将星","energy":12,"unsei":"帝旺"}},"juseiSet":["天貴星","天堂星","天将星"],"totalEnergy":29,"gogyoDist":{"金":1,"火":1,"水":1,"土":1,"木":2},"tenchusatsu":"子丑天中殺","tenchusatsuShi":["子","丑"],"tenchusatsuYear":"午未天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"土","nisshiGogyo":"火","moon":null,"hourPillar":null}
2026-08-13
{"date":"2026-08-13","weekday":"木","setsu":{"name":"立秋","jst":"2026-08-07 20:42","keika":7,"isSetsuiriDay":false},"pillars":{"year":{"kan":"丙","shi":"午","kanshi":"丙午","zokan":"己","no":43,"stages":{"初元":null,"中元":"己","本元":"丁"}},"month":{"kan":"丙","shi":"申","kanshi":"丙申","zokan":"戊","no":33,"stages":{"初元":"戊","中元":"壬","本元":"庚"}},"day":{"kan":"己","shi":"未","kanshi":"己未","zokan":"丁","no":56,"stages":{"初元":"丁","中元":"乙","本元":"己"}}},"stars":{"ancestor":{"kan":"辛","star":"鳳閣星"},"north":{"kan":"丙","star":"玉堂星"},"center":{"kan":"戊","star":"石門星"},"south":{"kan":"丙","star":"玉堂星"},"east":{"kan":"己","star":"貫索星"},"west":{"kan":"丁","star":"龍高星"}},"starSet":["鳳閣星","玉堂星","石門星","貫索星","龍高星"],"jusei":{"early":{"shi":"午","name":"天禄星","energy":11,"unsei":"建禄"},"mid":{"shi":"申","name":"天恍星","energy":7,"unsei":"沐浴"},"late":{"shi":"未","name":"天南星","energy":10,"unsei":"冠帯"}},"juseiSet":["天禄星","天恍星","天南星"],"totalEnergy":28,"gogyoDist":{"火":1,"水":3,"木":2},"tenchusatsu":"子丑天中殺","tenchusatsuShi":["子","丑"],"tenchusatsuYear":"寅卯天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"土","nisshiGogyo":"土","moon":{"kind":"新月","time":"02:37"},"hourPillar":null}
2099-12-31
{"date":"2099-12-31","weekday":"木","setsu":{"name":"大雪","jst":"2099-12-07 05:02","keika":25,"isSetsuiriDay":false},"pillars":{"year":{"kan":"己","shi":"未","kanshi":"己未","zokan":"己","no":56,"stages":{"初元":"丁","中元":"乙","本元":"己"}},"month":{"kan":"丙","shi":"子","kanshi":"丙子","zokan":"癸","no":13,"stages":{"初元":null,"中元":null,"本元":"癸"}},"day":{"kan":"壬","shi":"寅","kanshi":"壬寅","zokan":"甲","no":39,"stages":{"初元":"戊","中元":"丙","本元":"甲"}}},"stars":{"ancestor":{"kan":"甲","star":"鳳閣星"},"north":{"kan":"己","star":"牽牛星"},"center":{"kan":"癸","star":"石門星"},"south":{"kan":"丙","star":"禄存星"},"east":{"kan":"己","star":"牽牛星"},"west":{"kan":"甲","star":"鳳閣星"}},"starSet":["鳳閣星","牽牛星","石門星","禄存星"],"jusei":{"early":{"shi":"未","name":"天印星","energy":6,"unsei":"養"},"mid":{"shi":"子","name":"天将星","energy":12,"unsei":"帝旺"},"late":{"shi":"寅","name":"天胡星","energy":4,"unsei":"病"}},"juseiSet":["天印星","天将星","天胡星"],"totalEnergy":22,"gogyoDist":{"火":2,"金":2,"木":1,"土":1},"tenchusatsu":"辰巳天中殺","tenchusatsuShi":["辰","巳"],"tenchusatsuYear":"子丑天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"水","nisshiGogyo":"木","moon":null,"hourPillar":null}
2100-01-01
{"date":"2100-01-01","weekday":"金","setsu":{"name":"大雪","jst":"2099-12-07 05:02","keika":26,"isSetsuiriDay":false},"pillars":{"year":{"kan":"己","shi":"未","kanshi":"己未","zokan":"己","no":56,"stages":{"初元":"丁","中元":"乙","本元":"己"}},"month":{"kan":"丙","shi":"子","kanshi":"丙子","zokan":"癸","no":13,"stages":{"初元":null,"中元":null,"本元":"癸"}},"day":{"kan":"癸","shi":"卯","kanshi":"癸卯","zokan":"乙","no":40,"stages":{"初元":null,"中元":null,"本元":"乙"}}},"stars":{"ancestor":{"kan":"甲","star":"調舒星"},"north":{"kan":"己","star":"車騎星"},"center":{"kan":"癸","star":"貫索星"},"south":{"kan":"丙","star":"司禄星"},"east":{"kan":"己","star":"車騎星"},"west":{"kan":"乙","star":"鳳閣星"}},"starSet":["調舒星","車騎星","貫索星","司禄星","鳳閣星"],"jusei":{"early":{"shi":"未","name":"天庫星","energy":5,"unsei":"墓"},"mid":{"shi":"子","name":"天禄星","energy":11,"unsei":"建禄"},"late":{"shi":"卯","name":"天貴星","energy":9,"unsei":"長生"}},"juseiSet":["天庫星","天禄星","天貴星"],"totalEnergy":25,"gogyoDist":{"火":2,"金":2,"木":1,"土":1},"tenchusatsu":"辰巳天中殺","tenchusatsuShi":["辰","巳"],"tenchusatsuYear":"子丑天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"水","nisshiGogyo":"木","moon":null,"hourPillar":null}
2100-12-07 — 節入りの日(大雪 10:39)。範囲の上端付近。ここから先は順行の大運が計算できない(§15.1)
{"date":"2100-12-07","weekday":"火","setsu":{"name":"大雪","jst":"2100-12-07 10:39","keika":1,"isSetsuiriDay":true},"pillars":{"year":{"kan":"庚","shi":"申","kanshi":"庚申","zokan":"戊","no":57,"stages":{"初元":"戊","中元":"壬","本元":"庚"}},"month":{"kan":"戊","shi":"子","kanshi":"戊子","zokan":"癸","no":25,"stages":{"初元":null,"中元":null,"本元":"癸"}},"day":{"kan":"癸","shi":"未","kanshi":"癸未","zokan":"丁","no":20,"stages":{"初元":"丁","中元":"乙","本元":"己"}}},"stars":{"ancestor":{"kan":"乙","star":"鳳閣星"},"north":{"kan":"庚","star":"玉堂星"},"center":{"kan":"癸","star":"貫索星"},"south":{"kan":"戊","star":"牽牛星"},"east":{"kan":"戊","star":"牽牛星"},"west":{"kan":"丁","star":"禄存星"}},"starSet":["鳳閣星","玉堂星","貫索星","牽牛星","禄存星"],"jusei":{"early":{"shi":"申","name":"天極星","energy":2,"unsei":"死"},"mid":{"shi":"子","name":"天禄星","energy":11,"unsei":"建禄"},"late":{"shi":"未","name":"天庫星","energy":5,"unsei":"墓"}},"juseiSet":["天極星","天禄星","天庫星"],"totalEnergy":18,"gogyoDist":{"火":1,"水":1,"木":1,"金":2,"土":1},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"子丑天中殺","ijou":{"year":null,"month":"暗合","day":null},"nikkanGogyo":"水","nisshiGogyo":"土","moon":null,"hourPillar":null}
2100-12-31 — 範囲の上端
{"date":"2100-12-31","weekday":"金","setsu":{"name":"大雪","jst":"2100-12-07 10:39","keika":25,"isSetsuiriDay":false},"pillars":{"year":{"kan":"庚","shi":"申","kanshi":"庚申","zokan":"庚","no":57,"stages":{"初元":"戊","中元":"壬","本元":"庚"}},"month":{"kan":"戊","shi":"子","kanshi":"戊子","zokan":"癸","no":25,"stages":{"初元":null,"中元":null,"本元":"癸"}},"day":{"kan":"丁","shi":"未","kanshi":"丁未","zokan":"己","no":44,"stages":{"初元":"丁","中元":"乙","本元":"己"}}},"stars":{"ancestor":{"kan":"乙","star":"龍高星"},"north":{"kan":"庚","star":"司禄星"},"center":{"kan":"癸","star":"車騎星"},"south":{"kan":"戊","star":"調舒星"},"east":{"kan":"庚","star":"司禄星"},"west":{"kan":"己","star":"鳳閣星"}},"starSet":["龍高星","司禄星","車騎星","調舒星","鳳閣星"],"jusei":{"early":{"shi":"申","name":"天恍星","energy":7,"unsei":"沐浴"},"mid":{"shi":"子","name":"天馳星","energy":1,"unsei":"絶"},"late":{"shi":"未","name":"天南星","energy":10,"unsei":"冠帯"}},"juseiSet":["天恍星","天馳星","天南星"],"totalEnergy":18,"gogyoDist":{"水":1,"土":2,"金":1,"火":2},"tenchusatsu":"寅卯天中殺","tenchusatsuShi":["寅","卯"],"tenchusatsuYear":"子丑天中殺","ijou":{"year":null,"month":"暗合","day":null},"nikkanGogyo":"火","nisshiGogyo":"土","moon":{"kind":"新月","time":"08:56"},"hourPillar":null}
2000-02-11 — 日柱が己亥(13個説では暗合)
{"date":"2000-02-11","weekday":"金","setsu":{"name":"立春","jst":"2000-02-04 21:40","keika":8,"isSetsuiriDay":false},"pillars":{"year":{"kan":"庚","shi":"辰","kanshi":"庚辰","zokan":"乙","no":17,"stages":{"初元":"乙","中元":"癸","本元":"戊"}},"month":{"kan":"戊","shi":"寅","kanshi":"戊寅","zokan":"戊","no":15,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"己","shi":"亥","kanshi":"己亥","zokan":"甲","no":36,"stages":{"初元":null,"中元":"甲","本元":"壬"}}},"stars":{"ancestor":{"kan":"乙","star":"車騎星"},"north":{"kan":"庚","star":"調舒星"},"center":{"kan":"戊","star":"石門星"},"south":{"kan":"戊","star":"石門星"},"east":{"kan":"乙","star":"車騎星"},"west":{"kan":"甲","star":"牽牛星"}},"starSet":["車騎星","調舒星","石門星","牽牛星"],"jusei":{"early":{"shi":"辰","name":"天堂星","energy":8,"unsei":"衰"},"mid":{"shi":"寅","name":"天極星","energy":2,"unsei":"死"},"late":{"shi":"亥","name":"天報星","energy":3,"unsei":"胎"}},"juseiSet":["天堂星","天極星","天報星"],"totalEnergy":13,"gogyoDist":{"金":3,"火":1,"木":2},"tenchusatsu":"辰巳天中殺","tenchusatsuShi":["辰","巳"],"tenchusatsuYear":"申酉天中殺","ijou":{"year":null,"month":null,"day":"暗合"},"nikkanGogyo":"土","nisshiGogyo":"水","moon":null,"hourPillar":null}
2000-02-11 {"ijouSet":"7"} — 同じ日を7個説で(異常干支)
{"date":"2000-02-11","weekday":"金","setsu":{"name":"立春","jst":"2000-02-04 21:40","keika":8,"isSetsuiriDay":false},"pillars":{"year":{"kan":"庚","shi":"辰","kanshi":"庚辰","zokan":"乙","no":17,"stages":{"初元":"乙","中元":"癸","本元":"戊"}},"month":{"kan":"戊","shi":"寅","kanshi":"戊寅","zokan":"戊","no":15,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"己","shi":"亥","kanshi":"己亥","zokan":"甲","no":36,"stages":{"初元":null,"中元":"甲","本元":"壬"}}},"stars":{"ancestor":{"kan":"乙","star":"車騎星"},"north":{"kan":"庚","star":"調舒星"},"center":{"kan":"戊","star":"石門星"},"south":{"kan":"戊","star":"石門星"},"east":{"kan":"乙","star":"車騎星"},"west":{"kan":"甲","star":"牽牛星"}},"starSet":["車騎星","調舒星","石門星","牽牛星"],"jusei":{"early":{"shi":"辰","name":"天堂星","energy":8,"unsei":"衰"},"mid":{"shi":"寅","name":"天極星","energy":2,"unsei":"死"},"late":{"shi":"亥","name":"天報星","energy":3,"unsei":"胎"}},"juseiSet":["天堂星","天極星","天報星"],"totalEnergy":13,"gogyoDist":{"金":3,"火":1,"木":2},"tenchusatsu":"辰巳天中殺","tenchusatsuShi":["辰","巳"],"tenchusatsuYear":"申酉天中殺","ijou":{"year":null,"month":null,"day":"異常干支"},"nikkanGogyo":"土","nisshiGogyo":"水","moon":null,"hourPillar":null}
2000-02-06 — 日柱が甲午(13個説では無印)
{"date":"2000-02-06","weekday":"日","setsu":{"name":"立春","jst":"2000-02-04 21:40","keika":3,"isSetsuiriDay":false},"pillars":{"year":{"kan":"庚","shi":"辰","kanshi":"庚辰","zokan":"乙","no":17,"stages":{"初元":"乙","中元":"癸","本元":"戊"}},"month":{"kan":"戊","shi":"寅","kanshi":"戊寅","zokan":"戊","no":15,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"甲","shi":"午","kanshi":"甲午","zokan":"己","no":31,"stages":{"初元":null,"中元":"己","本元":"丁"}}},"stars":{"ancestor":{"kan":"乙","star":"石門星"},"north":{"kan":"庚","star":"車騎星"},"center":{"kan":"戊","star":"禄存星"},"south":{"kan":"戊","star":"禄存星"},"east":{"kan":"乙","star":"石門星"},"west":{"kan":"己","star":"司禄星"}},"starSet":["石門星","車騎星","禄存星","司禄星"],"jusei":{"early":{"shi":"辰","name":"天堂星","energy":8,"unsei":"衰"},"mid":{"shi":"寅","name":"天禄星","energy":11,"unsei":"建禄"},"late":{"shi":"午","name":"天極星","energy":2,"unsei":"死"}},"juseiSet":["天堂星","天禄星","天極星"],"totalEnergy":21,"gogyoDist":{"木":2,"金":1,"土":3},"tenchusatsu":"辰巳天中殺","tenchusatsuShi":["辰","巳"],"tenchusatsuYear":"申酉天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"木","nisshiGogyo":"火","moon":null,"hourPillar":null}
2000-02-06 {"ijouSet":"7"} — 同じ日を7個説で(異常干支)
{"date":"2000-02-06","weekday":"日","setsu":{"name":"立春","jst":"2000-02-04 21:40","keika":3,"isSetsuiriDay":false},"pillars":{"year":{"kan":"庚","shi":"辰","kanshi":"庚辰","zokan":"乙","no":17,"stages":{"初元":"乙","中元":"癸","本元":"戊"}},"month":{"kan":"戊","shi":"寅","kanshi":"戊寅","zokan":"戊","no":15,"stages":{"初元":"戊","中元":"丙","本元":"甲"}},"day":{"kan":"甲","shi":"午","kanshi":"甲午","zokan":"己","no":31,"stages":{"初元":null,"中元":"己","本元":"丁"}}},"stars":{"ancestor":{"kan":"乙","star":"石門星"},"north":{"kan":"庚","star":"車騎星"},"center":{"kan":"戊","star":"禄存星"},"south":{"kan":"戊","star":"禄存星"},"east":{"kan":"乙","star":"石門星"},"west":{"kan":"己","star":"司禄星"}},"starSet":["石門星","車騎星","禄存星","司禄星"],"jusei":{"early":{"shi":"辰","name":"天堂星","energy":8,"unsei":"衰"},"mid":{"shi":"寅","name":"天禄星","energy":11,"unsei":"建禄"},"late":{"shi":"午","name":"天極星","energy":2,"unsei":"死"}},"juseiSet":["天堂星","天禄星","天極星"],"totalEnergy":21,"gogyoDist":{"木":2,"金":1,"土":3},"tenchusatsu":"辰巳天中殺","tenchusatsuShi":["辰","巳"],"tenchusatsuYear":"申酉天中殺","ijou":{"year":null,"month":null,"day":"異常干支"},"nikkanGogyo":"木","nisshiGogyo":"火","moon":null,"hourPillar":null}
2000-01-17 — 日柱が甲戌(13個説では通常)
{"date":"2000-01-17","weekday":"月","setsu":{"name":"小寒","jst":"2000-01-06 10:00","keika":12,"isSetsuiriDay":false},"pillars":{"year":{"kan":"己","shi":"卯","kanshi":"己卯","zokan":"乙","no":16,"stages":{"初元":null,"中元":null,"本元":"乙"}},"month":{"kan":"丁","shi":"丑","kanshi":"丁丑","zokan":"辛","no":14,"stages":{"初元":"癸","中元":"辛","本元":"己"}},"day":{"kan":"甲","shi":"戌","kanshi":"甲戌","zokan":"丁","no":11,"stages":{"初元":"辛","中元":"丁","本元":"戊"}}},"stars":{"ancestor":{"kan":"甲","star":"貫索星"},"north":{"kan":"己","star":"司禄星"},"center":{"kan":"辛","star":"牽牛星"},"south":{"kan":"丁","star":"調舒星"},"east":{"kan":"乙","star":"石門星"},"west":{"kan":"丁","star":"調舒星"}},"starSet":["貫索星","司禄星","牽牛星","調舒星","石門星"],"jusei":{"early":{"shi":"卯","name":"天将星","energy":12,"unsei":"帝旺"},"mid":{"shi":"丑","name":"天南星","energy":10,"unsei":"冠帯"},"late":{"shi":"戌","name":"天印星","energy":6,"unsei":"養"}},"juseiSet":["天将星","天南星","天印星"],"totalEnergy":28,"gogyoDist":{"木":2,"土":1,"金":1,"火":2},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"申酉天中殺","ijou":{"year":null,"month":null,"day":"通常"},"nikkanGogyo":"木","nisshiGogyo":"土","moon":null,"hourPillar":null}
2000-01-17 {"ijouSet":"7"} — 同じ日を7個説で(無印)
{"date":"2000-01-17","weekday":"月","setsu":{"name":"小寒","jst":"2000-01-06 10:00","keika":12,"isSetsuiriDay":false},"pillars":{"year":{"kan":"己","shi":"卯","kanshi":"己卯","zokan":"乙","no":16,"stages":{"初元":null,"中元":null,"本元":"乙"}},"month":{"kan":"丁","shi":"丑","kanshi":"丁丑","zokan":"辛","no":14,"stages":{"初元":"癸","中元":"辛","本元":"己"}},"day":{"kan":"甲","shi":"戌","kanshi":"甲戌","zokan":"丁","no":11,"stages":{"初元":"辛","中元":"丁","本元":"戊"}}},"stars":{"ancestor":{"kan":"甲","star":"貫索星"},"north":{"kan":"己","star":"司禄星"},"center":{"kan":"辛","star":"牽牛星"},"south":{"kan":"丁","star":"調舒星"},"east":{"kan":"乙","star":"石門星"},"west":{"kan":"丁","star":"調舒星"}},"starSet":["貫索星","司禄星","牽牛星","調舒星","石門星"],"jusei":{"early":{"shi":"卯","name":"天将星","energy":12,"unsei":"帝旺"},"mid":{"shi":"丑","name":"天南星","energy":10,"unsei":"冠帯"},"late":{"shi":"戌","name":"天印星","energy":6,"unsei":"養"}},"juseiSet":["天将星","天南星","天印星"],"totalEnergy":28,"gogyoDist":{"木":2,"土":1,"金":1,"火":2},"tenchusatsu":"申酉天中殺","tenchusatsuShi":["申","酉"],"tenchusatsuYear":"申酉天中殺","ijou":{"year":null,"month":null,"day":null},"nikkanGogyo":"木","nisshiGogyo":"土","moon":null,"hourPillar":null}
既定の opts で作った命式から。koudou の area・ratio は小数6桁。rokushin の各行は [key, ideal, real, level, star, where]、sainou.kokusu の各行は [pos, star, kokusu]。
1984-10-10(甲子・甲戌・丁丑)
{"date":"1984-10-10","suurihou":{"byKan":{"甲":46,"乙":0,"丙":0,"丁":24,"戊":14,"己":12,"庚":0,"辛":50,"壬":0,"癸":58},"byGogyo":{"木":46,"火":24,"土":26,"金":50,"水":58},"total":204,"genList":["甲","甲","丁","癸","辛","丁","戊","癸","辛","己"]},"shinkyo":{"energy":12,"strongCount":0,"weakCount":1,"hasTenshosei":false,"label":"身弱"},"koudou":{"nos":[1,11,14],"degs":[0,60,78],"area":0.098447,"ratio":0.031337,"unique":3,"maxGap":282,"label":"狭い","spread":["第一領域"]},"rokushin":[["母親","甲","甲","理想どおり","玉堂星","年干・月干"],["父親","己","己","理想どおり","鳳閣星","日支の本元"],["兄弟","丁","丁","理想どおり","貫索星","月支の中元"],["姉妹","丙",null,"なし","石門星",""],["パートナー","壬","癸","第二優先","牽牛星","年支の本元・日支の初元"],["男子供","乙","甲","理想どおり","龍高星","年干・月干"],["女子供","甲",null,"なし","玉堂星",""]],"sainou":{"kokusu":[["社会","車騎星",0],["配偶者","車騎星",0],["中心","禄存星",2],["目上","玉堂星",1],["目下","玉堂星",1]],"max":2,"kata":"了殿の型","un":"西天運","talent":["禄存星"]},"teiichi":{"count":3,"keys":["north","center","west"],"spirit":1,"real":2},"kichijitsu":{"setsugetsu":9,"good":[],"bad":[]},"isouInner":{"日柱+月柱":["刑"],"日柱+年柱":["支合"],"月柱+年柱":[]},"kyouiku":{"rows":[["月柱","甲戌"]],"onDay":false},"kyouikuSei":{"insei":["玉堂星"],"rosei":["鳳閣星"],"pairs":["玉堂星+鳳閣星"],"ok":true},"holiday":"体育の日"}
1990-05-01(庚午・庚辰・丙寅)
{"date":"1990-05-01","suurihou":{"byKan":{"甲":21,"乙":31,"丙":62,"丁":21,"戊":62,"己":21,"庚":28,"辛":0,"壬":0,"癸":14},"byGogyo":{"木":52,"火":83,"土":83,"金":28,"水":14},"total":260,"genList":["庚","庚","丙","己","丁","乙","癸","戊","戊","丙","甲"]},"shinkyo":{"energy":31,"strongCount":3,"weakCount":0,"hasTenshosei":true,"label":"身強"},"koudou":{"nos":[7,17,3],"degs":[36,96,12],"area":0.13912,"ratio":0.044283,"unique":3,"maxGap":276,"label":"狭い","spread":["第一領域","第二領域"]},"rokushin":[["母親","乙","乙","理想どおり","玉堂星","月支の初元"],["父親","庚","庚","理想どおり","禄存星","年干・月干"],["兄弟","丙","丙","理想どおり","貫索星","日支の中元"],["姉妹","丁","丁","理想どおり","石門星","年支の本元"],["パートナー","辛","庚","第二優先","司禄星","年干・月干"],["男子供","壬","癸","理想どおり","車騎星","月支の中元"],["女子供","癸",null,"なし","牽牛星",""]],"sainou":{"kokusu":[["社会","石門星",2],["配偶者","龍高星",3],["中心","鳳閣星",1],["目上","禄存星",2],["目下","禄存星",2]],"max":3,"kata":"順殿の型","un":"北天運","talent":["龍高星"]},"teiichi":{"count":1,"keys":["east"],"spirit":0,"real":1},"kichijitsu":{"setsugetsu":3,"good":["寅の日"],"bad":[]},"isouInner":{"日柱+月柱":[],"日柱+年柱":["半会"],"月柱+年柱":[]},"kyouiku":{"rows":[],"onDay":false},"kyouikuSei":{"insei":["龍高星","玉堂星"],"rosei":["鳳閣星"],"pairs":["龍高星+鳳閣星","玉堂星+鳳閣星"],"ok":true},"holiday":null}
1975-03-15(乙卯・己卯・庚申)
{"date":"1975-03-15","suurihou":{"byKan":{"甲":0,"乙":75,"丙":0,"丁":0,"戊":18,"己":15,"庚":34,"辛":0,"壬":13,"癸":0},"byGogyo":{"木":75,"火":0,"土":33,"金":34,"水":13},"total":155,"genList":["乙","己","庚","乙","乙","戊","壬","庚"]},"shinkyo":{"energy":17,"strongCount":1,"weakCount":2,"hasTenshosei":false,"label":"中庸"},"koudou":{"nos":[52,16,57],"degs":[306,90,336],"area":0.41288,"ratio":0.131424,"unique":3,"maxGap":216,"label":"狭い","spread":["第四領域","第二領域"]},"rokushin":[["母親","己","己","理想どおり","玉堂星","月干"],["父親","甲","乙","第二優先","禄存星","年干・年支の本元・月支の本元"],["兄弟","庚","庚","理想どおり","貫索星","日支の本元"],["姉妹","辛",null,"なし","石門星",""],["パートナー","乙","乙","理想どおり","司禄星","年干・年支の本元・月支の本元"],["男子供","丙",null,"なし","車騎星",""],["女子供","丁",null,"なし","牽牛星",""]],"sainou":{"kokusu":[["社会","司禄星",2],["配偶者","龍高星",3],["中心","司禄星",2],["目上","司禄星",2],["目下","玉堂星",3]],"max":3,"kata":"順殿の型","un":"北天運","talent":["龍高星","玉堂星"]},"teiichi":{"count":1,"keys":["center"],"spirit":0,"real":1},"kichijitsu":{"setsugetsu":2,"good":[],"bad":[]},"isouInner":{"日柱+月柱":[],"日柱+年柱":[],"月柱+年柱":["比和"]},"kyouiku":{"rows":[],"onDay":false},"kyouikuSei":{"insei":["龍高星","玉堂星"],"rosei":[],"pairs":[],"ok":false},"holiday":null}
1963-12-25(癸卯・甲子・壬寅)
{"date":"1963-12-25","suurihou":{"byKan":{"甲":60,"乙":27,"丙":19,"丁":0,"戊":19,"己":0,"庚":0,"辛":0,"壬":18,"癸":54},"byGogyo":{"木":87,"火":19,"土":19,"金":0,"水":72},"total":197,"genList":["癸","甲","壬","乙","癸","戊","丙","甲"]},"shinkyo":{"energy":18,"strongCount":1,"weakCount":2,"hasTenshosei":true,"label":"中庸"},"koudou":{"nos":[40,1,39],"degs":[234,0,228],"area":0.0852,"ratio":0.02712,"unique":3,"maxGap":228,"label":"狭い","spread":["第三領域","第一領域"]},"rokushin":[["母親","辛","乙","定位置","玉堂星","年支の本元"],["父親","丙","癸","定位置","禄存星","年干・月支の本元"],["兄弟","壬",null,"なし","貫索星",""],["姉妹","癸","癸","理想どおり","石門星","年干・月支の本元"],["パートナー","丁","丙","第二優先","司禄星","日支の中元"],["男子供","戊",null,"なし","車騎星",""],["女子供","己","戊","理想どおり","牽牛星","日支の初元"]],"sainou":{"kokusu":[["社会","調舒星",0],["配偶者","鳳閣星",0],["中心","石門星",0],["目上","石門星",0],["目下","鳳閣星",0]],"max":0,"kata":"無玄の型","un":"北天運","talent":[]},"teiichi":{"count":1,"keys":["south"],"spirit":1,"real":0},"kichijitsu":{"setsugetsu":11,"good":["寅の日"],"bad":["三隣亡"]},"isouInner":{"日柱+月柱":[],"日柱+年柱":[],"月柱+年柱":["刑"]},"kyouiku":{"rows":[],"onDay":false},"kyouikuSei":{"insei":[],"rosei":["鳳閣星","調舒星"],"pairs":[],"ok":false},"holiday":null}
2010-07-07(庚寅・癸未・戊午)
{"date":"2010-07-07","suurihou":{"byKan":{"甲":18,"乙":27,"丙":29,"丁":46,"戊":58,"己":46,"庚":18,"辛":0,"壬":0,"癸":13},"byGogyo":{"木":45,"火":75,"土":104,"金":18,"水":13},"total":255,"genList":["庚","癸","戊","戊","丙","甲","丁","乙","己","己","丁"]},"shinkyo":{"energy":29,"strongCount":2,"weakCount":0,"hasTenshosei":true,"label":"身強"},"koudou":{"nos":[27,20,55],"degs":[156,114,324],"area":0.688521,"ratio":0.219163,"unique":3,"maxGap":168,"label":"ふつう","spread":["第二領域","第四領域"]},"rokushin":[["母親","丁","丁","理想どおり","玉堂星","月支の初元・日支の本元"],["父親","壬","癸","第二優先","禄存星","月干"],["兄弟","戊","戊","理想どおり","貫索星","年支の初元"],["姉妹","己","己","理想どおり","石門星","月支の本元・日支の中元"],["パートナー","癸","癸","理想どおり","司禄星","月干"],["男子供","甲","甲","理想どおり","車騎星","年支の本元"],["女子供","乙","乙","理想どおり","牽牛星","月支の中元"]],"sainou":{"kokusu":[["社会","貫索星",1],["配偶者","石門星",1],["中心","玉堂星",2],["目上","鳳閣星",1],["目下","司禄星",3]],"max":3,"kata":"順殿の型","un":"北天運","talent":["司禄星"]},"teiichi":{"count":1,"keys":["east"],"spirit":0,"real":1},"kichijitsu":{"setsugetsu":6,"good":["一粒万倍日"],"bad":["三隣亡"]},"isouInner":{"日柱+月柱":["支合"],"日柱+年柱":["半会"],"月柱+年柱":[]},"kyouiku":{"rows":[],"onDay":false},"kyouikuSei":{"insei":["玉堂星"],"rosei":["鳳閣星"],"pairs":["玉堂星+鳳閣星"],"ok":true},"holiday":null}
2026-08-13(丙午・丙申・己未)
{"date":"2026-08-13","suurihou":{"byKan":{"甲":0,"乙":18,"丙":48,"丁":56,"戊":24,"己":84,"庚":28,"辛":0,"壬":18,"癸":0},"byGogyo":{"木":18,"火":104,"土":108,"金":28,"水":18},"total":276,"genList":["丙","丙","己","己","丁","戊","壬","庚","丁","乙","己"]},"shinkyo":{"energy":28,"strongCount":2,"weakCount":0,"hasTenshosei":false,"label":"身強"},"koudou":{"nos":[43,33,56],"degs":[252,192,330],"area":0.587521,"ratio":0.187014,"unique":3,"maxGap":222,"label":"ふつう","spread":["第三領域","第四領域"]},"rokushin":[["母親","丙","丙","理想どおり","玉堂星","年干・月干"],["父親","辛","庚","第二優先","鳳閣星","月支の本元"],["兄弟","己","己","理想どおり","貫索星","年支の中元・日支の本元"],["姉妹","戊","戊","理想どおり","石門星","月支の初元"],["パートナー","甲","乙","第二優先","牽牛星","日支の中元"],["男子供","丁","丙","理想どおり","龍高星","年干・月干"],["女子供","丙","丁","理想どおり","玉堂星","年支の本元・日支の初元"]],"sainou":{"kokusu":[["社会","貫索星",0],["配偶者","龍高星",0],["中心","石門星",0],["目上","玉堂星",0],["目下","玉堂星",0]],"max":0,"kata":"無玄の型","un":"北天運","talent":[]},"teiichi":{"count":2,"keys":["north","east"],"spirit":1,"real":1},"kichijitsu":{"setsugetsu":7,"good":["一粒万倍日"],"bad":[]},"isouInner":{"日柱+月柱":[],"日柱+年柱":["支合"],"月柱+年柱":[]},"kyouiku":{"rows":[["日柱","己未"]],"onDay":true},"kyouikuSei":{"insei":["龍高星","玉堂星"],"rosei":["鳳閣星"],"pairs":["龍高星+鳳閣星","玉堂星+鳳閣星"],"ok":true},"holiday":null}
1901-01-01(庚子・戊子・己卯)
{"date":"1901-01-01","suurihou":{"byKan":{"甲":0,"乙":19,"丙":0,"丁":0,"戊":13,"己":6,"庚":7,"辛":0,"壬":0,"癸":62},"byGogyo":{"木":19,"火":0,"土":19,"金":7,"水":62},"total":107,"genList":["庚","戊","己","癸","癸","乙"]},"shinkyo":{"energy":6,"strongCount":0,"weakCount":3,"hasTenshosei":false,"label":"身弱"},"koudou":{"nos":[37,25,16],"degs":[216,144,90],"area":0.475528,"ratio":0.151365,"unique":3,"maxGap":234,"label":"狭い","spread":["第三領域","第二領域"]},"rokushin":[["母親","丙","癸","定位置","玉堂星","年支の本元・月支の本元"],["父親","辛","戊","理想どおり","鳳閣星","月干"],["兄弟","己",null,"なし","貫索星",""],["姉妹","戊","戊","理想どおり","石門星","月干"],["パートナー","甲","乙","第二優先","牽牛星","日支の本元"],["男子供","丁",null,"なし","龍高星",""],["女子供","丙",null,"なし","玉堂星",""]],"sainou":{"kokusu":[["社会","禄存星",1],["配偶者","車騎星",2],["中心","禄存星",1],["目上","調舒星",1],["目下","石門星",3]],"max":3,"kata":"順殿の型","un":"西天運","talent":["石門星"]},"teiichi":{"count":2,"keys":["center","west"],"spirit":0,"real":2},"kichijitsu":{"setsugetsu":11,"good":[],"bad":[]},"isouInner":{"日柱+月柱":["刑"],"日柱+年柱":["刑"],"月柱+年柱":["比和"]},"kyouiku":{"rows":[],"onDay":false},"kyouikuSei":{"insei":[],"rosei":["調舒星"],"pairs":[],"ok":false},"holiday":null}
2100-12-31(庚申・戊子・丁未)
{"date":"2100-12-31","suurihou":{"byKan":{"甲":0,"乙":13,"丙":0,"丁":36,"戊":30,"己":18,"庚":46,"辛":0,"壬":27,"癸":18},"byGogyo":{"木":13,"火":36,"土":48,"金":46,"水":45},"total":188,"genList":["庚","戊","丁","戊","壬","庚","癸","丁","乙","己"]},"shinkyo":{"energy":18,"strongCount":1,"weakCount":1,"hasTenshosei":false,"label":"中庸"},"koudou":{"nos":[57,25,44],"degs":[336,144,258],"area":1.049802,"ratio":0.334162,"unique":3,"maxGap":168,"label":"ふつう","spread":["第四領域","第二領域","第三領域"]},"rokushin":[["母親","甲","乙","第二優先","玉堂星","日支の中元"],["父親","己","庚","理想どおり","鳳閣星","年干・年支の本元"],["兄弟","丁","丁","理想どおり","貫索星","日支の初元"],["姉妹","丙",null,"なし","石門星",""],["パートナー","壬","壬","理想どおり","牽牛星","年支の中元"],["男子供","乙","乙","理想どおり","龍高星","日支の中元"],["女子供","甲",null,"なし","玉堂星",""]],"sainou":{"kokusu":[["社会","司禄星",0],["配偶者","鳳閣星",1],["中心","車騎星",2],["目上","司禄星",0],["目下","調舒星",1]],"max":2,"kata":"了殿の型","un":"北天運","talent":["車騎星"]},"teiichi":{"count":1,"keys":["south"],"spirit":1,"real":0},"kichijitsu":{"setsugetsu":11,"good":[],"bad":[]},"isouInner":{"日柱+月柱":["害"],"日柱+年柱":[],"月柱+年柱":["半会"]},"kyouiku":{"rows":[],"onDay":false},"kyouikuSei":{"insei":["龍高星"],"rosei":["鳳閣星","調舒星"],"pairs":["龍高星+鳳閣星","龍高星+調舒星"],"ok":true},"holiday":null}
2000-02-29(庚辰・戊寅・丁巳)
{"date":"2000-02-29","suurihou":{"byKan":{"甲":23,"乙":29,"丙":60,"丁":22,"戊":120,"己":0,"庚":32,"辛":0,"壬":0,"癸":16},"byGogyo":{"木":52,"火":82,"土":120,"金":32,"水":16},"total":302,"genList":["庚","戊","丁","乙","癸","戊","戊","丙","甲","戊","庚","丙"]},"shinkyo":{"energy":22,"strongCount":1,"weakCount":1,"hasTenshosei":true,"label":"中庸"},"koudou":{"nos":[17,15,54],"degs":[96,84,318],"area":0.173899,"ratio":0.055354,"unique":3,"maxGap":222,"label":"狭い","spread":["第二領域","第一領域","第四領域"]},"rokushin":[["母親","甲","甲","理想どおり","玉堂星","月支の本元"],["父親","己","戊","第二優先","鳳閣星","年支の本元・月干・月支の初元・日支の初元"],["兄弟","丁",null,"なし","貫索星",""],["姉妹","丙","丙","理想どおり","石門星","月支の中元・日支の本元"],["パートナー","壬","癸","第二優先","牽牛星","年支の中元"],["男子供","乙","甲","理想どおり","龍高星","月支の本元"],["女子供","甲","乙","理想どおり","玉堂星","年支の初元"]],"sainou":{"kokusu":[["社会","調舒星",1],["配偶者","石門星",1],["中心","玉堂星",3],["目上","司禄星",2],["目下","調舒星",1]],"max":3,"kata":"了殿の型","un":"北天運","talent":["玉堂星"]},"teiichi":{"count":1,"keys":["south"],"spirit":1,"real":0},"kichijitsu":{"setsugetsu":1,"good":["巳の日"],"bad":[]},"isouInner":{"日柱+月柱":["刑","害"],"日柱+年柱":[],"月柱+年柱":[]},"kyouiku":{"rows":[],"onDay":false},"kyouikuSei":{"insei":["龍高星","玉堂星"],"rosei":["調舒星"],"pairs":["龍高星+調舒星","玉堂星+調舒星"],"ok":true},"holiday":null}
1904-02-29(甲辰・丙寅・癸巳)
{"date":"1904-02-29","suurihou":{"byKan":{"甲":46,"乙":29,"丙":90,"丁":0,"戊":90,"己":0,"庚":16,"辛":0,"壬":0,"癸":32},"byGogyo":{"木":75,"火":90,"土":90,"金":16,"水":32},"total":303,"genList":["甲","丙","癸","乙","癸","戊","戊","丙","甲","戊","庚","丙"]},"shinkyo":{"energy":16,"strongCount":0,"weakCount":1,"hasTenshosei":false,"label":"中庸"},"koudou":{"nos":[41,3,30],"degs":[240,12,174],"area":0.982854,"ratio":0.312852,"unique":3,"maxGap":162,"label":"ふつう","spread":["第三領域","第一領域","第二領域"]},"rokushin":[["母親","庚","庚","理想どおり","玉堂星","日支の中元"],["父親","乙","乙","理想どおり","鳳閣星","年支の初元"],["兄弟","癸","癸","理想どおり","貫索星","年支の中元"],["姉妹","壬",null,"なし","石門星",""],["パートナー","戊","戊","理想どおり","牽牛星","年支の本元・月支の初元・日支の初元"],["男子供","辛",null,"なし","龍高星",""],["女子供","庚","庚","理想どおり","玉堂星","日支の中元"]],"sainou":{"kokusu":[["社会","牽牛星",2],["配偶者","司禄星",0],["中心","調舒星",1],["目上","調舒星",1],["目下","司禄星",0]],"max":2,"kata":"順殿の型","un":"北天運","talent":["牽牛星"]},"teiichi":{"count":0,"keys":[],"spirit":0,"real":0},"kichijitsu":{"setsugetsu":1,"good":["巳の日"],"bad":[]},"isouInner":{"日柱+月柱":["刑","害"],"日柱+年柱":[],"月柱+年柱":[]},"kyouiku":{"rows":[],"onDay":false},"kyouikuSei":{"insei":[],"rosei":["調舒星"],"pairs":[],"ok":false},"holiday":null}
1950-01-24(己丑・丁丑・己未)
{"date":"1950-01-24","suurihou":{"byKan":{"甲":0,"乙":22,"丙":0,"丁":40,"戊":0,"己":100,"庚":0,"辛":40,"壬":0,"癸":50},"byGogyo":{"木":22,"火":40,"土":100,"金":40,"水":50},"total":252,"genList":["己","丁","己","癸","辛","己","癸","辛","己","丁","乙","己"]},"shinkyo":{"energy":20,"strongCount":1,"weakCount":0,"hasTenshosei":false,"label":"中庸"},"koudou":{"nos":[26,14,56],"degs":[150,78,330],"area":0.951057,"ratio":0.302731,"unique":3,"maxGap":180,"label":"ふつう","spread":["第二領域","第一領域","第四領域"]},"rokushin":[["母親","丙","丁","第二優先","玉堂星","月干・日支の初元"],["父親","辛","癸","第二優先","鳳閣星","年支の初元・月支の初元"],["兄弟","己","己","理想どおり","貫索星","年干・年支の本元・月支の本元・日支の本元"],["姉妹","戊",null,"なし","石門星",""],["パートナー","甲","乙","第二優先","牽牛星","日支の中元"],["男子供","丁",null,"なし","龍高星",""],["女子供","丙","丁","理想どおり","玉堂星","月干・日支の初元"]],"sainou":{"kokusu":[["社会","貫索星",0],["配偶者","貫索星",0],["中心","貫索星",0],["目上","貫索星",0],["目下","龍高星",0]],"max":0,"kata":"無玄の型","un":"西天運","talent":[]},"teiichi":{"count":1,"keys":["east"],"spirit":0,"real":1},"kichijitsu":{"setsugetsu":12,"good":[],"bad":[]},"isouInner":{"日柱+月柱":["冲","刑"],"日柱+年柱":["冲","刑"],"月柱+年柱":["比和"]},"kyouiku":{"rows":[["日柱","己未"]],"onDay":true},"kyouikuSei":{"insei":["龍高星"],"rosei":[],"pairs":[],"ok":false},"holiday":null}
1950-02-08(庚寅・戊寅・甲戌)
{"date":"1950-02-08","suurihou":{"byKan":{"甲":84,"乙":0,"丙":46,"丁":10,"戊":92,"己":0,"庚":10,"辛":16,"壬":0,"癸":0},"byGogyo":{"木":84,"火":56,"土":92,"金":26,"水":0},"total":258,"genList":["庚","戊","甲","戊","丙","甲","戊","丙","甲","辛","丁","戊"]},"shinkyo":{"energy":28,"strongCount":2,"weakCount":0,"hasTenshosei":false,"label":"身強"},"koudou":{"nos":[27,15,11],"degs":[156,84,60],"area":0.181636,"ratio":0.057816,"unique":3,"maxGap":264,"label":"狭い","spread":["第二領域","第一領域"]},"rokushin":[["母親","癸","甲","定位置","玉堂星","年支の本元・月支の本元"],["父親","戊","戊","第二優先","禄存星","年支の初元・月干・月支の初元・日支の本元"],["兄弟","甲","甲","理想どおり","貫索星","年支の本元・月支の本元"],["姉妹","乙",null,"なし","石門星",""],["パートナー","己","戊","第二優先","司禄星","年支の初元・月干・月支の初元・日支の本元"],["男子供","庚","辛","理想どおり","車騎星","日支の初元"],["女子供","辛","庚","理想どおり","牽牛星","年干"]],"sainou":{"kokusu":[["社会","禄存星",0],["配偶者","牽牛星",0],["中心","禄存星",0],["目上","車騎星",0],["目下","禄存星",0]],"max":0,"kata":"無玄の型","un":"南天運","talent":[]},"teiichi":{"count":2,"keys":["center","west"],"spirit":0,"real":2},"kichijitsu":{"setsugetsu":1,"good":[],"bad":[]},"isouInner":{"日柱+月柱":["半会"],"日柱+年柱":["半会"],"月柱+年柱":["比和"]},"kyouiku":{"rows":[["日柱","甲戌"]],"onDay":true},"kyouikuSei":{"insei":[],"rosei":[],"pairs":[],"ok":false},"holiday":null}
1950-01-18(己丑・丁丑・癸丑)
{"date":"1950-01-18","suurihou":{"byKan":{"甲":0,"乙":0,"丙":0,"丁":15,"戊":0,"己":60,"庚":0,"辛":54,"壬":0,"癸":120},"byGogyo":{"木":0,"火":15,"土":60,"金":54,"水":120},"total":249,"genList":["己","丁","癸","癸","辛","己","癸","辛","己","癸","辛","己"]},"shinkyo":{"energy":30,"strongCount":3,"weakCount":0,"hasTenshosei":false,"label":"身強"},"koudou":{"nos":[26,14,50],"degs":[150,78,294],"area":1.063314,"ratio":0.338463,"unique":3,"maxGap":144,"label":"ふつう","spread":["第二領域","第一領域","第四領域"]},"rokushin":[["母親","庚","辛","第二優先","玉堂星","年支の中元・月支の中元・日支の中元"],["父親","乙","丁","第二優先","鳳閣星","月干"],["兄弟","癸","癸","理想どおり","貫索星","年支の初元・月支の初元・日支の初元"],["姉妹","壬",null,"なし","石門星",""],["パートナー","戊","己","第二優先","牽牛星","年干・年支の本元・月支の本元・日支の本元"],["男子供","辛",null,"なし","龍高星",""],["女子供","庚","辛","理想どおり","玉堂星","年支の中元・月支の中元・日支の中元"]],"sainou":{"kokusu":[["社会","龍高星",1],["配偶者","龍高星",1],["中心","龍高星",1],["目上","車騎星",0],["目下","禄存星",3]],"max":3,"kata":"点欽の型","un":"北天運","talent":["禄存星"]},"teiichi":{"count":0,"keys":[],"spirit":0,"real":0},"kichijitsu":{"setsugetsu":12,"good":[],"bad":[]},"isouInner":{"日柱+月柱":["比和"],"日柱+年柱":["比和"],"月柱+年柱":["比和"]},"kyouiku":{"rows":[["日柱","癸丑"]],"onDay":true},"kyouikuSei":{"insei":["龍高星"],"rosei":["調舒星"],"pairs":["龍高星+調舒星"],"ok":true},"holiday":null}
大運の各行は [age, year, kanshi, shusei, jusei, energy, tenchusatsu, isDaiunTenchusatsu, ijou]。行運の各行は [label, kanshi, shusei, jusei, energy, unsei, isTenchusatsu, ijou]。
1984-10-10 male
{"direction":"順行","startAge":9,"daysToSetsu":28,"rows":[[9,1993,"乙亥","龍高星","天報星",3,"申酉天中殺",false,"通常"],[19,2003,"丙子","石門星","天馳星",1,"申酉天中殺",false,null],[29,2013,"丁丑","貫索星","天庫星",5,"申酉天中殺",false,null],[39,2023,"戊寅","調舒星","天極星",2,"申酉天中殺",false,null],[49,2033,"己卯","鳳閣星","天胡星",4,"申酉天中殺",false,null],[59,2043,"庚辰","司禄星","天堂星",8,"申酉天中殺",false,null],[69,2053,"辛巳","禄存星","天将星",12,"申酉天中殺",false,"暗合"],[79,2063,"壬午","牽牛星","天禄星",11,"申酉天中殺",false,"暗合"],[89,2073,"癸未","車騎星","天南星",10,"申酉天中殺",false,null],[99,2083,"甲申","玉堂星","天恍星",7,"午未天中殺",true,null],[109,2093,"乙酉","龍高星","天貴星",9,"午未天中殺",true,null],[119,2103,"丙戌","石門星","天印星",6,"午未天中殺",false,"暗合"]]}
1984-10-10 female
{"direction":"逆行","startAge":1,"daysToSetsu":2,"rows":[[1,1985,"癸酉","車騎星","天貴星",9,"戌亥天中殺",true,null],[11,1995,"壬申","牽牛星","天恍星",7,"戌亥天中殺",true,null],[21,2005,"辛未","禄存星","天南星",10,"戌亥天中殺",false,null],[31,2015,"庚午","司禄星","天禄星",11,"戌亥天中殺",false,null],[41,2025,"己巳","鳳閣星","天将星",12,"戌亥天中殺",false,null],[51,2035,"戊辰","調舒星","天堂星",8,"戌亥天中殺",false,null],[61,2045,"丁卯","貫索星","天胡星",4,"戌亥天中殺",false,null],[71,2055,"丙寅","石門星","天極星",2,"戌亥天中殺",false,null],[81,2065,"乙丑","龍高星","天庫星",5,"戌亥天中殺",false,null],[91,2075,"甲子","玉堂星","天馳星",1,"戌亥天中殺",false,null],[101,2085,"癸亥","車騎星","天報星",3,"子丑天中殺",false,null],[111,2095,"壬戌","牽牛星","天印星",6,"子丑天中殺",false,null]]}
2000-02-29 male
{"direction":"順行","startAge":2,"daysToSetsu":5,"rows":[[2,2002,"己卯","鳳閣星","天胡星",4,"申酉天中殺",false,null],[12,2012,"庚辰","司禄星","天堂星",8,"申酉天中殺",false,null],[22,2022,"辛巳","禄存星","天将星",12,"申酉天中殺",false,"暗合"],[32,2032,"壬午","牽牛星","天禄星",11,"申酉天中殺",false,"暗合"],[42,2042,"癸未","車騎星","天南星",10,"申酉天中殺",false,null],[52,2052,"甲申","玉堂星","天恍星",7,"午未天中殺",false,null],[62,2062,"乙酉","龍高星","天貴星",9,"午未天中殺",false,null],[72,2072,"丙戌","石門星","天印星",6,"午未天中殺",false,"暗合"],[82,2082,"丁亥","貫索星","天報星",3,"午未天中殺",false,"暗合"],[92,2092,"戊子","調舒星","天馳星",1,"午未天中殺",true,"暗合"],[102,2102,"己丑","鳳閣星","天庫星",5,"午未天中殺",true,null],[112,2112,"庚寅","司禄星","天極星",2,"午未天中殺",false,null]]}
2000-02-29 female
{"direction":"逆行","startAge":8,"daysToSetsu":25,"rows":[[8,2008,"丁丑","貫索星","天庫星",5,"申酉天中殺",true,null],[18,2018,"丙子","石門星","天馳星",1,"申酉天中殺",true,null],[28,2028,"乙亥","龍高星","天報星",3,"申酉天中殺",false,"通常"],[38,2038,"甲戌","玉堂星","天印星",6,"申酉天中殺",false,"通常"],[48,2048,"癸酉","車騎星","天貴星",9,"戌亥天中殺",false,null],[58,2058,"壬申","牽牛星","天恍星",7,"戌亥天中殺",false,null],[68,2068,"辛未","禄存星","天南星",10,"戌亥天中殺",false,null],[78,2078,"庚午","司禄星","天禄星",11,"戌亥天中殺",false,null],[88,2088,"己巳","鳳閣星","天将星",12,"戌亥天中殺",false,null],[98,2098,"戊辰","調舒星","天堂星",8,"戌亥天中殺",false,null],[108,2108,"丁卯","貫索星","天胡星",4,"戌亥天中殺",false,null],[118,2118,"丙寅","石門星","天極星",2,"戌亥天中殺",false,null]]}
1963-12-25 male
{"direction":"逆行","startAge":6,"daysToSetsu":17,"rows":[[6,1969,"癸亥","石門星","天禄星",11,"子丑天中殺",false,null],[16,1979,"壬戌","貫索星","天南星",10,"子丑天中殺",false,null],[26,1989,"辛酉","玉堂星","天恍星",7,"子丑天中殺",false,null],[36,1999,"庚申","龍高星","天貴星",9,"子丑天中殺",false,null],[46,2009,"己未","牽牛星","天印星",6,"子丑天中殺",false,null],[56,2019,"戊午","車騎星","天報星",3,"子丑天中殺",false,null],[66,2029,"丁巳","司禄星","天馳星",1,"子丑天中殺",true,"通常"],[76,2039,"丙辰","禄存星","天庫星",5,"子丑天中殺",true,null],[86,2049,"乙卯","調舒星","天極星",2,"子丑天中殺",false,null],[96,2059,"甲寅","鳳閣星","天胡星",4,"子丑天中殺",false,null],[106,2069,"癸丑","石門星","天堂星",8,"寅卯天中殺",false,null],[116,2079,"壬子","貫索星","天将星",12,"寅卯天中殺",false,null]]}
1963-12-25 female
{"direction":"順行","startAge":4,"daysToSetsu":12,"rows":[[4,1967,"乙丑","調舒星","天堂星",8,"戌亥天中殺",false,null],[14,1977,"丙寅","禄存星","天胡星",4,"戌亥天中殺",false,null],[24,1987,"丁卯","司禄星","天極星",2,"戌亥天中殺",false,null],[34,1997,"戊辰","車騎星","天庫星",5,"戌亥天中殺",true,null],[44,2007,"己巳","牽牛星","天馳星",1,"戌亥天中殺",true,null],[54,2017,"庚午","龍高星","天報星",3,"戌亥天中殺",false,null],[64,2027,"辛未","玉堂星","天印星",6,"戌亥天中殺",false,null],[74,2037,"壬申","貫索星","天貴星",9,"戌亥天中殺",false,null],[84,2047,"癸酉","石門星","天恍星",7,"戌亥天中殺",false,null],[94,2057,"甲戌","鳳閣星","天南星",10,"申酉天中殺",false,"通常"],[104,2067,"乙亥","調舒星","天禄星",11,"申酉天中殺",false,"通常"],[114,2077,"丙子","禄存星","天将星",12,"申酉天中殺",false,null]]}
1984-02-05 male
{"direction":"順行","startAge":10,"daysToSetsu":29,"rows":[[10,1994,"丁卯","龍高星","天胡星",4,"戌亥天中殺",false,null],[20,2004,"戊辰","石門星","天堂星",8,"戌亥天中殺",false,null],[30,2014,"己巳","貫索星","天将星",12,"戌亥天中殺",false,null],[40,2024,"庚午","調舒星","天禄星",11,"戌亥天中殺",false,null],[50,2034,"辛未","鳳閣星","天南星",10,"戌亥天中殺",false,null],[60,2044,"壬申","司禄星","天恍星",7,"戌亥天中殺",false,null],[70,2054,"癸酉","禄存星","天貴星",9,"戌亥天中殺",false,null],[80,2064,"甲戌","牽牛星","天印星",6,"申酉天中殺",true,"通常"],[90,2074,"乙亥","車騎星","天報星",3,"申酉天中殺",true,"通常"],[100,2084,"丙子","玉堂星","天馳星",1,"申酉天中殺",false,null],[110,2094,"丁丑","龍高星","天庫星",5,"申酉天中殺",false,null],[120,2104,"戊寅","石門星","天極星",2,"申酉天中殺",false,null]]}
1984-02-05 female
{"direction":"逆行","startAge":0,"daysToSetsu":0,"rows":[[0,1984,"乙丑","車騎星","天庫星",5,"戌亥天中殺",false,null],[10,1994,"甲子","牽牛星","天馳星",1,"戌亥天中殺",false,null],[20,2004,"癸亥","禄存星","天報星",3,"子丑天中殺",true,null],[30,2014,"壬戌","司禄星","天印星",6,"子丑天中殺",true,null],[40,2024,"辛酉","鳳閣星","天貴星",9,"子丑天中殺",false,null],[50,2034,"庚申","調舒星","天恍星",7,"子丑天中殺",false,null],[60,2044,"己未","貫索星","天南星",10,"子丑天中殺",false,null],[70,2054,"戊午","石門星","天禄星",11,"子丑天中殺",false,null],[80,2064,"丁巳","龍高星","天将星",12,"子丑天中殺",false,"通常"],[90,2074,"丙辰","玉堂星","天堂星",8,"子丑天中殺",false,null],[100,2084,"乙卯","車騎星","天胡星",4,"子丑天中殺",false,null],[110,2094,"甲寅","牽牛星","天極星",2,"子丑天中殺",false,null]]}
1984-02-04 male
{"direction":"逆行","startAge":10,"daysToSetsu":29,"rows":[[10,1994,"甲子","車騎星","天報星",3,"戌亥天中殺",false,null],[20,2004,"癸亥","司禄星","天馳星",1,"子丑天中殺",true,null],[30,2014,"壬戌","禄存星","天庫星",5,"子丑天中殺",true,null],[40,2024,"辛酉","調舒星","天極星",2,"子丑天中殺",false,null],[50,2034,"庚申","鳳閣星","天胡星",4,"子丑天中殺",false,null],[60,2044,"己未","石門星","天堂星",8,"子丑天中殺",false,null],[70,2054,"戊午","貫索星","天将星",12,"子丑天中殺",false,null],[80,2064,"丁巳","玉堂星","天禄星",11,"子丑天中殺",false,"通常"],[90,2074,"丙辰","龍高星","天南星",10,"子丑天中殺",false,null],[100,2084,"乙卯","牽牛星","天恍星",7,"子丑天中殺",false,null],[110,2094,"甲寅","車騎星","天貴星",9,"子丑天中殺",false,null],[120,2104,"癸丑","司禄星","天印星",6,"寅卯天中殺",false,null]]}
1984-02-04 female
{"direction":"順行","startAge":0,"daysToSetsu":1,"rows":[[0,1984,"丙寅","龍高星","天貴星",9,"戌亥天中殺",false,null],[10,1994,"丁卯","玉堂星","天恍星",7,"戌亥天中殺",false,null],[20,2004,"戊辰","貫索星","天南星",10,"戌亥天中殺",false,null],[30,2014,"己巳","石門星","天禄星",11,"戌亥天中殺",false,null],[40,2024,"庚午","鳳閣星","天将星",12,"戌亥天中殺",false,null],[50,2034,"辛未","調舒星","天堂星",8,"戌亥天中殺",false,null],[60,2044,"壬申","禄存星","天胡星",4,"戌亥天中殺",false,null],[70,2054,"癸酉","司禄星","天極星",2,"戌亥天中殺",false,null],[80,2064,"甲戌","車騎星","天庫星",5,"申酉天中殺",true,"通常"],[90,2074,"乙亥","牽牛星","天馳星",1,"申酉天中殺",true,"通常"],[100,2084,"丙子","龍高星","天報星",3,"申酉天中殺",false,null],[110,2094,"丁丑","玉堂星","天印星",6,"申酉天中殺",false,null]]}
2100-12-06 male
{"direction":"順行","startAge":0,"daysToSetsu":1,"rows":[[0,2100,"戊子","車騎星","天将星",12,"午未天中殺",false,"暗合"],[10,2110,"己丑","牽牛星","天堂星",8,"午未天中殺",false,null],[20,2120,"庚寅","龍高星","天胡星",4,"午未天中殺",false,null],[30,2130,"辛卯","玉堂星","天極星",2,"午未天中殺",false,null],[40,2140,"壬辰","貫索星","天庫星",5,"午未天中殺",false,null],[50,2150,"癸巳","石門星","天馳星",1,"午未天中殺",false,"暗合"],[60,2160,"甲午","鳳閣星","天報星",3,"辰巳天中殺",false,null],[70,2170,"乙未","調舒星","天印星",6,"辰巳天中殺",false,null],[80,2180,"丙申","禄存星","天貴星",9,"辰巳天中殺",true,null],[90,2190,"丁酉","司禄星","天恍星",7,"辰巳天中殺",true,null],[100,2200,"戊戌","車騎星","天南星",10,"辰巳天中殺",false,"通常"],[110,2210,"己亥","牽牛星","天禄星",11,"辰巳天中殺",false,"暗合"]]}
2100-12-06 female
{"direction":"逆行","startAge":10,"daysToSetsu":29,"rows":[[10,2110,"丙戌","禄存星","天南星",10,"午未天中殺",false,"暗合"],[20,2120,"乙酉","調舒星","天恍星",7,"午未天中殺",true,null],[30,2130,"甲申","鳳閣星","天貴星",9,"午未天中殺",true,null],[40,2140,"癸未","石門星","天印星",6,"申酉天中殺",false,null],[50,2150,"壬午","貫索星","天報星",3,"申酉天中殺",false,"暗合"],[60,2160,"辛巳","玉堂星","天馳星",1,"申酉天中殺",false,"暗合"],[70,2170,"庚辰","龍高星","天庫星",5,"申酉天中殺",false,null],[80,2180,"己卯","牽牛星","天極星",2,"申酉天中殺",false,null],[90,2190,"戊寅","車騎星","天胡星",4,"申酉天中殺",false,null],[100,2200,"丁丑","司禄星","天堂星",8,"申酉天中殺",false,null],[110,2210,"丙子","禄存星","天将星",12,"申酉天中殺",false,null],[120,2220,"乙亥","調舒星","天禄星",11,"申酉天中殺",false,"通常"]]}
2100-12-07 male … 参照実装は Cannot read properties of null (reading 'jdn')(§15.1 の既知の限界)
gyoun)生年月日 1984-10-10 が 2026-10-05 14時 を見る
{"tenchusatsu":"申酉天中殺","shi":["申","酉"],"nikkan":"丁","moon":null,"year":["年運","丙午","石門星","天禄星",11,"建禄",false,null],"month":["月運","丁酉","貫索星","天貴星",9,"長生",true,null],"day":["日運","壬子","牽牛星","天馳星",1,"絶",false,null],"hour":["時運","丁未","貫索星","天南星",10,"冠帯",false,null]}
生年月日 1990-05-01 が 2030-02-03 を見る
{"tenchusatsu":"戌亥天中殺","shi":["戌","亥"],"nikkan":"丙","moon":{"kind":"新月","time":"01:07"},"year":["年運","己酉","調舒星","天極星",2,"死",false,null],"month":["月運","丁丑","石門星","天印星",6,"養",false,null],"day":["日運","己巳","調舒星","天禄星",11,"建禄",false,null],"hour":null}
生年月日 1963-12-25 が 2026-08-07 23時 を見る
{"tenchusatsu":"辰巳天中殺","shi":["辰","巳"],"nikkan":"壬","moon":null,"year":["年運","丙午","禄存星","天報星",3,"胎",false,null],"month":["月運","丙申","禄存星","天貴星",9,"長生",false,null],"day":["日運","癸丑","石門星","天堂星",8,"衰",false,null],"hour":["時運","壬子","貫索星","天将星",12,"帝旺",false,null]}
gyounList、各単位から先頭の数行)unit=year(生年月日 1984-10-10、起点 2026-10-05)
[{"label":"2026年","kanshi":"丙午","shusei":"石門星","jusei":"天禄星","energy":11,"unsei":"建禄","isTenchusatsu":false,"ijou":null,"isNow":true,"age":42},{"label":"2027年","kanshi":"丁未","shusei":"貫索星","jusei":"天南星","energy":10,"unsei":"冠帯","isTenchusatsu":false,"ijou":null,"isNow":false,"age":43},{"label":"2028年","kanshi":"戊申","shusei":"調舒星","jusei":"天恍星","energy":7,"unsei":"沐浴","isTenchusatsu":true,"ijou":null,"isNow":false,"age":44},{"label":"2029年","kanshi":"己酉","shusei":"鳳閣星","jusei":"天貴星","energy":9,"unsei":"長生","isTenchusatsu":true,"ijou":null,"isNow":false,"age":45},{"label":"2030年","kanshi":"庚戌","shusei":"司禄星","jusei":"天印星","energy":6,"unsei":"養","isTenchusatsu":false,"ijou":null,"isNow":false,"age":46}]
unit=month(生年月日 1984-10-10、起点 2026-10-05)
[{"label":"2026年1月","kanshi":"己丑","shusei":"鳳閣星","jusei":"天庫星","energy":5,"unsei":"墓","isTenchusatsu":false,"ijou":null,"isNow":false},{"label":"2026年2月","kanshi":"庚寅","shusei":"司禄星","jusei":"天極星","energy":2,"unsei":"死","isTenchusatsu":false,"ijou":null,"isNow":false},{"label":"2026年3月","kanshi":"辛卯","shusei":"禄存星","jusei":"天胡星","energy":4,"unsei":"病","isTenchusatsu":false,"ijou":null,"isNow":false},{"label":"2026年4月","kanshi":"壬辰","shusei":"牽牛星","jusei":"天堂星","energy":8,"unsei":"衰","isTenchusatsu":false,"ijou":null,"isNow":false},{"label":"2026年5月","kanshi":"癸巳","shusei":"車騎星","jusei":"天将星","energy":12,"unsei":"帝旺","isTenchusatsu":false,"ijou":"暗合","isNow":false}]
unit=day(生年月日 1984-10-10、起点 2026-10-05)
[{"label":"2026年10月1日(木)","kanshi":"戊申","shusei":"調舒星","jusei":"天恍星","energy":7,"unsei":"沐浴","isTenchusatsu":true,"ijou":null,"isNow":false,"kichi":["天赦日","一粒万倍日"],"kyou":[],"holiday":null,"moon":null},{"label":"2026年10月2日(金)","kanshi":"己酉","shusei":"鳳閣星","jusei":"天貴星","energy":9,"unsei":"長生","isTenchusatsu":true,"ijou":null,"isNow":false,"kichi":[],"kyou":[],"holiday":null,"moon":null},{"label":"2026年10月3日(土)","kanshi":"庚戌","shusei":"司禄星","jusei":"天印星","energy":6,"unsei":"養","isTenchusatsu":false,"ijou":null,"isNow":false,"kichi":[],"kyou":[],"holiday":null,"moon":null},{"label":"2026年10月4日(日)","kanshi":"辛亥","shusei":"禄存星","jusei":"天報星","energy":3,"unsei":"胎","isTenchusatsu":false,"ijou":"通常","isNow":false,"kichi":[],"kyou":[],"holiday":null,"moon":null}]
unit=hour(生年月日 1984-10-10、起点 2026-10-05)
[{"label":"子(23:00〜00:59)","kanshi":"庚子","shusei":"司禄星","jusei":"天馳星","energy":1,"unsei":"絶","isTenchusatsu":false,"ijou":"通常","hour":23,"range":"23:00〜00:59"},{"label":"丑(01:00〜02:59)","kanshi":"辛丑","shusei":"禄存星","jusei":"天庫星","energy":5,"unsei":"墓","isTenchusatsu":false,"ijou":null,"hour":1,"range":"01:00〜02:59"},{"label":"寅(03:00〜04:59)","kanshi":"壬寅","shusei":"牽牛星","jusei":"天極星","energy":2,"unsei":"死","isTenchusatsu":false,"ijou":null,"hour":3,"range":"03:00〜04:59"},{"label":"卯(05:00〜06:59)","kanshi":"癸卯","shusei":"車騎星","jusei":"天胡星","energy":4,"unsei":"病","isTenchusatsu":false,"ijou":null,"hour":5,"range":"05:00〜06:59"},{"label":"辰(07:00〜08:59)","kanshi":"甲辰","shusei":"玉堂星","jusei":"天堂星","energy":8,"unsei":"衰","isTenchusatsu":false,"ijou":null,"hour":7,"range":"07:00〜08:59"}]
aisho)A=1984-10-10、B=1990-05-01、mode=general
{"kind":"同質","gogyo":{"a":"火","b":"火","relation":"比和(同じ五行)","same":true},"tenchusatsu":{"a":"申酉天中殺","b":"戌亥天中殺","same":false,"bInA":false,"aInB":false},"sharedStars":["鳳閣星","玉堂星","禄存星"],"shinkyo":{"a":"身弱","b":"身強"},"isou":{"日柱どうし":[],"月柱どうし":["冲"],"年柱どうし":["冲"]},"isouSummary":"冲","kango":false,"reading":["似た者同士。考え方が近く話が早い。ただし役割がかぶりやすく、同じ場面で競合しやすい","天中殺の重なりはなし","押す人と受ける人。役割が自然に分かれやすい","ぶつかりやすいが動きも生まれる。緊張感のある関係","「鳳閣星・玉堂星・禄存星」を2人とも持っているので、その面では話が通じやすい"],"detail":[["基本の関係","同じ五行どうし。感じ方も反応の速さも近いので、説明しなくても伝わる場面が多い。反面、得意も苦手も重なるため、どちらかが不得手なことは二人とも避けてしまいがち。第三者の視点を入れると穴が埋まる。"],["力の向き","相手のほうが押しが強い。飲まれやすいので、決める前に一度持ち帰る癖を付けると対等でいられる。"],["通じ合う所","「鳳閣星・玉堂星・禄存星」を二人とも持っている。この面では説明がいらないので、話の入口をここに置くと早い。"],["かみ合い方","支の関係はぶつかる側。摩擦が起きやすいが、そのぶん動きも生まれる。役割と責任の線をはっきりさせておくと、感情の問題になりにくい。 出ている関係は「冲」。"],["天中殺の関わり","天中殺の絡みはない。引力も反発も強くないので、関係の濃さは接し方でそのまま決まる、扱いやすい間柄。"]]}
A=1984-10-10、B=1990-05-01、mode=love
{"kind":"同質","gogyo":{"a":"火","b":"火","relation":"比和(同じ五行)","same":true},"tenchusatsu":{"a":"申酉天中殺","b":"戌亥天中殺","same":false,"bInA":false,"aInB":false},"sharedStars":["鳳閣星","玉堂星","禄存星"],"shinkyo":{"a":"身弱","b":"身強"},"isou":{"日柱どうし":[],"月柱どうし":["冲"],"年柱どうし":["冲"]},"isouSummary":"冲","kango":false,"reading":["似た者同士。考え方が近く話が早い。ただし役割がかぶりやすく、同じ場面で競合しやすい","価値観が近く一緒にいて楽。ただし似た弱点も重なるので、苦手なことを外に任せる工夫がいる","天中殺の重なりはなし","天中殺の絡みはない。過度な引力も反発もなく、落ち着いて進められる","押す人と受ける人。役割が自然に分かれやすい","ぶつかりやすいが動きも生まれる。緊張感のある関係","「鳳閣星・玉堂星・禄存星」を2人とも持っているので、その面では話が通じやすい"],"detail":[["惹かれ方","価値観も生活のテンポも近く、一緒にいて疲れない。似ているぶん新鮮さは薄いので、二人とも不得意なこと(金銭管理・人付き合いなど)が手つかずで残りやすい。そこだけ外に頼る形を作れると長い。"],["主導権とペース","相手のペースになりやすい。嫌なことを嫌と言えないと続かないので、小さいうちに言う練習を。"],["分かり合える所","「鳳閣星・玉堂星・禄存星」が共通。趣味や休日の過ごし方でこの面が出ると、一緒にいる時間が自然と増える。"],["ぶつかり方","支がぶつかる。惹かれるが揉めやすい典型で、同じ話題で何度も衝突する。冷めているのではなく、距離が近すぎると擦れる関係だと理解しておく。 出ている関係は「冲」。"],["長く続けるために","天中殺の絡みなし。劇的さはないが、そのぶん無理なく続けられる。日々の積み重ねがそのまま関係になる。"]]}
A=1975-03-15、B=1963-12-25、mode=general
{"kind":"育てる","gogyo":{"a":"金","b":"水","relation":"あなたが相手を生む(金生水)","same":false},"tenchusatsu":{"a":"子丑天中殺","b":"辰巳天中殺","same":false,"bInA":false,"aInB":false},"sharedStars":[],"shinkyo":{"a":"中庸","b":"中庸"},"isou":{"日柱どうし":["冲","刑"],"月柱どうし":["刑"],"年柱どうし":["比和"]},"isouSummary":"冲・刑・比和","kango":false,"reading":["あなたが相手に与える側。教える・任せる・引き上げると活きる。与えすぎると自分が消耗しやすい","天中殺の重なりはなし","どちらも押しが強い。担当領域を分けると衝突しにくい","ぶつかりやすいが動きも生まれる。緊張感のある関係。摩擦が起きやすい。役割と責任をはっきり決めておくとよい。同じ支どうし。共感しやすいが視点も重なる","持ち味が重ならないので、補い合う形になりやすい"],"detail":[["基本の関係","あなたの気が相手に流れていく関係。あなたが与え、相手が受け取る形が自然で、相手はあなたのそばで伸びやすい。ただし流れは一方通行なので、返ってくるものを期待しすぎると消耗する。"],["力の向き","どちらも押し返す力がある。ぶつかると長引くが、方向が揃えば進みは速い。譲る場面をあらかじめ決めておくと消耗しない。"],["通じ合う所","持ち味が重ならない。同じ話題でも見ている所が違うので、前提から言葉にすると通じる。噛み合わないのではなく、担当が違うと考えるとよい。"],["かみ合い方","支の関係はぶつかる側。摩擦が起きやすいが、そのぶん動きも生まれる。役割と責任の線をはっきりさせておくと、感情の問題になりにくい。 出ている関係は「冲・刑・比和」。"],["天中殺の関わり","天中殺の絡みはない。引力も反発も強くないので、関係の濃さは接し方でそのまま決まる、扱いやすい間柄。"]]}
A=1975-03-15、B=1963-12-25、mode=love
{"kind":"育てる","gogyo":{"a":"金","b":"水","relation":"あなたが相手を生む(金生水)","same":false},"tenchusatsu":{"a":"子丑天中殺","b":"辰巳天中殺","same":false,"bInA":false,"aInB":false},"sharedStars":[],"shinkyo":{"a":"中庸","b":"中庸"},"isou":{"日柱どうし":["冲","刑"],"月柱どうし":["刑"],"年柱どうし":["比和"]},"isouSummary":"冲・刑・比和","kango":false,"reading":["あなたが相手に与える側。教える・任せる・引き上げると活きる。与えすぎると自分が消耗しやすい","あなたが尽くす形になりやすい。相手の成長は早いが、無理をして与え続けると急に冷める","天中殺の重なりはなし","天中殺の絡みはない。過度な引力も反発もなく、落ち着いて進められる","どちらも押しが強い。担当領域を分けると衝突しにくい","ぶつかりやすいが動きも生まれる。緊張感のある関係。摩擦が起きやすい。役割と責任をはっきり決めておくとよい。同じ支どうし。共感しやすいが視点も重なる","持ち味が重ならないので、補い合う形になりやすい"],"detail":[["惹かれ方","あなたが与える側。世話を焼き、相手を引き上げる関係になりやすい。相手は伸びるが、あなたが無理を重ねるとある日ふっつり冷める。与える量を自分で決めておくこと。"],["主導権とペース","意地の張り合いになりやすい。どちらも折れないので、冷却期間の長さだけ先に決めておく(「一晩置く」など)と拗れない。"],["分かり合える所","感じ方の軸が違う。悪いことではなく、相手の反応を「そう来るのか」と面白がれるかどうかで続き方が変わる。察してもらう前提を捨てると楽になる。"],["ぶつかり方","支がぶつかる。惹かれるが揉めやすい典型で、同じ話題で何度も衝突する。冷めているのではなく、距離が近すぎると擦れる関係だと理解しておく。 出ている関係は「冲・刑・比和」。"],["長く続けるために","天中殺の絡みなし。劇的さはないが、そのぶん無理なく続けられる。日々の積み重ねがそのまま関係になる。"]]}
{"jdn":[[1901,1,1,2415386,"火"],[1948,7,20,2432753,"火"],[1984,10,10,2445984,"水"],[2000,1,1,2451545,"土"],[2000,2,29,2451604,"火"],[2026,10,5,2461319,"月"],[2100,12,31,2488434,"金"]],"fromJdn":[[2415386,[1901,1,1]],[2445983,[1984,10,9]],[2451545,[2000,1,1]],[2461319,[2026,10,5]],[2488069,[2099,12,31]]],"holiday2026":[["2026-01-01","元日"],["2026-01-12","成人の日"],["2026-02-11","建国記念の日"],["2026-02-23","天皇誕生日"],["2026-03-20","春分の日"],["2026-04-29","昭和の日"],["2026-05-03","憲法記念日"],["2026-05-04","みどりの日"],["2026-05-05","こどもの日"],["2026-05-06","憲法記念日 振替休日"],["2026-07-20","海の日"],["2026-08-11","山の日"],["2026-09-21","敬老の日"],["2026-09-22","国民の休日"],["2026-09-23","秋分の日"],["2026-10-12","スポーツの日"],["2026-11-03","文化の日"],["2026-11-23","勤労感謝の日"]],"moon2026":[["2026-01-03","19:03","満月"],["2026-01-19","04:52","新月"],["2026-02-02","07:09","満月"],["2026-02-17","21:01","新月"],["2026-03-03","20:38","満月"],["2026-03-19","10:23","新月"],["2026-04-02","11:12","満月"],["2026-04-17","20:52","新月"],["2026-05-02","02:23","満月"],["2026-05-17","05:01","新月"],["2026-05-31","17:45","満月"],["2026-06-15","11:54","新月"],["2026-06-30","08:57","満月"],["2026-07-14","18:43","新月"],["2026-07-29","23:36","満月"],["2026-08-13","02:37","新月"],["2026-08-28","13:18","満月"],["2026-09-11","12:27","新月"],["2026-09-27","01:49","満月"],["2026-10-11","00:50","新月"],["2026-10-26","13:12","満月"],["2026-11-09","16:02","新月"],["2026-11-24","23:53","満月"],["2026-12-09","09:52","新月"],["2026-12-24","10:28","満月"]],"holidayMisc":[["1948-07-19",null],["1948-07-20",null],["1948-11-03","文化の日"],["1950-01-01","元日"],["2019-05-01","天皇の即位の日"],["2020-07-23","海の日"],["2020-07-24","スポーツの日"],["2100-09-23","秋分の日"]]}
search/searchNearMiss){"cond":{"tenchusatsu":["子丑天中殺"]},"from":"2026-01-01","to":"2026-12-31","count":60,"first":["2026-02-09","2026-02-10","2026-02-11","2026-02-12","2026-02-13"],"last":["2026-12-13","2026-12-14","2026-12-15"],"near":{"count":305,"byMissing":{"天中殺":305},"first":["2026-01-01:天中殺","2026-01-02:天中殺","2026-01-03:天中殺"]}}
{"cond":{"nikkanGogyo":["火"],"nisshiGogyo":["木","水"]},"from":"2025-01-01","to":"2026-06-30","count":36,"first":["2025-01-07","2025-01-18","2025-02-26","2025-02-27","2025-03-08"],"last":["2026-05-13","2026-06-21","2026-06-22"],"near":{"count":217,"byMissing":{"日干の五行":145,"日支の五行":72},"first":["2025-01-06:日干の五行","2025-01-08:日支の五行","2025-01-09:日干の五行"]}}
{"cond":{"requireShusei":["鳳閣星","玉堂星"]},"from":"2024-01-01","to":"2026-12-31","count":252,"first":["2024-01-03","2024-01-08","2024-01-13","2024-01-18","2024-01-23"],"last":["2026-12-27","2026-12-30","2026-12-31"],"near":{"count":527,"byMissing":{"鳳閣星":258,"玉堂星":269},"first":["2024-01-01:鳳閣星","2024-01-04:鳳閣星","2024-01-07:鳳閣星"]}}
{"cond":{"requireJuseiAny":["天将星","天禄星"],"minEnergy":30},"from":"2020-01-01","to":"2030-12-31","count":215,"first":["2020-01-01","2020-01-10","2020-01-11","2020-01-12","2020-01-21"],"last":["2030-11-23","2030-11-24","2030-12-03"],"near":{"count":1472,"byMissing":{"エネルギー":1469,"従星":3},"first":["2020-01-04:エネルギー","2020-01-13:エネルギー","2020-01-15:エネルギー"]}}
{"cond":{"requireShusei":["禄存星"],"requireJuseiAny":["天南星"],"minEnergy":20,"tenchusatsu":["寅卯天中殺","申酉天中殺"]},"from":"2000-01-01","to":"2040-12-31","count":386,"first":["2000-01-26","2000-02-18","2000-03-18","2000-03-19","2000-04-18"],"last":["2040-10-20","2040-10-21","2040-11-21"],"near":{"count":2105,"byMissing":{"天中殺":765,"禄存星":521,"従星":691,"エネルギー":128},"first":["2000-01-05:天中殺","2000-01-06:天中殺","2000-01-16:天中殺"]}}
{"cond":{"requireShusei":["貫索星"],"robust":true},"from":"2026-01-01","to":"2027-12-31","count":305,"first":["2026-01-01","2026-01-02","2026-01-04","2026-01-05","2026-01-06"],"last":["2027-12-26","2027-12-29","2027-12-30"],"near":{"count":378,"byMissing":{"貫索星":378},"first":["2026-01-03:貫索星","2026-01-07:貫索星","2026-01-08:貫索星"]}}
{"cond":{"requireShusei":["司禄星","牽牛星"],"robust":true,"nikkanGogyo":["金"]},"from":"2000-01-01","to":"2030-12-31","count":246,"first":["2000-01-04","2000-01-23","2000-01-24","2000-02-02","2000-07-01"],"last":["2030-11-11","2030-11-21","2030-12-01"],"near":{"count":3038,"byMissing":{"日干の五行":1755,"牽牛星":679,"司禄星":604},"first":["2000-01-01:日干の五行","2000-01-03:牽牛星","2000-01-11:日干の五行"]}}
{"cond":{},"from":"2026-02-01","to":"2026-02-10","count":10,"first":["2026-02-01","2026-02-02","2026-02-03","2026-02-04","2026-02-05"],"last":["2026-02-08","2026-02-09","2026-02-10"],"near":{"count":0,"byMissing":{},"first":[]}}
{"cond":{"minEnergy":36},"from":"1901-01-01","to":"2100-12-31","count":54,"first":["1905-05-18","1905-05-30","1906-07-01","1917-05-15","1917-05-27"],"last":["2085-06-02","2092-12-17","2097-05-30"],"near":{"count":72995,"byMissing":{"エネルギー":72995},"first":["1901-01-01:エネルギー","1901-01-02:エネルギー","1901-01-03:エネルギー"]}}
{"cond":{"requireShusei":["龍高星"],"requireJuseiAny":["天胡星"],"minEnergy":10},"from":"1950-01-01","to":"2000-12-31","count":2635,"first":["1950-01-01","1950-02-01","1950-02-06","1950-02-07","1950-02-16"],"last":["2000-12-10","2000-12-13","2000-12-23"],"near":{"count":7645,"byMissing":{"従星":5856,"龍高星":1605,"エネルギー":184},"first":["1950-01-03:従星","1950-01-06:従星","1950-01-07:龍高星"]}}
参照実装(付録D)・データ表(付録A)・相性の詳細文(付録C.2)が手元にあれば、次のスクリプトで 3,333日ぶんのゴールデン(約25MB) を作り直せる。
node gen_golden.cjs <engine.js などが入ったフォルダ> <出力フォルダ>
# <フォルダ>/src/ に engine.js・aisho_detail.js・report_text.js・setsu_table.json・moon_table.json・holiday_table.json を置く
参照実装 engine.js の実際の出力を、言語に依らない形(JSON)に正規化したもの。
再実装した側は、同じ入力から自分の実装の出力を作り、値が一致するかを確かめる。
日付の標本の基本は 3,333 日(1901〜2100年)。①全期間を37日おき、②節入り日とその前後(7年おきの全12節)、
③立春の前日と当日(毎年)、④範囲の端と有名な日(1901-01-01、2100-12-31、うるう日など)。
ファイルによって、この標本の全部を使うもの・半分に間引くもの・別に追加の行を足すものがある(行数は下の表)。
| ファイル | 行の形 | 入力の作り方 → 比べる出力 |
|---|---|---|
meishiki.json |
{y,m,d,opts,meishiki} |
meishiki(y,m,d,opts) の正規化出力。opts は hour・zokanMonth・zokanYearDay・ijouSet が日ごとに変わる |
derived.json |
{y,m,d, opts?, suurihou, shinkyo, koudou, rokushin, sainou, teiichi, kichijitsu, isouInner, kyouiku, kyouikuSei, holiday} |
opts が無い行は既定の opts で、ある行({hour})はその出生時で命式を作る。各カテゴリの形は下の「derived.json の正規化後の形」 |
daiun.json |
{y,m,d,gender,ijouSet,direction,forward,startAge,daysToSetsu,rows:[{age,year,kanshi,shusei,jusei,energy,tenchusatsu,isDaiunTenchusatsu,ijou}]} / 落ちた日は {y,m,d,gender,error} |
daiun(y,m,d,gender,{count:12,ijouSet})。count・genderArg がある行は count と gender の書き方を変えたもの。error の行は比べない |
gyoun.json |
{birth,at,hour,opts?,tenchusatsu,shi,nikkan,moon,year,month,day,hourRow} |
birth・at は配列 [y,m,d]。hour(または null)は別キーで、at に足して渡す({y,m,d,hour})。opts({ijouSet:'7'})がある行はそれを gyoun の第3引数に渡す。hourRow は gyoun() の戻り値の hour(時運の行)のこと(入力の hour と名前がぶつかるので改名) |
gyoun_list.json |
{birth,unit,anchor,count?,now?,ijouSet?,extra?,rows:[…]} |
birth は配列 [y,m,d]、anchor・now は {y,m,d}。gyounList(birth, unit, anchor, {count, now, ijouSet})。count が無ければ 12、now が無ければ anchor と同じ |
aisho.json |
{a,b,mode,kind,gogyo,tenchusatsu,sharedStars,shinkyo,isou,isouSummary,kango,reading,detail} |
a・b は [y,m,d]。既定の opts の命式を作って aisho(meA, meB, mode) と buildAishoDetail(ai, mode)。mode は general・business・love・friend に加え、想定外の 'zzz' と null。shinkyo は {a:'身弱', b:'身強'} のようにラベルだけ。kindText は入っていない。detail は [{title,body}] |
search.json |
{cond,from,to,opts,count,first,last,firstZokan,zokanFirst20,stagesFirst,near} |
search(from,to,cond,opts) と searchNearMiss(from,to,cond,opts)。行ごとの opts を両方に同じ値で渡す。first・last は先頭5件・末尾3件の日付、firstZokan は {date, zokan:[年,月,日の採用蔵干]}(ヒットが無ければ null)、zokanFirst20 は先頭20件の採用蔵干を '年月日' の3文字に連結したもの、stagesFirst は先頭1件の3柱の stages。near は {count, byMissing, first} で、near.first は 'YYYY-MM-DD:欠け項目名' の文字列 |
missing.json |
{date,condIndex,cond,missing,matches} |
date は [y,m,d]。その日の既定 opts の命式 a について missing(a,cond)(欠けた項目名の並び)と matches(a,cond) |
calendar.json |
下の「calendar.json の中身」 |
暦まわり |
report_heads.json |
{y,m,d,gender,hour,opts?,extra?,sections:[{title,lead,heads,lens}],tekisei} |
a = meishiki(y,m,d, opts があれば opts、無ければ hour があれば {hour})、a.date = 'YYYY-MM-DD'(0詰め)、buildReport(a, gender, {})、gender は 'male'/'female'。lens(本文の長さ)は比べない。tekisei は matchTekisei(a) の 名前:score の文字列の並び |
fixed_text_hashes.json |
{engine:{名前:{sha256,form}}, aisho_detail:{…}, report_text:{…}} |
固定文・定数表の指紋(下の「固定文の指紋」) |
行数:
| ファイル | 行数 | 内訳 |
|---|---|---|
meishiki.json |
4431 | 通常 3333 + 2000年の総当たり 1098 |
derived.json |
1758 | 標本の半分 1667 + 追加 91(うち出生時つき 80) |
daiun.json |
3462 | 通常 3332 + 書き方違い 120 + 上端 10(うち error 4) |
gyoun.json |
1372 | |
gyoun_list.json |
363 | |
aisho.json |
2246 | |
search.json |
22 | |
missing.json |
60 | |
report_heads.json |
292 |
calendar.json の中身| キー | 形 | 作り方 |
|---|---|---|
jdn |
[[y,m,d, jdn(y,m,d), 曜日, fromJdn(jdn+100)]] |
§2.4 |
holiday |
[{year, list:[[ 'YYYY-MM-DD', 祝日名 ]]}] |
その年の 1/1〜12/31 の毎日に holiday() を呼び、null でないものを日付順に並べたもの |
moon |
[{year, list:[{date,time,kind}]}] |
moonPhases('年-01-01', '年-12-31') |
hasHolidayData |
[[年, 真偽]] |
§18.2 |
kichijitsu |
[[ 'YYYY-MM-DD', setsugetsu, good, bad ]] |
2026〜2028年の全日の kichijitsu(meishiki(日付)) |
tensha |
[[ 'YYYY-MM-DD', setsugetsu ]] |
2000〜2040年で good に 天赦日 が入る日(節月つき) |
moonWindows |
[{from,to,list}] |
moonPhases(from, to)。始端・終端がちょうど朔望の日になる窓、1日の窓、from > to の窓を含む |
derived.json の正規化後の形(参照実装の戻り値から作り替えてあるので注意)| カテゴリ | ゴールデン上の形 | 作り方 |
|---|---|---|
suurihou |
{byKan, byGogyo, total, genList} |
§8 の戻り値そのまま |
shinkyo |
{energy, strongCount, weakCount, hasTenshosei, label} |
§9 の戻り値そのまま |
koudou |
{nos, degs, area, ratio, unique, maxGap, label, spread, ryoiki} |
nos=3点の no、degs=3点の deg(柱の順・重複あり・並べ替えなし。§10 の中間変数 sortedDegs とは別物)、ryoiki=3点の領域名の配列、unique=種類数、area・ratio は小数6桁 |
rokushin |
7要素の配列そのもの [{key, ideal, real, level, star, where}] |
§11.6 の rows(self は入れない) |
sainou |
{kokusu, max, kata, un, talent} |
kokusu=list の各要素を [pos, star, kokusu] に直した配列(gogyo は落とす)。kokusuOrder は入れない |
teiichi |
{count, keys, spirit, real, rows} |
rows の各要素を [key, star, ok] に直す(label・line・gogyo・home・starGogyo は落とす) |
kichijitsu |
{setsugetsu, good, bad} |
all は入れない |
isouInner |
{'日柱+月柱':[…], '日柱+年柱':[…], '月柱+年柱':[…]} |
§7 の戻り値そのまま |
kyouiku |
{rows, count, onDay} |
rows の各要素を [pos, kanshi] に直す(note は落とす) |
kyouikuSei |
{insei, rosei, pairs, ok} |
pairs を key の文字列だけの配列に直す(name・note・denshou は落とす) |
holiday |
祝日名 または null |
§18.2 |
ゴールデンに入っているキーだけを比べる。参照実装の戻り値にあって、ゴールデンから落としてあるもの:
meishiki:gogyoVariety、stars.*.label/pos/source、jusei.*.label/sourcedaiun の各行:kan、shikichijitsu:allgyoun の年・月・日・時の行:label、kan、shigyoun_list の各行:kan、shi、year、month、day(label は残っている)aisho:kindTextreport_heads:lens(本文の長さ)fixed_text_hashes.json)写し間違いは、ほかのどのテストでも気づけないことがある(たとえば領域の説明文や教育の星の note は、どのゴールデンにも現れない)。
そこで、固定文・定数表の SHA-256 を載せた。表を書き写したら、同じ手順で指紋を作って一致を確かめる。
指紋 = SHA-256( UTF-8( JSON.stringify(表) ) )
・JSON は区切り文字なし(`{"a":1,"b":[2,3]}` の形)、日本語はエスケープしない
・キーの並びは原文のとおり
・関数(D_BOND の yes)は、'[星]' を渡した結果の文字列に置き換える
Python: hashlib.sha256(json.dumps(表, ensure_ascii=False, separators=(',', ':')).encode('utf-8')).hexdigest()
各エントリは {sha256, form}。form は、指紋を取った JSON の先頭110文字で、キーの名前・値の入れ子・並びが分かる。名前や形が違って一致しないときは、まず form を見て形を合わせる。
engine … 参照実装 engine.js のトップレベルの定数57個。KAN・SHI は原文では文字列だが、1文字ずつの配列に直した指紋。仕様書の擬似コードと形が違いやすいもの:INYO_KAN({"甲":1,"乙":0,…}、陽=1)、JU_MAP({"胎":["天報星",3],…} 配列値)、TENSHA([{"months":[1,2,3],"kanshi":"戊寅","season":"春"},…])、ZOKAN_TABLES({"kantei":ZOKAN_KANTEI,"A":ZOKAN_A})、WEEKDAY・SHUSEI_LIST・JUSEI_LIST(配列)、RYOIKI([{"no":1,"name":"第一領域","title":"守備安定","desc":"…"},…])aisho_detail … D_KIND・D_SK・D_BOND・D_FRICTION・D_TCS・D_TITLESreport_text … R_* の52個meishiki.json:2000年の366日×3設定(extra:'year2000')。蔵干の流派 A/本元/混在、出生時 0〜23 を巡らせて12コマの時柱を全部通し、異常干支7個説も混ぜてある。daiun.json:genderArg:true の行は gender の書き方違い('male'・1・'男'・'男性' は男、'female'・0・'女'・''・'x'・'MALE' はすべて女扱い)と count(3・12・20)の違い。edge:true の行は 2100-12 の境界(12-05・06 は順行でも動き、12-07 以降の男性は error)。gyoun.json:extra:true の行は異常干支7個説(opts:{ijouSet:'7'})。7個説の異常干支が必ず出る日も含む。gyoun_list.json:extra:true の行は、年運の頭打ち(1850→1901から、2095→2100まで)、2月の日運(うるう年を含む)、now が anchor と違う場合、異常干支7個説(ijouSet:'7')。search.json:maxHits を小さくした行(5・7)と既定のままの行(search 500・near 200 で頭打ちになる大きな検索)、robust で蔵干の4流派がそれぞれ効く条件、蔵干の流派を opts で渡す行(robust では無視される)、範囲外の年を含む期間(1900-12-25〜1901-01-05、2099-12-01〜2101-01-31)。aisho.json:mode が 'zzz'・null の行(間柄別の文が付かず、詳細は general)。extra:true の行は同じ日どうし・日柱が近い組。derived.json:六親法で同じ干が多くの席に載る日、教育の干支が3柱とも・定位置が5マスとも・剋数ベクトルが珍しい日、opts:{hour} つきの行(時柱が教育の干支になる場合を含む)。report_heads.json:extra:true の行は、まれな分岐(3柱の番号がすべて同じ 1902-01-18、時柱だけが教育の干支になる 1990-01-03/04、五行の量がしきい値ちょうどの 1912-05-15・1901-02-15、出生時 0・23、蔵干の流派違い・異常干支7個説)。この行は opts(hour を含む)を持つので、命式はその opts で作る。starSet、reading、sharedStars、talent、heads など)。null と空配列は区別する。area・ratio)は小数6桁で比べる。daiun.json の error 行は比べない。meishiki.json の meishiki が正規化済みの命式)。opts の意味hour(0〜23)/zokanMonth・zokanYearDay('kantei'・'A'・'hongen')/ijouSet('13'・'7')/maxHits(検索の打ち切り件数)。
gen_golden.cjs 全文// 正解データ(ゴールデン)を、参照実装 engine.js の実際の出力から作る。
// 再実装した側は、これと突き合わせて一致を確かめる。
const fs = require('fs'), vm = require('vm');
const ROOT = process.argv[2], OUT = process.argv[3];
const setsu = JSON.parse(fs.readFileSync(ROOT + '/src/setsu_table.json', 'utf8'));
const moon = JSON.parse(fs.readFileSync(ROOT + '/src/moon_table.json', 'utf8'));
const holi = JSON.parse(fs.readFileSync(ROOT + '/src/holiday_table.json', 'utf8'));
global.window = { HOLIDAY_TABLE: holi };
const S = require(ROOT + '/src/engine.js');
S.init(setsu, moon);
const I = S._internal;
const R = S.range();
// ---- 日付の標本 ----
const pad = (n) => String(n).padStart(2, '0');
const iso = (y, m, d) => y + '-' + pad(m) + '-' + pad(d);
const dates = [];
const seen = new Set();
const add = (y, m, d) => {
if (y < R.min || y > R.max) return;
const k = iso(y, m, d);
if (seen.has(k)) return;
// 実在しない日付は弾く
const [yy, mm, dd] = I.fromJdn(I.jdn(y, m, d));
if (yy !== y || mm !== m || dd !== d) return;
seen.add(k); dates.push([y, m, d]);
};
// ① 全期間を等間隔に(37日おき)
for (let j = I.jdn(R.min, 1, 1); j <= I.jdn(R.max, 12, 31); j += 37) { const [y, m, d] = I.fromJdn(j); add(y, m, d); }
// ② 節入り日とその前後(7年おきの全12節)
for (let y = R.min; y <= R.max; y += 7) {
for (let i = 0; i < 12; i++) {
const day = setsu[String(y)][i][0];
for (const off of [-1, 0, 1]) { const [yy, mm, dd] = I.fromJdn(I.jdn(y, i + 1, day) + off); add(yy, mm, dd); }
}
}
// ③ 立春前後は毎年(年の切り替わり)
for (let y = R.min; y <= R.max; y++) {
const day = setsu[String(y)][1][0];
for (const off of [-1, 0]) { const [yy, mm, dd] = I.fromJdn(I.jdn(y, 2, day) + off); add(yy, mm, dd); }
}
// ④ 端と有名な日
for (const [y, m, d] of [[1901, 1, 1], [1901, 1, 5], [2000, 1, 1], [2000, 2, 29], [1984, 10, 10], [1990, 5, 1], [2026, 8, 13],
[2100, 12, 7], [2100, 12, 31], [2100, 1, 1], [1904, 2, 29], [2096, 2, 29]]) add(y, m, d);
dates.sort((a, b) => I.jdn(...a) - I.jdn(...b));
// ---- 正規化(言語に依らない形) ----
const canon = (a) => ({
date: a.date, weekday: a.weekday,
setsu: { name: a.setsu.name, jst: a.setsu.jst, keika: a.setsu.keika, isSetsuiriDay: a.setsu.isSetsuiriDay },
pillars: Object.fromEntries(['year', 'month', 'day'].map((k) => [k, {
kan: a.pillars[k].kan, shi: a.pillars[k].shi, kanshi: a.pillars[k].kanshi, zokan: a.pillars[k].zokan,
no: a.pillars[k].no, stages: a.pillars[k].stages,
}])),
stars: Object.fromEntries(Object.entries(a.stars).map(([k, v]) => [k, { kan: v.kan, star: v.star }])),
starSet: a.starSet,
jusei: Object.fromEntries(Object.entries(a.jusei).map(([k, v]) => [k, { shi: v.shi, name: v.name, energy: v.energy, unsei: v.unsei }])),
juseiSet: a.juseiSet, totalEnergy: a.totalEnergy,
gogyoDist: a.gogyoDist, tenchusatsu: a.tenchusatsu, tenchusatsuShi: a.tenchusatsuShi, tenchusatsuYear: a.tenchusatsuYear,
ijou: a.ijou, nikkanGogyo: a.nikkanGogyo, nisshiGogyo: a.nisshiGogyo, moon: a.moon,
hourPillar: a.hourPillar && {
kan: a.hourPillar.kan, shi: a.hourPillar.shi, kanshi: a.hourPillar.kanshi, zokan: a.hourPillar.zokan,
no: a.hourPillar.no, ijou: a.hourPillar.ijou, jusei: a.hourPillar.jusei, shusei: a.hourPillar.shusei,
shiIndex: a.hourPillar.shiIndex, stages: a.hourPillar.stages,
},
});
const cases = [];
dates.forEach(([y, m, d], i) => {
const opts = {};
if (i % 3 === 0) opts.hour = (i * 7) % 24;
const v = i % 5;
if (v === 1) { opts.zokanMonth = 'A'; opts.zokanYearDay = 'A'; }
else if (v === 2) { opts.zokanMonth = 'hongen'; opts.zokanYearDay = 'hongen'; }
else if (v === 3) { opts.zokanMonth = 'kantei'; opts.zokanYearDay = 'hongen'; }
if (i % 4 === 3) opts.ijouSet = '7';
const a = S.meishiki(y, m, d, opts);
cases.push({ y, m, d, opts, meishiki: canon(a) });
});
// ---- 追加:2000年の全日(うるう年)で、蔵干の流派×出生時×異常干支の説を総当たりに近い形で振る ----
// 蔵干の区分の境界(節入りからの日数)と、時柱の12コマ(丑・辰・未・戌を含む)をすべて通すためのもの
{
const j0 = I.jdn(2000, 1, 1), j1 = I.jdn(2000, 12, 31);
for (let j = j0; j <= j1; j++) {
const [y, m, d] = I.fromJdn(j);
const i = j - j0;
const variants = [
{ zokanMonth: 'A', zokanYearDay: 'A', hour: i % 24 },
{ zokanMonth: 'hongen', zokanYearDay: 'hongen', hour: (i + 7) % 24 },
{ zokanMonth: 'kantei', zokanYearDay: 'A', hour: (i + 13) % 24, ijouSet: '7' },
];
for (const opts of variants) cases.push({ y, m, d, opts, meishiki: canon(S.meishiki(y, m, d, opts)), extra: 'year2000' });
}
}
fs.writeFileSync(OUT + '/meishiki.json', JSON.stringify(cases));
// ---- 派生(既定の流派で)----
const rnd = (x, n) => Math.round(x * Math.pow(10, n)) / Math.pow(10, n);
const deriveOne = (y, m, d, opts) => {
const a = S.meishiki(y, m, d, opts);
a.date = iso(y, m, d);
const su = S.suurihou(0, 0, 0, { meishiki: a });
const sk = S.shinkyo(a);
const kd = S.koudouRyoiki(a);
const rk = S.rokushin(a);
const sa = S.sainou(a);
const te = S.teiichi(a);
const ki = S.kichijitsu(a);
const ky = S.kyouiku(a), ks = S.kyouikuSei(a);
const out = {
y, m, d,
suurihou: { byKan: su.byKan, byGogyo: su.byGogyo, total: su.total, genList: su.genList },
shinkyo: sk,
koudou: { nos: kd.points.map((p) => p.no), degs: kd.points.map((p) => p.deg), ratio: rnd(kd.ratio, 6), area: rnd(kd.area, 6),
unique: kd.unique, maxGap: kd.maxGap, label: kd.label, spread: kd.spread, ryoiki: kd.points.map((p) => p.ryoiki.name) },
rokushin: rk.rows.map((r) => ({ key: r.key, ideal: r.ideal, real: r.real, level: r.level, star: r.star, where: r.where })),
sainou: { kokusu: sa.list.map((r) => [r.pos, r.star, r.kokusu]), max: sa.max, kata: sa.kata, un: sa.un, talent: sa.talent },
teiichi: { count: te.count, keys: te.keys, spirit: te.spirit, real: te.real, rows: te.rows.map((r) => [r.key, r.star, r.ok]) },
kichijitsu: { setsugetsu: ki.setsugetsu, good: ki.good, bad: ki.bad },
isouInner: S.isouInner(a),
kyouiku: { rows: ky.rows.map((r) => [r.pos, r.kanshi]), count: ky.count, onDay: ky.onDay },
kyouikuSei: { insei: ks.insei, rosei: ks.rosei, pairs: ks.pairs.map((p) => p.key), ok: ks.ok },
holiday: S.holiday(y, m, d),
};
if (opts && Object.keys(opts).length) out.opts = opts;
return out;
};
const derived = [];
dates.forEach(([y, m, d], i) => {
if (i % 2) return; // 半分に間引く(量が多いので)
derived.push(deriveOne(y, m, d, {}));
});
// ---- 追加:六親法で同じ干が多くの席に載る日、教育の干支が3柱とも、定位置が5マスとも、剋数ベクトルの珍しい形 ----
for (const [y, m, d] of [[1902, 1, 18], [1902, 1, 26], [1902, 1, 27], [1902, 1, 30], [1907, 7, 8], [1907, 7, 12], [1907, 7, 21], [1922, 1, 9], [1905, 1, 30], [1913, 7, 31], [1903, 4, 26]]) derived.push(deriveOne(y, m, d, {}));
// ---- 追加:時柱つき(時柱が教育の干支になる場合を含む)と、教育の干支が三柱に出る日 ----
{
const KY = ['甲戌', '己未', '癸丑'];
let nHour = 0, nPillar = 0, n = 0;
for (let j = I.jdn(2000, 1, 1); j < I.jdn(2012, 1, 1) && (nHour < 40 || nPillar < 40); j++) {
const [y, m, d] = I.fromJdn(j);
const base = S.meishiki(y, m, d);
const onP = ['year', 'month', 'day'].some((k) => KY.includes(base.pillars[k].kanshi));
for (let h = 0; h < 24; h += 1) {
const a = S.meishiki(y, m, d, { hour: h });
if (nHour < 40 && KY.includes(a.hourPillar.kanshi)) { derived.push(deriveOne(y, m, d, { hour: h })); nHour++; break; }
}
if (nPillar < 40 && onP) { derived.push(deriveOne(y, m, d, { hour: (j * 5) % 24 })); nPillar++; }
n++;
}
}
fs.writeFileSync(OUT + '/derived.json', JSON.stringify(derived));
// ---- 大運(男女)----
const daiun = [];
dates.forEach(([y, m, d], i) => {
if (i % 2 === 0) return;
for (const g of ['male', 'female']) {
let du;
try { du = S.daiun(y, m, d, g, { count: 12, ijouSet: i % 4 === 3 ? '7' : '13' }); }
catch (e) { daiun.push({ y, m, d, gender: g, error: String(e.message).slice(0, 60) }); continue; }
daiun.push({ y, m, d, gender: g, ijouSet: i % 4 === 3 ? '7' : '13', direction: du.direction, forward: du.forward, startAge: du.startAge, daysToSetsu: du.daysToSetsu,
rows: du.rows.map((r) => ({ age: r.age, year: r.year, kanshi: r.kanshi, shusei: r.shusei, jusei: r.jusei, energy: r.energy,
tenchusatsu: r.tenchusatsu, isDaiunTenchusatsu: r.isDaiunTenchusatsu, ijou: r.ijou })) });
}
});
// ---- 追加:gender の書き方('male'・1・'男'・'男性' は男、それ以外はすべて女)と count の違い ----
for (const [y, m, d] of [[1984, 10, 10], [2000, 2, 29], [1963, 12, 25], [1990, 5, 1]]) {
for (const g of ['male', 1, '男', '男性', 'female', 0, '女', '', 'x', 'MALE']) {
for (const count of [12, 3, 20]) {
const du = S.daiun(y, m, d, g, { count });
daiun.push({ y, m, d, gender: g, count, genderArg: true, ijouSet: '13', direction: du.direction, forward: du.forward, startAge: du.startAge, daysToSetsu: du.daysToSetsu,
rows: du.rows.map((r) => ({ age: r.age, year: r.year, kanshi: r.kanshi, shusei: r.shusei, jusei: r.jusei, energy: r.energy,
tenchusatsu: r.tenchusatsu, isDaiunTenchusatsu: r.isDaiunTenchusatsu, ijou: r.ijou })) });
}
}
}
// ---- 追加:範囲の上端(2100-12-06 は順行でも動き、12-07 以降の順行は落ちる)----
for (const [y, m, d] of [[2100, 12, 5], [2100, 12, 6], [2100, 12, 7], [2100, 12, 8], [2100, 12, 31]]) {
for (const g of ['male', 'female']) {
let du;
try { du = S.daiun(y, m, d, g, { count: 12 }); } catch (e) { daiun.push({ y, m, d, gender: g, edge: true, error: String(e.message).slice(0, 60) }); continue; }
daiun.push({ y, m, d, gender: g, edge: true, ijouSet: '13', direction: du.direction, forward: du.forward, startAge: du.startAge, daysToSetsu: du.daysToSetsu,
rows: du.rows.map((r) => ({ age: r.age, year: r.year, kanshi: r.kanshi, shusei: r.shusei, jusei: r.jusei, energy: r.energy,
tenchusatsu: r.tenchusatsu, isDaiunTenchusatsu: r.isDaiunTenchusatsu, ijou: r.ijou })) });
}
}
fs.writeFileSync(OUT + '/daiun.json', JSON.stringify(daiun));
// ---- 行運 ----
const gyoun = [];
for (let i = 0; i < dates.length; i += 3) {
const [y, m, d] = dates[i];
const j = I.jdn(y, m, d) + ((i * 131) % 9000) + 1;
const [ay, am, ad] = I.fromJdn(j);
if (ay > R.max) continue;
const hour = (i % 2 === 0) ? (i * 5) % 24 : undefined;
const g = S.gyoun({ y, m, d }, { y: ay, m: am, d: ad, hour });
const rowc = (r) => r && { kanshi: r.kanshi, shusei: r.shusei, jusei: r.jusei, energy: r.energy, unsei: r.unsei, isTenchusatsu: r.isTenchusatsu, ijou: r.ijou };
gyoun.push({ birth: [y, m, d], at: [ay, am, ad], hour: hour == null ? null : hour,
tenchusatsu: g.tenchusatsu, shi: g.shi, nikkan: g.nikkan, moon: g.moon,
year: rowc(g.year), month: rowc(g.month), day: rowc(g.day), hourRow: rowc(g.hour) });
}
// ---- 追加:異常干支7個説(opts.ijouSet)つきの行運。行運の ijou が opts に従うことを通す ----
{
const rowc = (r) => r && { kanshi: r.kanshi, shusei: r.shusei, jusei: r.jusei, energy: r.energy, unsei: r.unsei, isTenchusatsu: r.isTenchusatsu, ijou: r.ijou };
for (let i = 0; i < dates.length; i += 11) {
const [y, m, d] = dates[i];
const j = I.jdn(y, m, d) + ((i * 71) % 7000) + 1;
const [ay, am, ad] = I.fromJdn(j);
if (ay > R.max) continue;
const hour = (i % 2 === 0) ? (i * 7) % 24 : undefined;
const opts = { ijouSet: '7' };
const g = S.gyoun({ y, m, d }, { y: ay, m: am, d: ad, hour }, opts);
gyoun.push({ birth: [y, m, d], at: [ay, am, ad], hour: hour == null ? null : hour, opts, extra: true,
tenchusatsu: g.tenchusatsu, shi: g.shi, nikkan: g.nikkan, moon: g.moon,
year: rowc(g.year), month: rowc(g.month), day: rowc(g.day), hourRow: rowc(g.hour) });
}
// 7個説の異常干支が必ず出る日(甲午・丁亥・戊子・己亥・辛巳・壬午・癸巳)を巡らせる
let n7 = 0;
for (let j = I.jdn(2000, 1, 1); j < I.jdn(2003, 1, 1) && n7 < 40; j += 1) {
const [ay, am, ad] = I.fromJdn(j);
const t = S.meishiki(ay, am, ad);
if (!['甲午', '丁亥', '戊子', '己亥', '辛巳', '壬午', '癸巳'].includes(t.pillars.day.kanshi)) continue;
const opts = { ijouSet: '7' };
const g = S.gyoun({ y: 1984, m: 10, d: 10 }, { y: ay, m: am, d: ad, hour: (n7 * 5) % 24 }, opts);
gyoun.push({ birth: [1984, 10, 10], at: [ay, am, ad], hour: (n7 * 5) % 24, opts, extra: true,
tenchusatsu: g.tenchusatsu, shi: g.shi, nikkan: g.nikkan, moon: g.moon,
year: rowc(g.year), month: rowc(g.month), day: rowc(g.day), hourRow: rowc(g.hour) });
n7++;
}
}
fs.writeFileSync(OUT + '/gyoun.json', JSON.stringify(gyoun));
const gyounList = [];
for (let i = 0; i < dates.length; i += 40) {
const [y, m, d] = dates[i];
const anchorY = Math.min(R.max - 12, Math.max(R.min, y + 20 + (i % 30)));
for (const unit of ['year', 'month', 'day', 'hour']) {
const anchor = { y: anchorY, m: (i % 12) + 1, d: (i % 28) + 1 };
const L = S.gyounList({ y, m, d }, unit, anchor, { count: 12, now: { y: anchorY, m: anchor.m, d: anchor.d } });
gyounList.push({ birth: [y, m, d], unit, anchor, rows: L.rows.map((r) => ({
label: r.label, kanshi: r.kanshi, shusei: r.shusei, jusei: r.jusei, energy: r.energy, unsei: r.unsei,
isTenchusatsu: r.isTenchusatsu, ijou: r.ijou, isNow: r.isNow, age: r.age, kichi: r.kichi, kyou: r.kyou, holiday: r.holiday,
moon: r.moon, hour: r.hour, range: r.range })) });
}
}
// ---- 追加:年運の頭打ち(1901/2100)、2月の日運(うるう年を含む)、now ≠ anchor、count の違い ----
{
const rowc = (r) => ({ label: r.label, kanshi: r.kanshi, shusei: r.shusei, jusei: r.jusei, energy: r.energy, unsei: r.unsei,
isTenchusatsu: r.isTenchusatsu, ijou: r.ijou, isNow: r.isNow, age: r.age, kichi: r.kichi, kyou: r.kyou, holiday: r.holiday,
moon: r.moon, hour: r.hour, range: r.range });
const add = (birth, unit, anchor, opts) => {
const L = S.gyounList({ y: birth[0], m: birth[1], d: birth[2] }, unit, anchor, opts);
gyounList.push({ birth, unit, anchor, count: opts.count, now: opts.now, ijouSet: opts.ijouSet, extra: true, rows: L.rows.map(rowc) });
};
const B = [1984, 10, 10], B2 = [1963, 12, 25];
add(B, 'year', { y: 1850, m: 1, d: 1 }, { count: 12 }); // 下端で頭打ち(1901から)
add(B, 'year', { y: 2095, m: 1, d: 1 }, { count: 12 }); // 上端で頭打ち(2100まで)
add(B, 'year', { y: 2100, m: 1, d: 1 }, { count: 12 });
add(B, 'year', { y: 1901, m: 1, d: 1 }, { count: 3 });
add(B2, 'year', { y: 2020, m: 1, d: 1 }, { count: 7, now: { y: 2024, m: 5, d: 5 } }); // now が anchor と違う
add(B, 'month', { y: 2026, m: 1, d: 1 }, { now: { y: 2026, m: 10, d: 5 } });
add(B, 'month', { y: 2026, m: 1, d: 1 }, { now: { y: 2027, m: 3, d: 5 } }); // 年が違えば isNow は無い
for (const [yy, mm] of [[2024, 2], [2023, 2], [2100, 2], [1904, 2], [2000, 2], [2026, 1], [2026, 4]]) {
add(B, 'day', { y: yy, m: mm, d: 1 }, {});
add(B2, 'day', { y: yy, m: mm, d: 15 }, { now: { y: yy, m: mm, d: 20 } });
}
for (const unit of ['year', 'month', 'day', 'hour']) add(B, unit, { y: 2026, m: 10, d: 5 }, { ijouSet: '7' });
add(B, 'hour', { y: 2026, m: 10, d: 5 }, {});
add(B2, 'hour', { y: 2000, m: 2, d: 29 }, {});
}
fs.writeFileSync(OUT + '/gyoun_list.json', JSON.stringify(gyounList));
// ---- 相性(読み方の文章まで)----
const ctx = { SANMEI: S, console };
vm.createContext(ctx);
vm.runInContext(fs.readFileSync(ROOT + '/src/aisho_detail.js', 'utf8') + '\nthis.buildAishoDetail=buildAishoDetail;', ctx);
const aisho = [];
for (let i = 0; i + 1 < dates.length; i += 9) {
const A = dates[i], B = dates[(i * 7 + 3) % dates.length];
const ma = S.meishiki(...A), mb = S.meishiki(...B);
for (const mode of ['general', 'business', 'love', 'friend', 'zzz', null]) { // zzz・null は想定外の mode(間柄別の文は付かず、詳細は general)
const ai = S.aisho(ma, mb, mode);
aisho.push({ a: A, b: B, mode, kind: ai.kind, gogyo: ai.gogyo, tenchusatsu: ai.tenchusatsu, sharedStars: ai.sharedStars,
shinkyo: { a: ai.shinkyo.a.label, b: ai.shinkyo.b.label }, isou: ai.isou, isouSummary: ai.isouSummary, kango: ai.kango,
reading: ai.reading,
detail: ctx.buildAishoDetail(ai, mode) });
}
}
// ---- 追加:同じ日どうし・同じ日柱どうし・干合の組 ----
for (const [A, B] of [[[1984, 10, 10], [1984, 10, 10]], [[2000, 2, 29], [2000, 2, 29]], [[1990, 5, 1], [1990, 5, 1]],
[[1984, 10, 10], [1984, 10, 22]], [[1975, 3, 15], [1975, 3, 20]]]) {
const ma = S.meishiki(...A), mb = S.meishiki(...B);
for (const mode of ['general', 'business', 'love', 'friend']) {
const ai = S.aisho(ma, mb, mode);
aisho.push({ a: A, b: B, mode, kind: ai.kind, gogyo: ai.gogyo, tenchusatsu: ai.tenchusatsu, sharedStars: ai.sharedStars,
shinkyo: { a: ai.shinkyo.a.label, b: ai.shinkyo.b.label }, isou: ai.isou, isouSummary: ai.isouSummary, kango: ai.kango,
reading: ai.reading, detail: ctx.buildAishoDetail(ai, mode), extra: true });
}
}
fs.writeFileSync(OUT + '/aisho.json', JSON.stringify(aisho));
// ---- 検索 ----
const searches = [];
const conds = [
[{ tenchusatsu: ['子丑天中殺'] }, '2026-01-01', '2026-12-31'],
[{ nikkanGogyo: ['火'], nisshiGogyo: ['木', '水'] }, '2025-01-01', '2026-06-30'],
[{ requireShusei: ['鳳閣星', '玉堂星'] }, '2024-01-01', '2026-12-31'],
[{ requireJuseiAny: ['天将星', '天禄星'], minEnergy: 30 }, '2020-01-01', '2030-12-31'],
[{ requireShusei: ['禄存星'], requireJuseiAny: ['天南星'], minEnergy: 20, tenchusatsu: ['寅卯天中殺', '申酉天中殺'] }, '2000-01-01', '2040-12-31'],
[{ requireShusei: ['貫索星'], robust: true }, '2026-01-01', '2027-12-31'],
[{ requireShusei: ['司禄星', '牽牛星'], robust: true, nikkanGogyo: ['金'] }, '2000-01-01', '2030-12-31'],
[{}, '2026-02-01', '2026-02-10'],
[{ minEnergy: 36 }, '1901-01-01', '2100-12-31'],
[{ requireShusei: ['龍高星'], requireJuseiAny: ['天胡星'], minEnergy: 10 }, '1950-01-01', '2000-12-31'],
];
// 追加:robust の4流派がそれぞれ効く条件、範囲外の年のスキップ、maxHits での打ち切り(search 5・near 5)
conds.push([{ requireShusei: ['貫索星'], robust: true }, '2000-01-01', '2030-12-31']);
conds.push([{}, '1900-12-25', '1901-01-05']);
conds.push([{ requireShusei: ['車騎星'], minEnergy: 30 }, '2099-12-01', '2101-01-31']);
const searchOpts = conds.map(() => ({ maxHits: 100000 }));
conds.push([{}, '2026-02-01', '2026-02-10']); searchOpts.push({ maxHits: 5 });
conds.push([{ nikkanGogyo: ['木'] }, '2026-01-01', '2026-12-31']); searchOpts.push({ maxHits: 7 });
// 蔵干の流派を opts で渡す(robust でない検索は opts の流派 1 通りで判定する)
conds.push([{ requireShusei: ['貫索星'] }, '2000-01-01', '2004-12-31']); searchOpts.push({ maxHits: 100000, zokanMonth: 'A', zokanYearDay: 'A' });
conds.push([{ requireShusei: ['貫索星'] }, '2000-01-01', '2004-12-31']); searchOpts.push({ maxHits: 100000, zokanMonth: 'hongen', zokanYearDay: 'hongen' });
conds.push([{ requireShusei: ['貫索星'] }, '2000-01-01', '2004-12-31']); searchOpts.push({ maxHits: 100000, zokanMonth: 'kantei', zokanYearDay: 'hongen' });
conds.push([{ requireShusei: ['貫索星'], robust: true }, '2000-01-01', '2004-12-31']); searchOpts.push({ maxHits: 100000, zokanMonth: 'A', zokanYearDay: 'A' }); // robust では opts の流派は無視される
// 既定の maxHits(search 500・near 200)に届く大きな検索
conds.push([{ minEnergy: 10 }, '2000-01-01', '2030-12-31']); searchOpts.push({});
conds.push([{ requireShusei: ['石門星'], robust: true }, '1990-01-01', '2030-12-31']); searchOpts.push({});
conds.push([{ requireShusei: ['鳳閣星', '玉堂星'] }, '2024-01-01', '2026-12-31']); searchOpts.push({}); // 既定(search 500・near 200)
conds.forEach(([c, f, t], i) => {
const o = searchOpts[i];
const hits = S.search(f, t, c, o);
const nm = S.searchNearMiss(f, t, c, o);
const cnt = {}; nm.forEach((x) => { cnt[x.missing] = (cnt[x.missing] || 0) + 1; });
searches.push({ cond: c, from: f, to: t, opts: o, count: hits.length, first: hits.slice(0, 5).map((a) => a.date), last: hits.slice(-3).map((a) => a.date),
firstZokan: hits.length ? { date: hits[0].date, zokan: ['year', 'month', 'day'].map((k) => hits[0].pillars[k].zokan) } : null,
zokanFirst20: hits.slice(0, 20).map((h) => ['year', 'month', 'day'].map((k) => h.pillars[k].zokan).join('')), // 先頭20件の採用蔵干(年・月・日の順に連結)
stagesFirst: hits.length ? ['year', 'month', 'day'].map((k) => hits[0].pillars[k].stages) : null,
near: { count: nm.length, byMissing: cnt, first: nm.slice(0, 3).map((x) => x.meishiki.date + ':' + x.missing) } });
});
fs.writeFileSync(OUT + '/search.json', JSON.stringify(searches));
// ---- missing(a, cond) を直接比べる(欠けた項目の並び)----
{
const mcs = [];
const mc = [
{ requireShusei: ['鳳閣星', '玉堂星', '禄存星'], requireJuseiAny: ['天南星'], minEnergy: 36, tenchusatsu: ['子丑天中殺'], nikkanGogyo: ['木'], nisshiGogyo: ['火'] },
{ tenchusatsu: ['寅卯天中殺'], nikkanGogyo: ['水'], requireShusei: ['貫索星'] },
{ requireJuseiAny: ['天将星'], minEnergy: 30 },
{ requireShusei: ['龍高星', '調舒星'] },
{},
];
dates.forEach(([y, m, d], i) => {
if (i % 300) return;
const a = S.meishiki(y, m, d);
mc.forEach((c, k) => mcs.push({ date: [y, m, d], condIndex: k, cond: c, missing: S.missing(a, c), matches: S.matches(a, c) }));
});
fs.writeFileSync(OUT + '/missing.json', JSON.stringify(mcs));
}
// ---- 暦のみ(JDN・曜日・祝日・月相)----
const calendar = { jdn: [], holiday: [], moon: [] };
for (let i = 0; i < 400; i++) {
const y = 1901 + (i * 37) % 200, m = 1 + (i * 5) % 12, d = 1 + (i * 11) % 28;
const j = I.jdn(y, m, d);
calendar.jdn.push([y, m, d, j, I.weekday(y, m, d), I.fromJdn(j + 100)]);
}
for (const y of [1948, 1989, 2000, 2019, 2020, 2022, 2026, 2027, 2050, 2099]) {
const list = [];
for (let j = I.jdn(y, 1, 1); j <= I.jdn(y, 12, 31); j++) { const [yy, mm, dd] = I.fromJdn(j); const h = S.holiday(yy, mm, dd); if (h) list.push([iso(yy, mm, dd), h]); }
calendar.holiday.push({ year: y, list });
}
for (const y of [1901, 1984, 2000, 2026, 2100]) calendar.moon.push({ year: y, list: S.moonPhases(y + '-01-01', y + '-12-31') });
calendar.hasHolidayData = [1900, 1947, 1948, 1949, 2026, 2100, 2101].map((y) => [y, S.hasHolidayData(y)]);
// 吉日・凶日:2026〜2028年の全日(天赦日・一粒万倍日・寅の日・巳の日・己巳の日・三隣亡。全12節月と天赦日の4季を通す)
calendar.kichijitsu = [];
for (let j = I.jdn(2026, 1, 1); j <= I.jdn(2028, 12, 31); j++) {
const [yy, mm, dd] = I.fromJdn(j);
const k = S.kichijitsu(S.meishiki(yy, mm, dd));
calendar.kichijitsu.push([iso(yy, mm, dd), k.setsugetsu, k.good, k.bad]);
}
// 天赦日が全4季で出る年も通す(節月10〜12の冬を含む)
calendar.tensha = [];
for (let j = I.jdn(2000, 1, 1); j <= I.jdn(2040, 12, 31); j++) {
const [yy, mm, dd] = I.fromJdn(j);
const k = S.kichijitsu(S.meishiki(yy, mm, dd));
if (k.good.includes('天赦日')) calendar.tensha.push([iso(yy, mm, dd), k.setsugetsu]);
}
// 月相の窓:始端・終端がちょうど朔望の日になる窓、1日だけの窓、朔望の無い窓
calendar.moonWindows = [['2026-01-03', '2026-01-31'], ['2026-01-02', '2026-01-03'], ['2026-01-03', '2026-01-03'], ['2026-01-04', '2026-01-17'],
['2026-01-18', '2026-01-18'], ['2026-01-19', '2026-01-19'], ['1901-01-01', '1901-03-01'], ['2100-11-01', '2100-12-31'], ['2026-03-01', '2026-02-01']]
.map(([f, t]) => ({ from: f, to: t, list: S.moonPhases(f, t) }));
fs.writeFileSync(OUT + '/calendar.json', JSON.stringify(calendar));
// ---- レポートの見出し(本文は固定文なので、組み立ての条件だけ見る)----
const rc = { SANMEI: S, console };
vm.createContext(rc);
const rsrc = fs.readFileSync(ROOT + '/src/report_text.js', 'utf8');
vm.runInContext(rsrc + '\nthis.buildReport=buildReport;this.matchTekisei=matchTekisei;', rc);
const reports = [];
for (let i = 0; i < dates.length; i += 25) {
const [y, m, d] = dates[i];
for (const g of ['male', 'female']) {
const a = S.meishiki(y, m, d, i % 2 ? { hour: (i * 3) % 24 } : {});
a.date = iso(y, m, d); a.gender = g;
const rep = rc.buildReport(a, g, {});
reports.push({ y, m, d, gender: g, hour: i % 2 ? (i * 3) % 24 : null,
sections: rep.map((s) => ({ title: s.title, lead: s.lead, heads: s.items.map((it) => it.h), lens: s.items.map((it) => it.body.length) })),
tekisei: rc.matchTekisei(a).map((t) => t.name + ':' + t.score) });
}
}
// ---- 追加:まれな分岐(3柱が同じ支・時柱だけが教育の干支・五行のしきい値ちょうど・出生時0と23・流派違い)----
for (const [y, m, d, opts] of [
[1902, 1, 18, {}], [1902, 1, 18, { hour: 5 }], // 3柱の番号がすべて同じ(unique==1)
[1990, 1, 3, { hour: 1 }], [1990, 1, 3, { hour: 13 }], [1990, 1, 4, { hour: 19 }], // 時柱だけが癸丑・己未・甲戌
[1912, 5, 15, {}], [1901, 2, 15, {}], // 五行の量がしきい値ちょうど
[1984, 10, 10, { hour: 0 }], [1984, 10, 10, { hour: 23 }],
[1984, 10, 10, { zokanMonth: 'A', zokanYearDay: 'A', ijouSet: '7' }],
[2000, 2, 29, { hour: 23, zokanMonth: 'hongen', zokanYearDay: 'hongen' }],
[2100, 6, 19, {}],
]) {
for (const g of ['male', 'female']) {
const a = S.meishiki(y, m, d, opts);
a.date = iso(y, m, d); a.gender = g;
const rep = rc.buildReport(a, g, {});
reports.push({ y, m, d, gender: g, hour: opts.hour == null ? null : opts.hour, opts, extra: true,
sections: rep.map((s) => ({ title: s.title, lead: s.lead, heads: s.items.map((it) => it.h), lens: s.items.map((it) => it.body.length) })),
tekisei: rc.matchTekisei(a).map((t) => t.name + ':' + t.score) });
}
}
fs.writeFileSync(OUT + '/report_heads.json', JSON.stringify(reports));
// ---- 固定文・定数表の指紋(SHA-256)----
// 再実装で書き写した表が原文と一字一句同じかを確かめるためのもの。
// 値は JSON.stringify(表) の UTF-8 バイト列の SHA-256(キーの並びは原文の順)。関数は '[星]' を渡した結果に置き換える。
{
const crypto = require('crypto');
const sha = (v) => crypto.createHash('sha256').update(JSON.stringify(v, (k, x) => (typeof x === 'function' ? x('[星]') : x)), 'utf8').digest('hex');
const eng = fs.readFileSync(ROOT + '/src/engine.js', 'utf8');
const names = [...eng.matchAll(/^ const ([A-Z][A-Z0-9_]+)\s*= /gm)].map((m) => m[1]);
const patched = eng.replace(' return {\n init, range,', ' return {\n __all: { ' + names.join(', ') + ' },\n init, range,');
const ev = { module: { exports: {} }, console };
vm.createContext(ev);
vm.runInContext(patched.replace('if (typeof module', 'if (false && typeof module') + '\nthis.__S = SANMEI;', ev);
const all = ev.__S.__all;
const out = { engine: {}, aisho_detail: {}, report_text: {} };
const form = (v) => JSON.stringify(v, (k, x) => (typeof x === 'function' ? x('[星]') : x)).slice(0, 110);
for (const n of names) {
const v = n === 'KAN' || n === 'SHI' ? Array.from(all[n]) : all[n]; // KAN・SHI は原文では文字列だが、配列に直した指紋を載せる
out.engine[n] = { sha256: sha(v), form: form(v) };
}
const dctx = { console }; vm.createContext(dctx);
const dsrc = fs.readFileSync(ROOT + '/src/aisho_detail.js', 'utf8');
const dnames = [...dsrc.matchAll(/^const (D_[A-Z]+) = /gm)].map((m) => m[1]);
vm.runInContext(dsrc + '\n' + dnames.map((n) => 'this.' + n + '=' + n + ';').join(''), dctx);
for (const n of dnames) out.aisho_detail[n] = { sha256: sha(dctx[n]), form: form(dctx[n]) };
const rsrc2 = fs.readFileSync(ROOT + '/src/report_text.js', 'utf8');
const rnames = [...rsrc2.matchAll(/^const (R_\w+)\s*=/gm)].map((m) => m[1]);
const rctx = { console }; vm.createContext(rctx);
vm.runInContext(rsrc2 + '\n' + rnames.map((n) => 'this.' + n + '=' + n + ';').join(''), rctx);
for (const n of rnames) out.report_text[n] = { sha256: sha(rctx[n]), form: form(rctx[n]) };
fs.writeFileSync(OUT + '/fixed_text_hashes.json', JSON.stringify(out, null, 1));
}
console.log('日付の標本', dates.length, '件');
for (const f of fs.readdirSync(OUT)) console.log(f.padEnd(22), (fs.statSync(OUT + '/' + f).size / 1024).toFixed(0) + 'KB');
gen_vectors.cjs 全文// 仕様書に載せる「手で追える作業例」と「代表ゴールデン」を、参照実装の実出力から作る。
// 使い方: node gen_vectors.cjs <リポジトリのルート> <出力フォルダ>
const fs = require('fs'), vm = require('vm');
const ROOT = process.argv[2], OUT = process.argv[3];
const setsu = JSON.parse(fs.readFileSync(ROOT + '/src/setsu_table.json', 'utf8'));
const moon = JSON.parse(fs.readFileSync(ROOT + '/src/moon_table.json', 'utf8'));
const holi = JSON.parse(fs.readFileSync(ROOT + '/src/holiday_table.json', 'utf8'));
global.window = { HOLIDAY_TABLE: holi };
const S = require(ROOT + '/src/engine.js');
S.init(setsu, moon);
const I = S._internal;
const ctx = { SANMEI: S, console };
vm.createContext(ctx);
vm.runInContext(fs.readFileSync(ROOT + '/src/aisho_detail.js', 'utf8') + '\nthis.buildAishoDetail=buildAishoDetail;', ctx);
const pad = (n) => String(n).padStart(2, '0');
const iso = (y, m, d) => y + '-' + pad(m) + '-' + pad(d);
const J = (o) => JSON.stringify(o);
const canon = (a) => ({
date: a.date, weekday: a.weekday,
setsu: { name: a.setsu.name, jst: a.setsu.jst, keika: a.setsu.keika, isSetsuiriDay: a.setsu.isSetsuiriDay },
pillars: Object.fromEntries(['year', 'month', 'day'].map((k) => [k, {
kan: a.pillars[k].kan, shi: a.pillars[k].shi, kanshi: a.pillars[k].kanshi, zokan: a.pillars[k].zokan,
no: a.pillars[k].no, stages: a.pillars[k].stages,
}])),
stars: Object.fromEntries(Object.entries(a.stars).map(([k, v]) => [k, { kan: v.kan, star: v.star }])),
starSet: a.starSet,
jusei: Object.fromEntries(Object.entries(a.jusei).map(([k, v]) => [k, { shi: v.shi, name: v.name, energy: v.energy, unsei: v.unsei }])),
juseiSet: a.juseiSet, totalEnergy: a.totalEnergy,
gogyoDist: a.gogyoDist, tenchusatsu: a.tenchusatsu, tenchusatsuShi: a.tenchusatsuShi, tenchusatsuYear: a.tenchusatsuYear,
ijou: a.ijou, nikkanGogyo: a.nikkanGogyo, nisshiGogyo: a.nisshiGogyo, moon: a.moon,
hourPillar: a.hourPillar && {
kan: a.hourPillar.kan, shi: a.hourPillar.shi, kanshi: a.hourPillar.kanshi, zokan: a.hourPillar.zokan,
no: a.hourPillar.no, ijou: a.hourPillar.ijou, jusei: a.hourPillar.jusei, shusei: a.hourPillar.shusei,
shiIndex: a.hourPillar.shiIndex, stages: a.hourPillar.stages,
},
});
// ============ F1: 作業例(中間値つき) ============
const worked = (y, m, d, opts, gender) => {
const a = S.meishiki(y, m, d, opts);
const j = I.jdn(y, m, d);
const st = I.findSetsu(y, m, d);
const rows = setsu[String(y)];
const risshunDay = rows[1][0];
const ky = (j >= I.jdn(y, 2, risshunDay)) ? y : y - 1;
const yidx = (((ky - 4) % 60) + 60) % 60;
const didx = (((j + 49) % 60) + 60) % 60;
const lines = [];
lines.push('#### 作業例 ' + a.date + '(' + a.weekday + ')' + (opts.hour != null ? ' 出生時 ' + opts.hour + '時' : '') + ' ' + (gender === 'male' ? '男' : '女'));
lines.push('');
lines.push('| 手順 | 計算 | 結果 |');
lines.push('|---|---|---|');
lines.push('| ① ユリウス日 | `jdn(' + y + ',' + m + ',' + d + ')` | **' + j + '** |');
lines.push('| ② 日柱 | `didx = mod(' + j + ' + 49, 60)` = ' + didx + ' → `KAN[' + (didx % 10) + ']` `SHI[' + (didx % 12) + ']` | **' + a.pillars.day.kanshi + '**(' + a.pillars.day.no + '番) |');
lines.push('| ③ 直前の節 | 節入り表 `' + st.year + '年` の ' + (st.monthIndex + 1) + '番目 = ' + st.day + '日 → `' + iso(st.year, st.monthIndex + 1, st.day) + '`(' + st.name + '・月支`' + st.shi + '`) | keika = ' + j + ' − ' + st.jdn + ' + 1 = **' + a.setsu.keika + '** |');
lines.push('| ④ 年柱 | 立春は ' + y + '年2月' + risshunDay + '日 → ' + (j >= I.jdn(y, 2, risshunDay) ? '立春以後なので ' + y : '立春前なので ' + (y - 1)) + '年 → `yidx = mod(' + ky + ' − 4, 60)` = ' + yidx + ' | **' + a.pillars.year.kanshi + '**(' + a.pillars.year.no + '番) |');
lines.push('| ⑤ 月柱 | 月支 `' + st.shi + '`、五虎遁 `GOTORA[' + a.pillars.year.kan + ']`+寅から数えて ' + (((['子', '丑', '寅', '卯', '辰', '巳', '午', '未', '申', '酉', '戌', '亥'].indexOf(st.shi) - 2) % 12 + 12) % 12) + ' 番目 | **' + a.pillars.month.kanshi + '**(' + a.pillars.month.no + '番) |');
const vm_ = opts.zokanMonth || 'kantei', vyd = opts.zokanYearDay || 'kantei';
lines.push('| ⑥ 蔵干(採用) | 年支`' + a.pillars.year.shi + '`・月支`' + a.pillars.month.shi + '`・日支`' + a.pillars.day.shi + '` を keika=' + a.setsu.keika + ' で引く(月:' + vm_ + '/年日:' + vyd + ') | 年 **' + a.pillars.year.zokan + '**・月 **' + a.pillars.month.zokan + '**・日 **' + a.pillars.day.zokan + '** |');
const s = a.stars;
lines.push('| ⑦ 人体図 | 日干`' + a.pillars.day.kan + '`から見る | 北=' + s.north.star + '(年干' + s.north.kan + ')/東=' + s.east.star + '(' + s.east.kan + ')/中央=' + s.center.star + '(' + s.center.kan + ')/西=' + s.west.star + '(' + s.west.kan + ')/南=' + s.south.star + '(月干' + s.south.kan + ')/伴=' + s.ancestor.star + '(' + s.ancestor.kan + ') |');
const ju = a.jusei;
lines.push('| ⑧ 従星 | 日干`' + a.pillars.day.kan + '`から年支・月支・日支 | 初年=' + ju.early.name + '(' + ju.early.energy + ')・中年=' + ju.mid.name + '(' + ju.mid.energy + ')・晩年=' + ju.late.name + '(' + ju.late.energy + ') → 合計 **' + a.totalEnergy + '** |');
lines.push('| ⑨ 天中殺 | `floor(' + didx + ' / 10)` = ' + Math.floor(didx / 10) + '(親の天中殺は `floor(' + yidx + ' / 10)` = ' + Math.floor(yidx / 10) + ') | **' + a.tenchusatsu + '**(親: ' + a.tenchusatsuYear + ') |');
if (a.hourPillar) lines.push('| ⑩ 時柱 | 日干`' + a.pillars.day.kan + '` + ' + opts.hour + '時 | **' + a.hourPillar.kanshi + '** |');
const du = S.daiun(y, m, d, gender, { ...opts, count: 4 });
lines.push('| 大運 | 年干が' + ((a.pillars.year.kan && ['甲', '丙', '戊', '庚', '壬'].includes(a.pillars.year.kan)) ? '陽' : '陰') + ' × ' + (gender === 'male' ? '男' : '女') + ' → **' + du.direction + '**。' + (du.forward ? '次の節まで' : '前の節から') + ' ' + du.daysToSetsu + '日 → `round(' + du.daysToSetsu + '/3)` = 立運 **' + du.startAge + '歳** | ' + du.rows.map((r) => r.age + '歳 ' + r.kanshi + '(' + r.shusei + '/' + r.jusei + ')').join('、') + ' … |');
lines.push('');
return lines.join('\n');
};
let f1 = '';
f1 += worked(1984, 10, 10, {}, 'male') + '\n';
f1 += worked(2000, 2, 4, { hour: 23 }, 'female') + '\n';
f1 += worked(2026, 8, 7, {}, 'male') + '\n';
f1 += worked(2021, 2, 3, {}, 'female') + '\n';
fs.writeFileSync(OUT + '/F1_worked.md', f1);
// ============ F2: 命式の代表ゴールデン ============
const cases = [];
const addC = (y, m, d, opts, note) => cases.push({ y, m, d, opts, note });
const firstDay = (kanshi, from) => { for (let j = I.jdn(from, 1, 1); ; j++) { const [y, m, d] = I.fromJdn(j); if (S.meishiki(y, m, d).pillars.day.kanshi === kanshi) return [y, m, d]; } };
addC(1901, 1, 1, {}, '範囲の下端(前年12月の大雪の中。年柱は庚子)');
addC(1901, 1, 5, {}, '小寒の前日');
addC(1901, 1, 6, {}, '');
addC(1984, 2, 4, {}, '立春の前日');
addC(1984, 2, 5, {}, '日単位なので 5日の朝から甲子年');
addC(1984, 2, 6, {}, '');
addC(2000, 2, 3, {}, '');
addC(2000, 2, 4, {}, '日単位なので 4日の朝から庚辰年');
addC(2000, 2, 5, {}, '');
addC(2021, 2, 2, {}, '');
addC(2021, 2, 3, {}, '日単位なので 3日の朝から辛丑年');
addC(2021, 2, 4, {}, '');
addC(2026, 8, 6, {}, '');
addC(2026, 8, 7, {}, '日単位なので 7日の朝から申月');
addC(2026, 8, 8, {}, '');
addC(1904, 2, 29, {}, 'うるう日');
addC(2000, 2, 29, {}, 'うるう日(400年周期)');
addC(2096, 2, 29, {}, 'うるう日');
addC(1984, 10, 10, {}, '基準例');
for (const h of [0, 1, 11, 23]) addC(1984, 10, 10, { hour: h }, '出生時 ' + h + '時');
addC(1984, 10, 10, { zokanMonth: 'A', zokanYearDay: 'A' }, '蔵干 A 流派');
addC(1984, 10, 10, { zokanMonth: 'hongen', zokanYearDay: 'hongen' }, '蔵干 本元のみ');
addC(1984, 10, 10, { zokanMonth: 'kantei', zokanYearDay: 'hongen' }, '月は既定・年日は本元');
addC(1990, 5, 1, {}, '');
addC(1975, 3, 15, {}, '');
addC(1963, 12, 25, {}, '');
addC(2010, 7, 7, {}, '');
addC(2026, 8, 13, {}, '');
addC(2099, 12, 31, {}, '');
addC(2100, 1, 1, {}, '');
addC(2100, 12, 7, {}, '範囲の上端付近。ここから先は順行の大運が計算できない(§15.1)');
addC(2100, 12, 31, {}, '範囲の上端');
{ const [y, m, d] = firstDay('己亥', 2000); addC(y, m, d, {}, '日柱が己亥(13個説では暗合)'); addC(y, m, d, { ijouSet: '7' }, '同じ日を7個説で(異常干支)'); }
{ const [y, m, d] = firstDay('甲午', 2000); addC(y, m, d, {}, '日柱が甲午(13個説では無印)'); addC(y, m, d, { ijouSet: '7' }, '同じ日を7個説で(異常干支)'); }
{ const [y, m, d] = firstDay('甲戌', 2000); addC(y, m, d, {}, '日柱が甲戌(13個説では通常)'); addC(y, m, d, { ijouSet: '7' }, '同じ日を7個説で(無印)'); }
let f2 = '';
for (const c of cases) {
const a = S.meishiki(c.y, c.m, c.d, c.opts);
const optsText = Object.keys(c.opts).length ? ' ' + J(c.opts) : '';
const auto = a.setsu.isSetsuiriDay ? '節入りの日(' + a.setsu.name + ' ' + a.setsu.jst.slice(11) + ')' : '';
const note = [auto, c.note].filter(Boolean).join('。');
f2 += '**' + a.date + optsText + '**' + (note ? ' — ' + note : '') + '\n```json\n' + J(canon(a)) + '\n```\n';
}
fs.writeFileSync(OUT + '/F2_meishiki.md', f2);
// ============ F3: 応用技の代表ゴールデン ============
const rnd = (x, n) => Math.round(x * Math.pow(10, n)) / Math.pow(10, n);
const dset = [[1984, 10, 10], [1990, 5, 1], [1975, 3, 15], [1963, 12, 25], [2010, 7, 7], [2026, 8, 13], [1901, 1, 1], [2100, 12, 31], [2000, 2, 29], [1904, 2, 29]];
{ const t = firstDay('己未', 1950); dset.push(t); const u = firstDay('甲戌', 1950); dset.push(u); const v = firstDay('癸丑', 1950); dset.push(v); }
let f3 = '';
for (const [y, m, d] of dset) {
const a = S.meishiki(y, m, d); a.date = iso(y, m, d);
const su = S.suurihou(0, 0, 0, { meishiki: a });
const sk = S.shinkyo(a), kd = S.koudouRyoiki(a), rk = S.rokushin(a), sa = S.sainou(a), te = S.teiichi(a), ki = S.kichijitsu(a), ky = S.kyouiku(a), ks = S.kyouikuSei(a);
const o = {
date: a.date,
suurihou: { byKan: su.byKan, byGogyo: su.byGogyo, total: su.total, genList: su.genList },
shinkyo: { energy: sk.energy, strongCount: sk.strongCount, weakCount: sk.weakCount, hasTenshosei: sk.hasTenshosei, label: sk.label },
koudou: { nos: kd.points.map((p) => p.no), degs: kd.points.map((p) => p.deg), area: rnd(kd.area, 6), ratio: rnd(kd.ratio, 6), unique: kd.unique, maxGap: kd.maxGap, label: kd.label, spread: kd.spread },
rokushin: rk.rows.map((r) => [r.key, r.ideal, r.real, r.level, r.star, r.where]),
sainou: { kokusu: sa.list.map((r) => [r.pos, r.star, r.kokusu]), max: sa.max, kata: sa.kata, un: sa.un, talent: sa.talent },
teiichi: { count: te.count, keys: te.keys, spirit: te.spirit, real: te.real },
kichijitsu: { setsugetsu: ki.setsugetsu, good: ki.good, bad: ki.bad },
isouInner: S.isouInner(a),
kyouiku: { rows: ky.rows.map((r) => [r.pos, r.kanshi]), onDay: ky.onDay },
kyouikuSei: { insei: ks.insei, rosei: ks.rosei, pairs: ks.pairs.map((p) => p.key), ok: ks.ok },
holiday: S.holiday(y, m, d),
};
f3 += '**' + a.date + '(' + a.pillars.year.kanshi + '・' + a.pillars.month.kanshi + '・' + a.pillars.day.kanshi + ')**\n```json\n' + J(o) + '\n```\n';
}
fs.writeFileSync(OUT + '/F3_derived.md', f3);
// ============ F4: 大運・行運・相性・暦・検索 ============
let f4 = '';
f4 += '##### 大運\n\n';
for (const [y, m, d] of [[1984, 10, 10], [2000, 2, 29], [1963, 12, 25], [1984, 2, 5], [1984, 2, 4], [2100, 12, 6]]) {
for (const g of ['male', 'female']) {
let du; try { du = S.daiun(y, m, d, g, { count: 12 }); } catch (e) { f4 += '**' + iso(y, m, d) + ' ' + g + '** … `error`\n\n'; continue; }
f4 += '**' + iso(y, m, d) + ' ' + g + '**\n```json\n' + J({ direction: du.direction, startAge: du.startAge, daysToSetsu: du.daysToSetsu,
rows: du.rows.map((r) => [r.age, r.year, r.kanshi, r.shusei, r.jusei, r.energy, r.tenchusatsu, r.isDaiunTenchusatsu, r.ijou]) }) + '\n```\n';
}
}
{ // 落ちる例
let msg = ''; try { S.daiun(2100, 12, 7, 'male'); } catch (e) { msg = e.message; }
f4 += '**2100-12-07 male** … 参照実装は `' + msg + '`(§15.1 の既知の限界)\n\n';
}
f4 += '##### 行運(`gyoun`)\n\n';
for (const [b, at, hour] of [[[1984, 10, 10], [2026, 10, 5], 14], [[1990, 5, 1], [2030, 2, 3], null], [[1963, 12, 25], [2026, 8, 7], 23]]) {
const g = S.gyoun({ y: b[0], m: b[1], d: b[2] }, { y: at[0], m: at[1], d: at[2], hour: hour == null ? undefined : hour });
const rc = (r) => r && [r.label, r.kanshi, r.shusei, r.jusei, r.energy, r.unsei, r.isTenchusatsu, r.ijou];
f4 += '**生年月日 ' + iso(...b) + ' が ' + iso(...at) + (hour == null ? '' : ' ' + hour + '時') + ' を見る**\n```json\n' + J({ tenchusatsu: g.tenchusatsu, shi: g.shi, nikkan: g.nikkan, moon: g.moon, year: rc(g.year), month: rc(g.month), day: rc(g.day), hour: rc(g.hour) }) + '\n```\n';
}
f4 += '##### 行運一覧(`gyounList`、各単位から先頭の数行)\n\n';
for (const unit of ['year', 'month', 'day', 'hour']) {
const L = S.gyounList({ y: 1984, m: 10, d: 10 }, unit, { y: 2026, m: 10, d: 5 }, { count: 5, now: { y: 2026, m: 10, d: 5 } });
f4 += '**unit=' + unit + '(生年月日 1984-10-10、起点 2026-10-05)**\n```json\n' + J(L.rows.slice(0, unit === 'day' ? 4 : 5).map((r) => ({ label: r.label, kanshi: r.kanshi, shusei: r.shusei, jusei: r.jusei, energy: r.energy, unsei: r.unsei, isTenchusatsu: r.isTenchusatsu, ijou: r.ijou, isNow: r.isNow, age: r.age, kichi: r.kichi, kyou: r.kyou, holiday: r.holiday, moon: r.moon, hour: r.hour, range: r.range }))) + '\n```\n';
}
f4 += '##### 相性(`aisho`)\n\n';
for (const [A, B] of [[[1984, 10, 10], [1990, 5, 1]], [[1975, 3, 15], [1963, 12, 25]]]) {
for (const mode of ['general', 'love']) {
const ai = S.aisho(S.meishiki(...A), S.meishiki(...B), mode);
const det = ctx.buildAishoDetail(ai, mode);
f4 += '**A=' + iso(...A) + '、B=' + iso(...B) + '、mode=' + mode + '**\n```json\n' + J({ kind: ai.kind, gogyo: ai.gogyo, tenchusatsu: ai.tenchusatsu, sharedStars: ai.sharedStars,
shinkyo: { a: ai.shinkyo.a.label, b: ai.shinkyo.b.label }, isou: ai.isou, isouSummary: ai.isouSummary, kango: ai.kango, reading: ai.reading,
detail: det.map((x) => [x.title, x.body]) }) + '\n```\n';
}
}
f4 += '##### 暦(JDN・曜日・祝日・月相)\n\n```json\n' + J({
jdn: [[1901, 1, 1], [1948, 7, 20], [1984, 10, 10], [2000, 1, 1], [2000, 2, 29], [2026, 10, 5], [2100, 12, 31]].map(([y, m, d]) => [y, m, d, I.jdn(y, m, d), I.weekday(y, m, d)]),
fromJdn: [2415386, 2445983, 2451545, 2461319, 2488069].map((j) => [j, I.fromJdn(j)]),
holiday2026: (() => { const l = []; for (let j = I.jdn(2026, 1, 1); j <= I.jdn(2026, 12, 31); j++) { const [y, m, d] = I.fromJdn(j); const h = S.holiday(y, m, d); if (h) l.push([iso(y, m, d), h]); } return l; })(),
moon2026: S.moonPhases('2026-01-01', '2026-12-31').map((e) => [e.date, e.time, e.kind]),
holidayMisc: [[1948, 7, 19, 'null'], [1948, 7, 20, 'null?'], [1948, 11, 3], [1950, 1, 1], [2019, 5, 1], [2020, 7, 23], [2020, 7, 24], [2100, 9, 23]].map(([y, m, d]) => [iso(y, m, d), S.holiday(y, m, d)]),
}) + '\n```\n';
f4 += '##### 検索(`search`/`searchNearMiss`)\n\n';
const conds = [
[{ tenchusatsu: ['子丑天中殺'] }, '2026-01-01', '2026-12-31'],
[{ nikkanGogyo: ['火'], nisshiGogyo: ['木', '水'] }, '2025-01-01', '2026-06-30'],
[{ requireShusei: ['鳳閣星', '玉堂星'] }, '2024-01-01', '2026-12-31'],
[{ requireJuseiAny: ['天将星', '天禄星'], minEnergy: 30 }, '2020-01-01', '2030-12-31'],
[{ requireShusei: ['禄存星'], requireJuseiAny: ['天南星'], minEnergy: 20, tenchusatsu: ['寅卯天中殺', '申酉天中殺'] }, '2000-01-01', '2040-12-31'],
[{ requireShusei: ['貫索星'], robust: true }, '2026-01-01', '2027-12-31'],
[{ requireShusei: ['司禄星', '牽牛星'], robust: true, nikkanGogyo: ['金'] }, '2000-01-01', '2030-12-31'],
[{}, '2026-02-01', '2026-02-10'],
[{ minEnergy: 36 }, '1901-01-01', '2100-12-31'],
[{ requireShusei: ['龍高星'], requireJuseiAny: ['天胡星'], minEnergy: 10 }, '1950-01-01', '2000-12-31'],
];
const sres = conds.map(([c, f, t]) => {
const hits = S.search(f, t, c, { maxHits: 100000 });
const nm = S.searchNearMiss(f, t, c, { maxHits: 100000 });
const cnt = {}; nm.forEach((x) => { cnt[x.missing] = (cnt[x.missing] || 0) + 1; });
return { cond: c, from: f, to: t, count: hits.length, first: hits.slice(0, 5).map((a) => a.date), last: hits.slice(-3).map((a) => a.date), near: { count: nm.length, byMissing: cnt, first: nm.slice(0, 3).map((x) => x.meishiki.date + ':' + x.missing) } };
});
f4 += '```json\n' + sres.map(J).join('\n') + '\n```\n';
fs.writeFileSync(OUT + '/F4_misc.md', f4);
console.log('ok', fs.readdirSync(OUT).filter((f) => /^F/.test(f)).map((f) => f + ':' + (fs.statSync(OUT + '/' + f).size / 1024).toFixed(0) + 'KB').join(' '));