검사실이 보고하는 수치와 환자를 죽이는 수치 사이에는 아무도 재지 않는 두 번의 곱셈이 있다. 이 모델은 그 두 배수를 명시적으로 계산하고, 살리실산 중독의 임상적 역설들이 거기서 산술적으로 따라나오는지를 확인한다.
살리실산 중독은 하나의 숫자 — 총 혈장 살리실산 농도 — 로 분류되고, 그 숫자로 투석이 결정된다. 그런데 실제로 사람을 죽이는 양은 뇌세포 안의 살리실산이고, 둘 사이에는 측정되지 않는 두 개의 곱셈이 있다.
C_brain = C_total × fu(C_total, pH) × f_n(pH_plasma) / f_n(pH_brain)
───────── ──────────────── ─────────────────────────────
검사실이 ① 알부민 포화 ② 약산(pKa 3.0)의 pH 분배
보고하는 150 mg/L → 8.5% 뇌 세포내 pH는 완충되어 있고
유일한 값 800 mg/L → 43% 혈장 pH는 그렇지 않다
② 가 이 모델의 핵심이며, 보통의 PK 모델에서 빠져 있는 생리를 필요로 한다. CO₂는 세포막을 즉시 통과하고, 세포 안에서 비-중탄산 완충계(β ≈ 35 mmol/L per pH)에 흡수된다. 그래서 PaCO₂를 25 → 60 mmHg로 올리면
| 변화 | |
|---|---|
| 혈장 pH | 0.380 하강 |
| 뇌 세포내 pH | 0.143 하강 (2.7배 덜 움직인다) |
| 뇌:혈장 분배계수 | 1.73배 상승 |
즉 기울기가 바뀐다. 급성 호흡성 산증과 대사성 산증은 뇌에 대해 결코 같지 않다.
30 g 섭취 8시간 뒤, 스위치 하나만 바꾼다. A군은 통상적인 분당환기량으로 삽관, B군은 환자 자신의 분당환기량(정상의 2.30배)에 맞춰 삽관. 나머지는 완전히 동일하다.
| 시각 | 혈장 A | 혈장 B | 뇌 A | 뇌 B | 뇌 A/B |
|---|---|---|---|---|---|
| 8 h (스위치 직전) | 813.8 | 813.8 | 143.3 | 143.3 | 1.00 |
| 9 h | 581.6 | 811.6 | 162.3 | 144.5 | 1.12 |
| 12 h | 577.5 | 796.4 | 158.1 | 141.3 | 1.12 |
| 24 h | 547.1 | 692.0 | 128.7 | 106.6 | 1.21 |
| 36 h | 496.7 | 569.6 | 98.6 | 71.9 | 1.37 |
한 시간 만에 pH 7.47 → 7.11, PaCO₂ 25 → 57 mmHg, 뇌:혈장 비 0.178 → 0.279(1.57배). 검사실 수치는 28% 내려가고, 뇌 농도는 올라간다. 36시간 누적 중추신경 노출은 1.31배.
같은 병변의 약한 형태가 아편유사제 병용 섭취다 — 호흡 구동을 45%만 억제해도 뇌 농도가 올라간다(시나리오 S13).
| 처치 | 요 pH (12 h) | 신장 청소율 | 24 h 혈장 | 24 h 뇌 |
|---|---|---|---|---|
| 지지요법만 (수액) | 6.10 | 3.5 mL/min | 670 | 109 |
| 등량 생리식염수 이뇨 | 6.10 | 16.6 | 409 | 43 |
| NaHCO₃ + K | 7.54 | 38.5 | 191 | 7.7 |
- 혈장 pH 팔: 투여 40분 만에, 요가 반응하기도 전에 뇌 농도가 내려간다.
- 요 pH 팔: 요 pH 5에서 여과된 약물의 97%가 비이온 확산으로 재흡수되는데, 요 pH 7.5–8에서는 3% 미만이 된다. 청소율 11배.
- 아세타졸아미드는 요는 알칼리화하면서 혈액은 산성화한다 — 이 모델에서 가능한 최악의 조합이다.
요는 혈장 중탄산이 신세뇨관 중탄산 역치를 넘어야 알칼리화되는데, 저칼륨혈증이 그 역치를 올린다(K 결핍 1 mmol/L당 +5.5 mmol/L).
| K 보충 | K 미보충 | |
|---|---|---|
| 요 pH 7.5 도달 시각 | 11.7 h | 21.9 h |
| 그때 필요한 혈장 HCO₃ | — | +2.9 mmol/L 더 |
| 12시간 신장 청소율 | 38.5 mL/min | 17.9 |
| 48시간 뇌 농도 | 기준 | 2.97배 |
칼륨을 안 주면 알칼리화가 불가능해지는 것이 아니라 10시간 늦어지고, 그 대가로 더 심한 알칼리혈증을 감수해야 한다 — 모델은 이것을 "실패"가 아니라 "지연과 비용"으로 정확히 구분한다.
| 상황 | 혈장 mg/L | fu | 동맥혈 pH | 뇌 pHi | 뇌 mg/L | 뇌/혈장 |
|---|---|---|---|---|---|---|
| 급성 30 g, 6 h | 809 | 0.43 | 7.51 | 7.11 | 133.0 | 0.164 |
| 급성 30 g, 30 h | 611 | 0.35 | 7.41 | 7.04 | 92.6 | 0.151 |
| 통상 환기로 삽관 | 582 | 0.40 | 7.11 | 6.96 | 162.3 | 0.279 |
| 만성, 고령, 14일째 | 216 | 0.33 | 6.75 | 6.92 | 109.2 | 0.505 |
만성 환자의 혈장 농도 216 mg/L(21.6 mg/dL)는 흔히 "경도–중등도"로 읽힌다. 그러나 평형에 도달했고, 알부민이 낮고, 산혈증이 있으므로 뇌 농도는 109 mg/L로 급성 대량 섭취 환자와 맞먹는다. 같은 혈장 농도에 처음 도달한 급성 환자(섭취 후 0.9시간)의 뇌 농도는 3.0 mg/L — 뇌:혈장 비가 36배 다르다.
이것이 Done 노모그램이 실패하는 이유다. 모델은 노모그램을 가정하지 않고 출력으로 취급해 채점한다(검증 보고서 8절): 6개 상황 중 4개에서 노모그램 등급과 모델이 계산한 뇌 농도 등급이 어긋난다.
| 파일 | 내용 |
|---|---|
sal_qsp_model.dot / .svg / .png |
기계론적 지도 — 125개 노드, 16개 클러스터. 노출·흡수·단백결합·pH 분배·간대사·신장처리·탈공역·산염기·중추신경·타 장기·전해질·치료·의원성 위해·측정·임상 엔드포인트 |
sal_mrgsolve_model.R |
28개 ODE, 14개 시나리오의 mrgsolve 모델. 단계별 파라미터 변경 러너 포함 |
sal_shiny_app.R |
11개 탭 대시보드 (환자·PK·두 배수·산염기·신장·엔드포인트·시나리오 비교·인공호흡기 실험·노모그램·EXTRIP·검사 패널) |
sal_verify_python.py |
28개 ODE의 독립 Python/scipy 재구현 |
sal_verification_output.txt |
검증 보고서 — 문헌 기준 54개 중 54개 통과 |
sal_references.md |
83개 참고문헌, PMID는 전부 PubMed에서 조회 확인 |
| 군 | 상태변수 |
|---|---|
| 위장관 | AST 위 · AGUT 소장 · ACONC 결석 · AAC 활성탄 |
| 전신 | AASA 미가수분해 아스피린 · ACENT 중심 · APER 조직 · ACNS 뇌 |
| 대사·배설 | ASU 살리실루르산 · APG/AAG 글루쿠론산포합 · AGA 젠티스산 · AUR 요배설 · AHD 투석 제거 · GLY 글리신 풀 |
| 산-염기 | HCO3 · PACO2 · BBB 뇌 완충염기 · BBT 근육 완충염기 · LAC · KET · FATIG 호흡근 피로 |
| 전해질·용적 | KBAL 칼륨 수지 · VECF 세포외액 |
| 독성역학 | TCORE 체온 · GLUB 뇌 포도당 · LUNG 폐손상 · CNSI 누적 중추신경 노출 |
핵심 대수식 세 개는 mrgsolve $GLOBAL과 Python에 동일한 알고리즘으로 구현되어 있다.
freeSal()— 2종 알부민 결합 부위의 Newton 해phIntra()— 완충염기 + 비-중탄산 완충능으로부터 세포내 pH를 푸는 Newton 해phUrine()— 요 중탄산 농도로부터 요 pH
보정(fitted) — 정상 또는 치료 용량 자료에만 맞춤
- 2종 알부민 결합 (fu 8.5% @150, 29% @500, 43% @800 mg/L)
- Levy의 용량제한 대사 (살리실루르산 Vmax/Km, 페놀성 글루쿠로나이드) → 650 mg 단회 t½ 3.6 h, 3.9 g/day 정상상태 202 mg/L
- 세뇨관 비이온 역확산 상수 (치료 용량에서 산성뇨 미변화 배설분율 1–6%)
- 세포내 완충능 (급성 PaCO₂ 변화에 뇌 pHi가 방어된다는 ³¹P-MRS 관찰)
예측(predicted) — 어떤 것도 여기에 맞추지 않았다
- 과량에서 t½ 37 h, 겉보기 Vd 0.11 → 0.32 L/kg 증가
- 먼저 호흡성 알칼리증, 나중에 혼합 장애 (6시간 pH 7.51, PaCO₂ 24 mmHg)
- 삽관 재앙과 그때 혈장 농도가 오히려 내려가는 현상
- 칼륨 10시간 지연
- 혈당이 정상인데 뇌 포도당이 0.43 mmol/L로 떨어지는 저포도당뇌증
- Done 노모그램의 오분류 패턴
Python 재구현은 장식이 아니라 네 개의 실질적 오류를 잡아냈고, 둘 다 고쳤다.
- 뇌 세포내 pH를 고정된 세포내 중탄산으로 계산하고 있었다. 그러면 급성 고탄산혈증이 혈장 pH만큼 뇌 pH도 떨어뜨려 분배 효과가 통째로 사라진다. 완충염기 + 완충능 방식으로 바꾼 뒤에야 이 모델의 중심 실험이 성립했다.
- 단일 부위 알부민 결합은 800 mg/L에서 유리분율 64%까지 포화되어, 산혈증이 더 밀어낼 자리가 남지 않았다. 2종 부위로 재적합.
- 유지 수분 섭취항이 없어서 모든 장기 시뮬레이션이 가짜 수축성 산증으로 끝나고 GFR이 하한에 붙었다 (만성 시나리오가 전부 무의미했다).
- 적정 없는 중탄산 주입은 혈장 HCO₃를 45 mmol/L까지 올려 칼륨 실패 모드를 완전히 가렸다. 동맥혈 pH 상한(7.60)에서 주입을 멈추는 임상 규칙을 넣자 칼륨 의존성이 제대로 드러났다.
8. 한계 (stated, not hidden)
- 이 모델의 핵심 변수인 뇌 농도는 살아 있는 사람에게서 측정된 적이 없다. 동물 분배 실험(Hill 1971 · PMID 5089754)과 약산의 pH 물리학으로 계산했을 뿐, 임상 결과에 맞춰 보정하지 않았다.
- 반증 가능한 예측은 방향과 크기다: PaCO₂ 변화 직후 혈장(−28%)과 뇌(+12%)가 서로 반대로 움직이고, 24시간에는 뇌가 +21%가 된다.
- 요 알칼리화 대비 지지요법의 청소율 이득(11배)은 비교 대상(지지요법 환자의 요 pH·요량)에 민감하다. 문헌의 "10–20배"는 대개 탈수·산성뇨 환자와의 비교다.
- 신세뇨관 분비(OAT1/3)는 지도에는 있으나 ODE에서는 여과·역확산에 흡수시켰다.
- 소아 파라미터(체중 스케일링 외), 임신, 투석막 종류별 청소율 차이는 다루지 않는다.
# 기계론적 지도 렌더링
dot -Tsvg sal_qsp_model.dot -o sal_qsp_model.svg
dot -Tpng -Gdpi=150 sal_qsp_model.dot -o sal_qsp_model.png
# 독립 검증 (Python)
pip install numpy scipy
python3 sal_verify_python.py # 54/54 통과 리포트
# mrgsolve 모델
R -e "source('sal_mrgsolve_model.R'); print(summarise_scenario(run_scenario('S07')))"
# Shiny 대시보드
R -e "shiny::runApp('sal_shiny_app.R', port = 8080)"| ID | 내용 |
|---|---|
| S01 | 치료 용량 아스피린 650 mg q4h × 5일 |
| S02 | 급성 30 g, 지지요법(수액)만 |
| S03 | 급성 30 g, 수액 없음 — 신장 청소율 붕괴 |
| S04 | 급성 30 g + 생리식염수 이뇨 250 mL/h |
| S05 | 급성 30 g + NaHCO₃ + 칼륨 (표준 치료) |
| S06 | 급성 30 g + NaHCO₃, 칼륨 없음 |
| S07 | 급성 30 g, 8시간에 통상 PaCO₂로 삽관 |
| S08 | 급성 30 g, 8시간에 분당환기량 일치 삽관 |
| S09 | 급성 30 g + NaHCO₃, 6시간에 혈액투석 |
| S10 | 급성 30 g + NaHCO₃, 18시간으로 투석 지연 |
| S11 | 장용정 30 g + 45% 결석, 다회 활성탄 |
| S12 | 만성 살리실산증: 1.3 g q6h, 80세, GFR 60, 알부민 28 |
| S13 | 급성 30 g + 아편유사제 병용 (호흡 구동 45% 억제) |
| S14 | 급성 30 g + NaHCO₃ + 포도당 (혈당 11 mmol/L) |
sal_references.md — 83개 항목, 18개 절로 분류. 모든 PMID는 PubMed E-utilities로
조회해 확인했으며, 확인하지 못한 2편은 17절에 따로 분리해 두었다.
[CAL]은 파라미터를 맞춘 근거, [VAL]은 맞추지 않고 검증한 근거다.
핵심 문헌 다섯 편:
- Palmer BF, Clegg DJ. Salicylate Toxicity. N Engl J Med 2020 — PMID 32579814
- Hill JB. Experimental salicylate poisoning: effects of altering blood pH on tissue and plasma salicylate. Pediatrics 1971 — PMID 5089754
- Levy G. Pharmacokinetics of salicylate elimination in man. J Pharm Sci 1965 — PMID 5862532
- Stolbach AI, et al. Mechanical ventilation was associated with acidemia in salicylate-poisoned patients. Acad Emerg Med 2008 — PMID 18821862
- Juurlink DN, et al. EXTRIP recommendations for salicylate poisoning. Ann Emerg Med 2015 — PMID 25986310
⚠️ 면책: 교육·연구 목적의 QSP 모델입니다. 독립적으로 검증·인증되지 않았으며 실제 임상 의사결정, 처방, 규제 제출에 사용해서는 안 됩니다.