Browse Source

Adding diffusion koefficients uncertainties

Andrej 2 years ago
parent
commit
7646322c7c
4 changed files with 138 additions and 74 deletions
  1. 1 1
      models/humanHG.json
  2. 70 20
      models/humanHG_parameters1.json
  3. 2 2
      pythonScripts/cModel.py
  4. 65 51
      pythonScripts/compartmentModel.ipynb

+ 1 - 1
models/humanHG.json

@@ -56,7 +56,7 @@
          "intestine->gut":"kR",
          "intestine->inorganicMercury":"kD",
          "intestine->feces":"kF",
-         "inorganicMercury->feces":"kF1"}},
+         "inorganicMercury->feces":"kIF"}},
     "pcComments":"always related to outflow of organs", 
     "partitionCoefficients":{
        "kidney":"kidneyPC",

+ 70 - 20
models/humanHG_parameters1.json

@@ -1,5 +1,5 @@
 {"parameters":{
-        "bodyWeight":{"value":70,"units":"kg"},
+        "bodyWeight":{"value":67.77,"units":"kg","dist":"lognormal","cv":0.26},
         "bwPower0p75":{"derived":"bwPower0p75"},
         "kidneyPC":{"value":4.0},
         "richlyPerfusedPC":{"value":1},
@@ -66,17 +66,27 @@
         "gutVolumeFraction":{"value":0.017,"dist":"normal","cv":0.15},
         "intestineVolumeFraction":{"value":0.14,"dist":"normal","cv":0.3},
         "commentDiff":"X",
-        "kRBC":{"value":0.60,"unit":"l/min"},
-        "kU":{"value":0,"unit":"l/min"},
-        "commentkH":"assume pc-times larger input flow, 2.823e-6*248.7",
-        "kH":{"value":2.823e-6,"unit":"l/min"},
-        "kBR":{"value":4.033e-3,"unit":"l/min"},
-        "kI":{"value":4.033e-6,"unit":"l/min"},
-        "kB":{"value":4.033e-5,"unit":"l/min"},
-        "kD":{"value":4.033e-5,"unit":"l/min"},
-        "kF":{"value":8.066e-5,"unit":"l/min"},
-        "kF1":{"value":0,"unit":"l/min"},
-        "kR":{"value":2.016e-3,"unit":"l/min"},
+        "kB":{"derived":"kB"},
+        "kBR":{"derived":"kBR"},
+        "kD":{"derived":"kD"},
+        "kF":{"derived":"kF"},
+        "kH":{"derived":"kH"},
+        "kI":{"derived":"kI"},
+        "kIF":{"derived":"kIF"},
+        "kRBC":{"derived":"kRBC"},
+        "kR":{"derived":"kR"},
+        "kU":{"derived":"kU"},
+        "commentDiffScaled":"X",
+        "kBScaled":{"value":1.67e-6,"unit":"l/min","dist":"lognormal","cv":0.3},
+        "kBRScaled":{"value":1.67e-4,"unit":"l/min","dist":"lognormal","cv":0.3},
+        "kDScaled":{"value":1.67e-6,"unit":"l/min","dist":"lognormal","cv":0.3},
+        "kFScaled":{"value":3.33e-6,"unit":"l/min","dist":"lognormal","cv":0.36},
+        "kHScaled":{"value":1.17e-7,"unit":"l/min","dist":"lognormal","cv":0.25},
+        "kIScaled":{"value":1.67e-5,"unit":"l/min","dist":"lognormal","cv":0.3},
+        "kIFScaled":{"value":0,"unit":"l/min","noDist":"lognormal","cv":0.3},
+        "kRBCScaled":{"value":2.5e-2,"unit":"l/min","dist":"lognormal","cv":0.3},
+        "kRScaled":{"value":8.33e-5,"unit":"l/min","dist":"lognormal","cv":0.3},
+        "kUScaled":{"value":0,"unit":"l/min"},
         "zero":{"value":0},
         "threeQuarters":{"value":0.75},
         "heavisideTransition":{"value":100},
@@ -93,6 +103,10 @@
            "W2":"heavisideTransition",
            "C":"hairVolumeMax"}},
     "derivedParameters":{
+       "bwPower0p75":{
+          "type":"power",
+          "a":"bodyWeight",
+          "n":"threeQuarters"},
        "cardiacOutput":{
           "type":"product",
           "a":"cardiacOutputScaled",
@@ -181,24 +195,60 @@
            "type":"product",
            "a":"hairVolumeFraction",
            "b":"bodyWeight"},
-        "hairGrowthStop":{
+       "hairGrowthStop":{
            "type":"sum",
            "a":"hairGrowthStart",
            "b":"hairGrowthDuration"},
-        "hairGrowthDuration":{
+       "hairGrowthDuration":{
             "type":"ratio",
             "a":"hairVolumeMax",
             "b":"hairGrowth"},
-        "hairGrowth":{
+       "hairGrowth":{
             "type":"ratio",
             "a":"kH",
             "b":"hairPC"},
-       "bwPower0p75":{
-          "type":"power",
-          "a":"bodyWeight",
-          "n":"threeQuarters"},
        "hairPC":{
           "type":"ratio",
           "a":"hairPCBlood",
-          "b":"slowlyPerfusedPC"}}
+          "b":"slowlyPerfusedPC"},
+       "kB":{
+          "type":"product",
+          "a":"kBScaled",
+          "b":"bwPower0p75"},
+       "kBR":{
+          "type":"product",
+          "a":"kBRScaled",
+          "b":"bwPower0p75"},
+       "kD":{
+          "type":"product",
+          "a":"kDScaled",
+          "b":"bwPower0p75"},
+       "kF":{
+          "type":"product",
+          "a":"kFScaled",
+          "b":"bwPower0p75"},
+       "kH":{
+          "type":"product",
+          "a":"kHScaled",
+          "b":"bwPower0p75"},
+       "kI":{
+          "type":"product",
+          "a":"kIScaled",
+          "b":"bwPower0p75"},
+       "kIF":{
+          "type":"product",
+          "a":"kIFScaled",
+          "b":"bwPower0p75"},
+       "kRBC":{
+          "type":"product",
+          "a":"kRBCScaled",
+          "b":"bwPower0p75"},
+       "kR":{
+          "type":"product",
+          "a":"kRScaled",
+          "b":"bwPower0p75"},
+       "kU":{
+          "type":"product",
+          "a":"kUScaled",
+          "b":"bwPower0p75"}}
 }

+ 2 - 2
pythonScripts/cModel.py

@@ -78,9 +78,9 @@ class model:
          dfdPC=lambda t,f=f,pc=fpc:-f(t)/pc(t)
          dPC=function.generate(dfdPC,DPC)
          dfdQ=lambda t,f=f,q=fq: f(t)/q(t)
-         dQ={x:lambda t,df=dfdQ,D=DQ,x=x: df(t)*D[x](t) for x in DQ}
+         dQ=function.generate(dfdQ,DQ)
          dfdV=lambda t,f=f,v=fv: -f(t)/v(t)
-         dV={x:lambda t,df=dfdV,D=DV,x=x: df(t)*D[x](t) for x in DV}
+         dV=function.generate(dfdV,DV)
          return function.Object(f,[dPC,dQ,dV])
       else:
          f=sign*q/v/pc

File diff suppressed because it is too large
+ 65 - 51
pythonScripts/compartmentModel.ipynb


Some files were not shown because too many files changed in this diff