|
// 放射能[Bq/day] = 流入元の放射能[Bq/day] * 流入元の生物学的崩壊定数[/day] * 流入割合[-] |
|
ini += Act.IterNow[inflow.Organ.Index].ini * beforeBio * inflow.Rate; |
|
ave += Act.IterNow[inflow.Organ.Index].ave * beforeBio * inflow.Rate; |
|
end += Act.IterNow[inflow.Organ.Index].end * beforeBio * inflow.Rate; |
|
// 放射能[Bq/day] = 流入元の放射能[Bq/day] * 流入元の生物学的崩壊定数[/day] * 流入割合[-] |
|
ini += Act.IterNow[inflow.Organ.Index].ini * beforeBio * inflow.Rate; |
|
ave += Act.IterNow[inflow.Organ.Index].ave * beforeBio * inflow.Rate; |
|
end += Act.IterNow[inflow.Organ.Index].end * beforeBio * inflow.Rate; |
FlexIDでは、コンパートメント間の放射能の移動については計算時間メッシュ内で一定であるものとして計算するため、移動元の平均放射能のみが重要なはずである。蓄積コンパートメントはこの例外であり、計算時間メッシュ内での崩壊定数を考慮した減衰を計算するために初期放射能iniと末期放射能endの計算が行われる。
このことを念頭に上に示す実装箇所を見ると、流入する放射能についてiniとendをaveとは別建てで計算しており、何か間違ったことをしているように見える。
FlexID/FlexID.Calc/SubRoutine.cs
Lines 97 to 100 in ff6601e
FlexID/FlexID.Calc/SubRoutine.cs
Lines 124 to 127 in ff6601e
FlexIDでは、コンパートメント間の放射能の移動については計算時間メッシュ内で一定であるものとして計算するため、移動元の平均放射能のみが重要なはずである。蓄積コンパートメントはこの例外であり、計算時間メッシュ内での崩壊定数を考慮した減衰を計算するために初期放射能iniと末期放射能endの計算が行われる。
このことを念頭に上に示す実装箇所を見ると、流入する放射能についてiniとendをaveとは別建てで計算しており、何か間違ったことをしているように見える。