/// 令／地／运叠能定量（作者定稿续 · 2026-08-11）— © 2026 Jason Li（泽森）
///
/// 地＝令后 1.0×1/4；小运＝大运 1.0×1/8。
/// 与 `sheng_ke_params_2026_08_11.dart` 一并替换仓库常量。
library;

// ─── 令（月支）满权 ───────────────────────────────────────
/// 令侧叠能基准（满权）
const double kLingStack = 1.0;

/// 令级系数（乘法；先令）
const double kBqmLingWang = 1.5;
const double kBqmLingXiang = 1.25;
const double kBqmLingXiu = 0.75;
const double kBqmLingQiu = 0.875; // 7/8 ★变更（旧 0.75）
const double kBqmLingSi = 0.375; // 3/8 ★变更（旧 0.25）

// ─── 地（时支）＝令后 ×1/4 ─────────────────────────────────
/// 地相对令的权重：令后施加，地＝令基准1.0 × 1/4
const double kDiRelativeToLing = 0.25; // ★变更：旧多为与令同权或「地=½令」

/// 地级系数（仍用本气/中气表；落盘时增量再 × kDiRelativeToLing）
const double kBqmDiBen = 1.25;
const double kBqmDiZhong = 1.125;
const double kBqmDiNoneWang = 0.75;
const double kBqmDiNoneXiang = 0.75;
const double kBqmDiNoneXiu = 0.75;
const double kBqmDiNoneQiu = 0.875;
const double kBqmDiNoneSi = 0.625;

/// 落盘提示：先令后地；地增量 = (c地−1)·E地·kDiRelativeToLing
const String kDiAfterLingOneLinerZh =
    '地＝令后：先乘令级，再乘地级；地侧权＝1.0×1/4（相对令满权）';

// ─── 大运／小运叠能 ───────────────────────────────────────
/// 大运叠能
const double kDaYunStack = 1.0;

/// 小运＝大运 1.0 × 1/8（★变更：旧 1/4＝0.25）
const double kXiaoYunStack = 0.125; // 1/8

const String kYunStackOneLinerZh =
    '大运叠能1.0；小运＝大运×1/8＝0.125';
