微分方程式にして計算してみた

以前の計算では世代間で感染するモデルを元に、数列として計算していましたが、今回はこれを微分方程式に直してみました。
まず時間(t)の関数として、未確認キャリアの数 f(t) と、観測される感染者数 g(t) の二つの関数を考えます。

モデルに登場するパラメータとしては
  潜伏期間: Te
  感染力のある発症者が自己隔離するまでの時間: Ti
  無症状者が感染力を持ったまま活動している時間: kTi
の三つを考えます。全体の感染者数が少ないため、集団免疫により感染が広がらなくなる効果は無視します。

p を感染者の中の無症状者の割合、C を感染力のある人が他の人にどれだけ移しやすいかを表す定数とすると、微分方程式は以下のようになります。
  f'(t) = pC{f(t-Te)-f(t-Te-kTi)}
  g'(t) = (1-p)C{f(t-Te)-f(t-Te-kTi)} + C{g(t-Te)-g(t-Te-Ti)}

これを解くと、一般解は a, b, c を定数、Ta, Ts を時定数として、以下の形の式になります。
  f(t) = a・exp(t/Ta)
  g(t) = b・exp(t/Ta) + c・exp(t/Ts)

これを f'(t) に関する式に代入すると
  a/Ta・exp(t/Ta) = apC[exp(-Te/Ta)-exp{-(Te+kTi)/Ta}]・exp(t/Ta)
より、
  1/Ta = pC[exp(-Te/Ta)-exp{-(Te+kTi)/Ta}]
  exp(-Te/Ta)-exp{-(Te+kTi)/Ta} = 1/pCTa --- (1)

g'(t) に関する式の内 Ts に関する項だけを取り出して考えると
  c/Ts・exp(t/Ts) = cC[exp(-Te/Ts)-exp{-(Te+Ti)/Ts}]・exp(t/Ts)
より、
  1/Ts = C[exp(-Te/Ts)-exp{-(Te+Ti)/Ts}]
  exp(-Te/Ts)-exp{-(Te+Ti)/Ts} = 1/CTs --- (2)

g'(t) に関する式の内 Ta に関する項だけを取り出して考えると
  b/Ta・exp(t/Ta) = a(1-p)C[exp(-Te/Ta)-exp{-(Te+kTi)/Ta}・exp(t/Ta) + bC[exp(- Te/Ta)-exp{-(Te+Ti)/Ta}]・exp(t/Ta)
より (1) を使って、
  b/Ta = a(1-p)/p/Ta + bC[exp(-Te/Ta)-exp{-(Te+Ti)/Ta}]
  bC[exp(-Te/Ta)-exp{-(Te+Ti)/Ta}] = b/Ta - a(1-p)/p/Ta

k > 1 の条件では、Ta < Ts となることを利用すると、t→∞ では Ta に関する項が支配的となるため、t→∞ における感染経路不明者の割合を u(∞) とすると
  g'(t→∞) ≒ a(1-p)/p/Ta・exp(t/Ta) + {b/Ta - a(1-p)/p/Ta}・exp(t/Ta)
より
  u(∞) = a(1-p)/b/p
となります。

また
  g'(0) = (1-p)aC[exp(-Te/Ta)-exp{-(Te+kTi)/Ta}] + bC[exp(-Te/Ta)-exp{-(Te+Ti)/Ta}] + cC{exp(-Te/Ts)-exp(-(Te+Ti)/Ts}]
    = a(1-p)/p/Ta + {b-a(1-p)/p}/Ta + c/Ts
    = b/Ta + c/Ts
t=0 における感染経路不明者の割合を u(0) とすると
  a(1-p)/p/Ta/u(0) = b/Ta + c/Ts
  c = {a(1-p)/p/u(0) - b}・Ts/Ta

p, k, Te, Ti が決まっている場合、実行再生産数から C が求まり、これから (1) と (2) を使って、Ta と Ts が計算でき、時間 0 と 無限大における感染経路不明者数の割合から、a, b, c の比率が求まり、方程式が解けます。

数列として計算していた場合と異なるのは、u(∞) が C を含む関数となり、実効再生産数が 1 より大きい場合は感染経路不明者の割合は低くなり、実効再生産数が 1 より小さい場合は感染経路不明者の割合は高くなりまる。