"""사주 계산 상수 — saju-web/lib/saju-calculator.ts 의 상수와 1:1 매핑.""" HEAVENLY_STEMS = ["甲", "乙", "丙", "丁", "戊", "己", "庚", "辛", "壬", "癸"] HEAVENLY_STEMS_KR = ["갑", "을", "병", "정", "무", "기", "경", "신", "임", "계"] EARTHLY_BRANCHES = ["子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥"] EARTHLY_BRANCHES_KR = ["자", "축", "인", "묘", "진", "사", "오", "미", "신", "유", "술", "해"] FIVE_ELEMENTS = { "甲": "木", "乙": "木", "丙": "火", "丁": "火", "戊": "土", "己": "土", "庚": "金", "辛": "金", "壬": "水", "癸": "水", "寅": "木", "卯": "木", "巳": "火", "午": "火", "辰": "土", "戌": "土", "丑": "土", "未": "土", "申": "金", "酉": "金", "子": "水", "亥": "水", } FIVE_ELEMENTS_KR = { "木": "목", "火": "화", "土": "토", "金": "금", "水": "수", } IS_YANG_STEM = { "甲": True, "乙": False, "丙": True, "丁": False, "戊": True, "己": False, "庚": True, "辛": False, "壬": True, "癸": False, } IS_YANG_BRANCH = { "子": True, "丑": False, "寅": True, "卯": False, "辰": True, "巳": False, "午": True, "未": False, "申": True, "酉": False, "戌": True, "亥": False, } # 지장간: { 지지: [본기, 중기, 여기] (없으면 생략) } HIDDEN_STEMS = { "子": ["癸"], "丑": ["己", "癸", "辛"], "寅": ["甲", "丙", "戊"], "卯": ["乙"], "辰": ["戊", "乙", "癸"], "巳": ["丙", "庚", "戊"], "午": ["丁", "己"], "未": ["己", "丁", "乙"], "申": ["庚", "壬", "戊"], "酉": ["辛"], "戌": ["戊", "辛", "丁"], "亥": ["壬", "甲"], } # 본기, 중기, 여기 가중치 HIDDEN_STEM_WEIGHTS = [1.0, 0.5, 0.3] # 상생 사이클 (목→화→토→금→수→목) SHENG_CYCLE = {"木": "火", "火": "土", "土": "金", "金": "水", "水": "木"} # 상극 사이클 (목→토→수→화→금→목) KE_CYCLE = {"木": "土", "土": "水", "水": "火", "火": "金", "金": "木"}