약이 없앨 수 있는 것은 아직 일어나지 않은 바이러스뿐이다. "48시간 안에 항바이러스제를 시작하라"는 보통 시계에 관한 규칙으로 가르쳐진다. 이 모델은 그것을 소진되고 있는 어떤 양(量)에 관한 규칙으로 놓는다.
시각 t_rx에 시작한 약이 줄일 수 있는 바이러스 AUC는 정확히 다음 값으로
위에서 막혀 있다.
R(t_rx) = ∫_{t_rx}^{∞} ( log10 V(t) − LOD )⁺ dt [잔여 AUC]
R은 치료하지 않은 경과만으로 정해지는 양이다. 약도, 효력도, 기전도 들어
있지 않다. 어떤 분자도 이 선을 넘을 수 없다. 이 저장소의 나머지는 전부 (a) R이
얼마나 빨리 줄어드는지와 (b) 각 연산자가 그중 얼마를 가져가는지에 대한 계산이다.
보정된 성인에서 (A1):
| 투여 시점 | 남은 표적세포 | R(t) | 총 AUC 대비 |
|---|---|---|---|
| 증상 발현 시 | 99.9 % | 18.61 | 97.9 % |
| +12 h | 85.7 % | 16.99 | 89.4 % |
| +24 h (CAPSTONE-1 중앙 등록 시점) | 0.1 % | 14.27 | 75.1 % |
| +48 h (허가 창의 끝) | 3.5 % | 8.65 | 45.5 % |
| +96 h | 13.2 % | 1.96 | 10.3 % |
그리고 중앙 등록 시점에서 보정된 발록사비르는 이미 남은 것의 **65.6 %**를 가져간다. 따라서 두 방향의 여유(headroom) 는 다음과 같다.
효력 여유 (Emax → 1) +0.09 log10·d
타이밍 여유 (증상 발현 시 투여) +4.34 log10·d ← 48배
남아 있는 이익의 거의 전부가, 더 좋은 분자로는 살 수 없는 축 위에 있다. 이것이 "일찍 치료하라"의 정량적 내용이다. 늦은 치료가 약해서가 아니라, 늦은 치료는 이미 대부분 써버린 양에 대해 작용하라는 요구를 받기 때문이다.
모든 치료는 복제 루프의 어느 항(term) 을 건드리는가로 분류된다. 이 분류가
중요한 이유는 각 계열이 시간 축에서 모양이 다른 흔적을 남기기 때문이며,
서로 대체되지 않는다 (A5).
| 연산자 계열 | 건드리는 항 | 예 |
|---|---|---|
| ENTRY | β | 점막 IgA, 중화 단클론항체, (약하게) NAI |
| TRANSCRIPTION | E → I | 발록사비르 (PA 엔도뉴클레아제, cap-snatching) |
| PRODUCTION / RELEASE | p | 오셀타미비르·자나미비르·페라미비르, 발록사비르, 파비피라비르 |
| MUTAGENESIS | 감염성 자손 비율 | 파비피라비르 (치사적 돌연변이 유발) |
| VIRION CLEARANCE | c | 단클론항체, 회복기 혈장 |
| TARGET PROTECTION | T → R | I형·III형 인터페론, ISG 항바이러스 상태 |
| INFECTED-CELL DEATH | δ | CD8 CTL, NK — 모델에서 가장 강한 연산자이며, 허가된 항인플루엔자제 중 이 방식으로 작용하는 것은 없다 |
| IMMUNOPATHOLOGY DAMPING | 위 항들을 억제 | 코르티코스테로이드 (여기서는 해로운 방향) |
| 파일 | 내용 |
|---|---|
flu_qsp_model.dot · SVG · PNG |
기계론적 지도 — 14 클러스터 / 145 노드 / 217 엣지. 치료 노드는 위 연산자 계열별로 색이 다르다 |
flu_mrgsolve_model.R |
50-ODE mrgsolve 모델 (바이러스·상피 18 · 면역 9 · 임상 3 · 약물 PK 17 · 회계 3), 14개 시나리오, 14개 분석 함수 |
flu_shiny_app.R |
10-탭 인터랙티브 대시보드 (2번 탭이 이 모델의 요점이다) |
flu_references.md |
PubMed에서 조회해 확인한 97편의 문헌, 절별로 "모델의 어느 부분을 지지하는가"를 명시 |
flu_reference_check.py |
동일 방정식계의 독립 numpy/scipy 이식본. 이 README의 모든 수치는 여기서 계산되어 나온 것이며, R 없이 재현할 수 있다 |
flu_reference_output.txt |
위 스크립트의 전체 출력 (A0–A13) 그대로 |
이 저장소 빌드 환경에는 R 툴체인이 없다. 적분해 본 적 없는 ODE 모델을 게시하는
대신 같은 계를 scipy LSODA로 한 번 더 옮겨 적분했고, 아래 모든 숫자는
python3 flu_reference_check.py의 출력이다. 두 이식본이 어긋나면 둘 중 하나가
틀린 것이다.
python3 flu_reference_check.py # 전체 (A0–A13)
python3 flu_reference_check.py --only A1 # 핵심 결과만
python3 flu_reference_check.py --list치료도 약도 없는 자연 경과:
| 항목 | 모델 | 목표 |
|---|---|---|
| 상기도 정점 역가 | 6.62 log₁₀ TCID50/mL | 6.0–7.0 |
| 정점 시각 | 51.5 h p.i. | 48–72 h |
| 배출 기간 (>LOD) | 6.3 d | 4.0–5.5 d ← 길다, 그대로 보고 |
| 증상 발현 | 24.2 h p.i. | 24–48 h |
| 정점 증상 점수 | 12.4 / 21 | 10–15 |
| 정점 체온 | 38.99 °C | 38.5–39.5 |
| 발열 기간 | 67 h | 48–96 h |
| 정점 IL-6 | 60 pg/mL | 20–100 |
| 감수성 상피 최저치 | 0.1 % of T₀ | <20 % (표적세포 제한) |
| 하기도 정점 역가 | 3.87 log₁₀ | 2–4 (합병증 없음) |
| CD8 확장 최고치 | 99 × 나이브 | 20–100 × |
가장 중요한 줄은 감수성 상피 최저치다. 감염이 표적세포 제한적이라는 것이 A1의 경계선을 물게 만드는 조건이다.
CAPSTONE-1 (Hayden 2018, NEJM 379:913, PMID 30184455):
| 평가변수 | 위약 (발표 / 모델) | 오셀타미비르 (발표 / 모델) | 발록사비르 (발표 / 모델) |
|---|---|---|---|
| 증상 완화까지 (TTAS) | 80.2 / 78.7 h | 53.8 / 63.5 h | 53.7 / 44.0 h |
| 바이러스 배출 중단 | 96.0 / 118.0 h | 72.0 / 85.2 h | 24.0 / 47.0 h |
| day-2 역가 변화 | −1.3 / −1.32 log₁₀ | −2.8 / −2.59 log₁₀ | −4.8 / −4.76 log₁₀ |
바이러스학적 열은 잘 맞고, 증상 열은 이 모델의 가장 약한 부분이다. 왜 그런지는 A8이 답한다 — 그리고 그 답이 이 모델에서 가장 검증 가능한 주장이다.
전체 14개 시나리오(페라미비르·파비피라비르·항체·병용·시점 변형·면역저하 숙주·
내성 프로파일·백신 접종 숙주)는 flu_reference_output.txt에 있다.
내성 아집단은 주입되지 않는다. 첫 복제 주기부터 돌연변이 항(μ = 2.5×10⁻⁵)이 야생형에 작용해 생겨나고, 약이 경쟁자를 제거하고 야생형이 가져갔을 표적세포를 넘겨줄 때 자란다.
투여 시점 × 효력 격자에서 나온 내성주 정점 역가 (log₁₀):
| 투여 (증상 발현 후) | 남은 T | Emax 0 | 0.9 | 0.99 | 0.999 | 0.9999 | 0.999999 |
|---|---|---|---|---|---|---|---|
| 0 h | 99.95 % | 2.58 | 6.19 | 6.19 | 6.19 | 6.19 | 6.19 |
| 12 h | 85.73 % | 2.58 | 2.15 | 2.75 | 2.88 | 2.90 | 2.90 |
| 24 h | 0.10 % | 2.58 | 2.53 | 2.53 | 2.53 | 2.53 | 2.53 |
| 48 h | 3.54 % | 1.21 | 1.21 | 1.21 | 1.21 | 1.21 | 1.21 |
| 72 h | 7.10 % | −0.22 | −0.22 | −0.22 | −0.22 | −0.22 | −0.22 |
넣지 않았는데 나온 것 두 가지:
- 효력 축을 따라 내성은 단순히 줄지 않는다. Emax = 0에서 내성주는 더 적합한 야생형에게 진다. 약이 좋아질수록 내성주는 지지 않게 된다 — 경쟁자가 제거되고 표적세포가 넘어오기 때문이다. 내성 선택은 약이 작동한 결과이지 실패한 결과가 아니다.
- 시간 축에는 놓치기 쉬운 전제 조건이 있다: 해방하려면 해방할 밭이 있어야 한다. 늦게 투여하면 내성이 거의 선택되지 않는데, 약이 약해서가 아니라 야생형이 이미 상피를 다 먹어치워 넘겨줄 것이 없기 때문이다. 내성 출현과 임상 이익은 같은 전제 조건을 공유하며, "더 일찍 치료하라"는 같은 정책이 둘 다를 늘린다.
CAPSTONE-1의 바이러스학적 평가변수는 바이러스 동역학만으로 재현된다. 증상 평가변수는 그렇지 않고, 이유는 수치가 아니라 구조에 있다.
증상 점수가 순전히 사이토카인 상태로 구동되면(WVIR = 0) 그 크기와 시점은 인터페론 정점에서 이미 정해지고, 그 정점은 중앙 등록 시점에 투여된 약이 작용하기 전에 지나간다. 그 구조에서는 어떤 항바이러스제도, 어떤 효력으로도 병을 단축하지 못한다.
WVIR은 증상 구동 중 그 순간의 역가를 따라가는 비율이다:
| WVIR | 발현 (h) | 위약 TTAS | 오셀타미비르 이익 | 발록사비르 이익 |
|---|---|---|---|---|
| 0.00 | 42.8 | 55.5 h | 0.0 h | 0.8 h |
| 0.20 | 33.2 | 66.2 h | 4.0 h | 8.8 h |
| 0.40 | 27.0 | 74.2 h | 9.8 h | 21.0 h |
| 0.60 (보정값) | 24.2 | 78.7 h | 15.2 h | 34.7 h |
| 0.80 | 23.0 | 82.5 h | 22.8 h | 46.5 h |
| 1.00 | 22.0 | 86.2 h | 32.7 h | 54.2 h |
CAPSTONE-1은 두 약 모두 26.5시간의 이익을 보고했다. 발표된 증상 평가변수는 사이토카인만으로 구동되는 증상 모델로는 설명할 수 없다. WVIR = 0.60은 그것을 맞추기 위해 치른 값이며, 이는 맞추기 편의가 아니라 반증 가능한 주장이다 — 환자가 느끼는 것의 상당 부분이 이미 지나간 사이토카인 파동의 크기가 아니라 오늘의 복제를 따라간다는 주장.
각 연산자를 t_rx부터 혼자서 95% 로 켠 결과 (PK 없음, 동등 비교):
| 연산자 | TTAS (h) | 배출 (h) | day-2 (log) | AUC (log·d) | 상피 손실 |
|---|---|---|---|---|---|
| PRODUCTION / RELEASE (p) | 66.2 | 88.5 | −2.63 | 13.89 | 85.1 % |
| TRANSCRIPTION (E→I) | 73.5 | 114.5 | −1.52 | 18.23 | 85.7 % |
| ENTRY (β) | 78.2 | 117.5 | −1.34 | 18.92 | 84.1 % |
| VIRION CLEARANCE (c) | 65.8 | 88.0 | −2.70 | 13.24 | 84.2 % |
| INFECTED-CELL DEATH (δ) | 32.2 | 29.0 | −4.16 | 9.56 | 72.4 % |
| TARGET PROTECTION (T→R) | 78.5 | 117.5 | −1.33 | 18.94 | 84.7 % |
| (없음: 위약) | 78.7 | 118.0 | −1.32 | 19.00 | 85.6 % |
- ENTRY와 TARGET PROTECTION은 24시간 하강을 거의 움직이지 못한다. 연산자가 켜지는 순간 이미 감염된 세포는 계속 생산하기 때문이다. 이들은 다음 세대만 막는다.
- PRODUCTION/RELEASE와 VIRION CLEARANCE는 거의 같은 크기로 역가를 떨어뜨린다.
준정상상태에서 역가가
p·I/c이므로 이 둘은 같은 분수의 분자와 분모다. - INFECTED-CELL DEATH가 압도적으로 강하다. 이것만이 원천을 제거하고 나머지는 조절할 뿐이다. 허가된 항인플루엔자제 중 이 방식으로 작용하는 것은 없고, 면역계가 그렇게 한다 — 그래서 자연 경과가 그것에 작용하는 어떤 약보다도 결정적이다.
- TRANSCRIPTION이 같은 95%에서 PRODUCTION보다 약하다. 이는 자명하지 않다: 아직 성숙하지 않은 세포만 돌려세우는 반면, 생산 차단은 이미 성숙한 세포까지 침묵시키기 때문이다. 발록사비르가 원장에서 NAI를 이기는 것은 더 약한 지점에 작용하면서도 달성 효력이 높기 때문이지, 작용점이 더 좋아서가 아니다.
- 예방 투여는 같은 분자를 정점 반대편에서 쓴 것이다 (A10). 감염 후 12시간
이내에 투여하면 모델은 질병을 아예 기록하지 않고, 48시간에 투여하면 질병을
단축한다. 두 체제를 가르는 것은
(정점 시각 − 투여 시각)의 부호다. BLOCKSTONE (PMID 32640124)이 보고한 것도 기간이 아니라 발병 확률의 감소(1.9 % 대 13.6 %)였다. - 코르티코스테로이드 (A9). 방향은 맞고 크기는 작다. 스테로이드는 증상 점수를 낮추면서 바이러스 AUC(12.96 → 13.07)와 배출을 늘린다 — 사망률 항 하나 없이 관찰연구의 신호 방향이 기전만으로 재현된다. 다만 크기가 작은 것은 약에 대한 안심이 아니라 이 보정에 대한 단서다: 이 파라미터화에서는 IFN 표적 보호도 CD8 살상도 제거의 율속 단계가 아니어서 억제해도 잃을 것이 적다. CD8이 율속인 숙주 (고령·면역억제 — 관찰 신호가 나온 바로 그 집단)라면 훨씬 큰 대가가 나온다.
- 면역저하 숙주에서는 창이 닫히지 않는다 (A12). 정상 숙주에서 약은 어차피 바이러스를 제거했을 면역반응과 경쟁하므로 한계 가치가 시간에 따라 사라진다 (24 / 96 / 168 h에 9.37 → 1.90 → 0.00 log·d). 그 반응을 없애면 감쇠가 느려진다 (11.89 → 4.95 → 0.08).
- 하기도와 세균 이차감염 (A11). 합병증 없는 성인에서 세균 부하는 약 4 log 올라가지만 어떤 치료군에서도 임계값을 넘지 않는다. 임계값 자체가 보정되지 않은 규정값이므로 이 모듈은 치료군의 순위만 매길 수 있고 누가 폐렴에 걸리는지는 말할 수 없다.
문헌과 어긋나는 지점은 감추지 않고 번호를 붙여 보고한다.
| # | 어디서 | 내용 |
|---|---|---|
| 1 | A2 | Hill 기울기 1(Michaelis)로는 CAPSTONE-1의 24시간 역가 하강(−4.8 log₁₀)을 어떤 Emax로도 만들 수 없다 (잔여 생산 분율의 하한이 EC50/(C+EC50)이므로 −3.3 log₁₀ 근처에서 포화). 시험 자료는 효력이 아니라 농도-반응 곡선의 모양에 대한 증거다. 아울러 보정된 in-vivo EC50은 유리약물 기준 in-vitro 값보다 13배 낮다. |
| 2 | A12 | 면역저하 숙주에서 늦은 치료가 가치를 유지한다는 예측. 임상 관행과는 맞지만 이를 검증한 무작위 시험이 없다 — 반증되지 않았을 뿐 검증된 것이 아니다. |
| 3 | A8 | 증상이 바이러스를 조금이라도 따라간다면 발록사비르가 오셀타미비르보다 증상 이익이 커야 한다. CAPSTONE-1은 day-2 역가가 100배 다른데도 53.7 대 53.8시간으로 구별하지 못했다. |
| 4 | A6 | 결정론적 모델이므로 10⁻⁴ 수준의 내성 계통이 모든 가상 환자에게 "존재"한다. 실제 I38T 출현은 성인의 약 10 %에서 일어나는 확률적 정착 사건이다. 위 격자는 바이러스 부하 예측이 아니라 선택압으로 읽어야 한다. |
| 5 | A7 | 순서가 거꾸로 나온다. 이 모델에서 경쟁적 해방은 거의 전적으로 T(t_rx)가 지배하고, 야생형을 늦추는 것은 무엇이든 밭을 더 남긴다 — 기존 면역을 포함해서. 그래서 사전 면역이 있는 성인이 내성을 가장 많이 선택하고 소아가 가장 적게 선택한다 (내성 AUC 17.90 대 3.19). 소아에서 I38T가 더 흔하다는 관찰과 반대 방향이며, 잘 섞인(well-mixed) 상피 가정이 이 질문에는 틀렸다는 가장 분명한 신호다. 다만 면역저하 숙주(내성 AUC 29.33)는 두 기전이 같은 방향을 가리켜 모델이 맞춘다. |
- 혼합 단위 규약. 세포는 절대 개수, 바이러스는 세척액 mL당 역가, β가 표본
부피를 흡수한다. 결과적으로 (a) 흡수항
−β·T·V는 단위가 cells/day라서 역가에서 뺄 수 없고 (표준 관행대로 생략,c에 흡수), (b) β와 p는 역가 자료만으로 개별 식별이 불가능하다 — 성장속도가 고정하는 것은 곱β·T₀·p뿐이고p는 역가의 척도가 정한다. 어느 쪽도 혼자 인용해서는 안 된다. - 전사 차단은 eclipse 세포를 얼리지 않는다. 세포는 언제나
KECL로 eclipse를 떠나고, 약은 그 세포가 어디로 가는지를 정한다 (생산성 대 낙태감염). 출구를 막는 쪽으로 쓰면 eclipse 저장고가 생겨 약이 듣기 시작한 뒤로도 며칠간 생산성 세포를 계속 공급하고, 그러면 어떤 효력으로도 발록사비르의 24시간 하강을 재현할 수 없다. - 소멸 바닥(extinction floor). 결정론적 ODE는 계통이 10⁻²⁰ 세포까지 떨어졌다가 표적세포가 회복되면 되살아나게 둔다. 감염 세포 1개 근처에서 방출을 매끄럽게 0으로 보내는 항이 없으면 상피 재생 항이 가짜 2차 유행을 만든다.
- 결정론적이고 잘 섞인 모델이다. 인플루엔자는 공간적으로 구조화된 점막에서 복제하며, 확률적 소멸과 계통의 공간적 분리는 하필 이 모델이 묻는 내성 질문에 중요하다 (불일치 4·5번).
- 증상은 바이러스 부하와의 결합계수(
WVIR)를 보정한 단일 구획 복합 점수다. 이 파라미터는 이 모델에서 가장 방어하기 어려우면서 가장 중요한 값이다. 모든 인플루엔자 임상시험의 모든 증상 평가변수가 여기에 달려 있기 때문이다. - 세균 이차감염 임계값은 보정된 것이 아니라 규정된 것이다 (A11).
- 단클론항체·파비피라비르·페라미비르의 PD는 가정값이다. 임상자료에 보정된 것은 오셀타미비르와 발록사비르뿐이다.
교육 및 연구 목적의 QSP 모델입니다. 독립적으로 검증되지 않았으며 임상 의사결정, 처방, 규제 제출에 사용해서는 안 됩니다.