シミュレーションに必要なパラメータ
シミュレーションに必要なパラメータ
薬剤ごとの採用値は薬剤別パラメータ一覧で確認できます。
このページは、現在の spec_pk1_*.yml と tools/mrgsolve_runner.R に基づく、1-compartment PKシミュレーションの入力仕様です。薬剤の科学的根拠は pk.yml、実行条件はspec、比較目標は targets.yml に分けて管理します。生成データはワークフロー検証用fixtureで、臨床推論・用量選択用モデルとして検証されたものではありません。
最初に決めること
- 投与経路、用量、単回/反復、点滴時間を決める。
- CL・Vの単位とbasis(systemic/apparent)を確認する。
- 経口投与ではKA、F1、吸収ラグを決め、出典値とfixture仮定を区別する。
- 被験者数、観測時間、個体間変動、残差誤差、乱数seedを指定する。
- 採用値・変換式・出典・未確認事項を記録して検証する。
以下の「必要」は再現可能な実行仕様で明示すべき項目を意味します。runnerが省略時に既定値を補う項目も含みます。
PKモデルのパラメータ
| specのキー | 意味 | 単位・範囲 | 必要な経路/省略時の挙動 |
|---|---|---|---|
model.template |
モデル構造 | pk1_oral_ode / pk1_iv_ode |
経路と一致させる |
model.theta.CL |
クリアランス | L/h、正数 | 全経路で必須 |
model.theta.V |
分布容積 | L、正数 | 全経路で必須 |
model.theta.KA |
一次吸収速度定数 | 1/h、正数 | 経口で必須、IVでは使用しない |
model.theta.F1 |
投与区画からの利用率 | 0–1 | 経口。runnerの省略値は1 |
model.theta.ALAG1 |
吸収ラグ時間 | h、0以上 | 経口。runnerの省略値は0 |
model.units.conc |
出力濃度単位 | 例:ng/mL、mg/L | runnerの省略値はng/mL |
model.units.mult |
基礎濃度mg/Lからの倍率 | 正数 | ng/mLなら1000、mg/Lなら1。単位との一致を検証 |
経口薬のCL/F・V/FとF1
出典が CL/F・V/F を報告している場合、これをsystemic CL・Vと取り違えないでください。整合する扱いは次の2通りです。
| 採用basis | theta.CL / theta.V | theta.F1 | 注意点 |
|---|---|---|---|
| apparent | 報告されたCL/F、V/F | 1 | apparent parameterizationとして記録。F1=1は実際の利用率100%を主張しない |
| systemic | (CL/F) × F、(V/F) × F |
根拠のあるF | Fの値・出典・変換式を記録し、specとtargetsのbasisを一致させる |
apparent CL/Vに実際のFをさらに適用すると、Fを二重に反映して濃度を過小評価します。出典がsystemic値を直接報告している場合は、その値を使用し、経口Fを別に指定します。値のbasisが不明なら推測変換せずレビュー対象に残します。
1-compartmentの消失速度は ke = CL/V、モデル半減期は ln(2) × V/CL です。CL・Vを独立入力として採用する場合、文献の半減期は比較目標です。CL・V・半減期の3つを無条件に独立入力として固定できません。不一致は警告として残し、半減期から黙って再校正しないでください。
投与・被験者・時間
| 設定 | 意味 | 契約 |
|---|---|---|
study.id |
試験識別子 | 出力の識別に使用 |
regimen.route |
投与経路 | mrgsolveではoral/po、iv/iv_bolus、iv_infusion。経路ごとの詳細はrunner文書を参照 |
regimen.units.dose |
用量単位 | mrgsolveは絶対量mgのみ。mg/kg・mg/m²は事前に根拠付きでmgへ換算 |
regimen.arms.<arm>.dose_mg |
1回投与量 | mg、正数 |
regimen.arms.<arm>.n |
群ごとの被験者数 | 正整数。--n-subjectsで上書き可能 |
regimen.arms.<arm>.infusion_h |
点滴時間 | h、点滴では正数。同runnerは各群で同じ点滴時間を要求。RATEはdose_mg/infusion_h |
population.covariates.wt_kg |
体重分布 | runnerはmedian/CV/min/maxを用いた切り捨て対数正規分布。現在WTをCL/Vへ自動反映しない |
population.subject_source |
外部被験者CSVの参照 | 任意。対応ツールと列仕様はSchema参照。mrgsolve runnerの外部CSV読込みを意味しない |
sampling.t_end_h |
観測終了 | h、正数。最終投与時刻を含む必要がある |
sampling.dt_h |
シミュレーション時間間隔 | h、正数 |
sampling.include_t0 |
時刻0の観測 | true/false |
runner --dose-count |
投与回数 | 正整数。単回は1 |
runner --interval-h |
投与間隔 | h、正数。反復投与で使用 |
runner --seed |
乱数seed | 正整数。実行時の値を保存 |
生成グリッドと臨床採血時刻は別の設定です。後処理で採血時刻を抽出する場合、時刻列と補間方式も記録します。同runnerでは同時刻の観測を投与より先に処理します。反復投与の後段では dosing_events.csv を投与イベントの正本とします。
個体間変動・残差誤差
| specのキー | 意味 | mrgsolveの扱い |
|---|---|---|
iiv.eta.CL / V / KA |
対数スケール個体間変動 | 対角OMEGAの分散、0以上。SDやCVを直接入れない。KAは経口のみ |
iiv.corr |
ETA相関 | falseのみ対応 |
residual.type |
残差モデル | prop+add(prop_addも受理) |
residual.prop |
比例誤差のSD係数 | 無次元、0以上 |
residual.add |
加算誤差のSD係数 | 出力濃度と同じ単位、0以上 |
個体値は CL_i = CL × exp(ETA_CL)(V・KAも同様)です。残差は DV = IPRED × (1 + EPS_PROP × prop) + EPS_ADD × add、EPSは独立標準正規乱数で、負のDVは0へ制限します。OMEGA=0なら当該個体間変動なし、--no-residualなら残差誤差なしです。
Pythonの analytical_demo はspecのIIV/residualを薬剤固有モデルとして消費せず、CLI/configのdemo用変動オプションを別に使います。使用エンジンを必ず記録し、同じspecでも変動の実装が同一と解釈しないでください。
任意の測定・比較条件
assay.lloq: {value, unit} は後段のBLQ処理用です。濃度単位と整合させ、BLQ/CENS/LIMITの列規約を記録します。これはmrgsolveのODE入力ではありません。
targets.yml の半減期・Cmax・Tmax・AUCは比較/QCの目標です。独立文献値とモデル由来チェック値を区別してください。元データから70 kg換算、per-kg換算、BSA 1.73 m²正規化を行う場合は、元単位、参照体格、変換式を保存します。集団の体重生成とPK値の体格正規化は別の操作です。
実行例と値の出典
数値を新たに作らず、既存のダパグリフロジンspecを使用する例です。ローカルの採用specが実行入力の正本です。KA・ALAG1・IIV・残差などについて、specに値があることだけでは文献由来と判断できません。
Rscript tools/mrgsolve_runner.R \
--spec drugs/dapagliflozin/spec_pk1_oral.yml \
--out outputs/simulation_parameters/dapagliflozin/sim_full.csv \
--seed 20260217
python3 -m tools.pk_fixture_cli parameter-provenance \
--out-dir outputs/parameter_provenance
make harness-check
保存する情報は、採用spec、エンジン、CLI上書き、seed、出力単位、出典・変換・basis、実行manifest、検証結果です。source URLの存在だけでは値単位の確認完了ではありません。pk_raw → pk_parsed → derived → spec theta の対応と value_provenance のレビュー状態を確認します。
詳しい構造はSchema、実行・出力契約はmrgsolve runner、手順はQuickstartを参照してください。