ROS effects#

using ModelingToolkit
using OrdinaryDiffEq, DiffEqCallbacks
using Plots
using CSV
using DataFrames
using Dates
using CaMKIIModel
using CaMKIIModel: second, μM
Plots.default(lw=1.5)

Setup model#

sys = build_neonatal_ecc_sys(simplify=true, reduce_iso=true, reduce_camk=true)
tend = 205second
prob = ODEProblem(sys, [], tend)
stimstart = 30second
stimend = 120second
@unpack Istim = sys
callback = build_stim_callbacks(Istim, stimend; period=1second, starttime=stimstart)
alg = KenCarp47()
KenCarp47(; linsolve = nothing, nlsolve = OrdinaryDiffEqNonlinearSolve.NLNewton{Rational{Int64}, Rational{Int64}, Rational{Int64}, Nothing}(1//100, 10, 1//5, 1//5, false, true, nothing), precs = DEFAULT_PRECS, smooth_est = true, extrapolant = linear, controller = PI, autodiff = ADTypes.AutoForwardDiff(),)

Comparisons#

@time sol = solve(prob, alg; callback)
  4.506558 seconds (4.76 M allocations: 461.088 MiB, 2.06% gc time, 80.73% compilation time)
retcode: Success
Interpolation: 3rd order Hermite
t: 4071-element Vector{Float64}:
      0.0
      0.019333123284849308
      0.09098129546757994
      0.20735582943983855
      0.45611910276862533
      1.0472562928406122
      2.0342667657223696
      3.451776641148454
      6.733792423912806
     12.450117081023194
      ⋮
 153525.25012366346
 158165.8598019807
 163776.6411118618
 169611.6642461836
 176342.19489586214
 183684.1140466068
 191258.90946281631
 199427.37350661293
 205000.0
u: 4071-element Vector{Vector{Float64}}:
 [0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113  …  0.9911, 0.61179, 0.09243, 0.00702, 0.966, 0.22156, 0.07192, 150952.75035000002, 13838.37602, -68.79268]
 [0.12112999999999999, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113  …  0.9911240298625772, 0.61179209692054, 0.09242766669618695, 0.007020208561323646, 0.9660018276402699, 0.2215639938807744, 0.07192100954852718, 150952.7504077194, 13838.375711519551, -68.79732946186226]
 [0.12113000000531939, 0.12113000000024629, 0.12112999999996936, 0.12112999999998814, 0.12112999999999756, 0.12112999999999959, 0.12112999999999993, 0.12112999999999999, 0.12112999999999999, 0.12113  …  0.9912126672514168, 0.6118012235185329, 0.09241901973901424, 0.00702008986027517, 0.9660085993318799, 0.2215787945110049, 0.0719247622956487, 150952.75062244057, 13838.374513299192, -68.81607005265552]
 [0.12113000352486501, 0.12113000071464508, 0.12113000013259279, 0.12113000002221791, 0.12113000000324825, 0.12113000000037327, 0.12113000000001811, 0.12112999999999313, 0.12112999999999685, 0.12112999999999911  …  0.9913552605900093, 0.6118207061207029, 0.09240497563401104, 0.007017234889558555, 0.9660195931792828, 0.22160283236040595, 0.07193089713793946, 150952.7509740238, 13838.372555328333, -68.84681913285226]
 [0.12113031246875829, 0.12113011855881943, 0.12113004261415268, 0.1211300145224514, 0.1211300046922744, 0.12113000143526587, 0.12113000041393686, 0.12113000011158663, 0.12113000002760377, 0.12113000000599933  …  0.9916544804172969, 0.6118814305717646, 0.0923749578279845, 0.0070030143052343926, 0.9660430731013478, 0.2216542075240971, 0.07194417536281429, 150952.7517373371, 13838.368384399068, -68.91207316777846]
 [0.12113664606535107, 0.12113391404700644, 0.12113223891788369, 0.12113124406405289, 0.12113067160353039, 0.12113035232069681, 0.12113017964115647, 0.12113008904213221, 0.12113004292180056, 0.12113002016884632  …  0.9923360674037417, 0.6121262615921059, 0.09230364339951613, 0.006946470397388757, 0.9660987611411453, 0.22177624785138977, 0.07197662797870664, 150952.75361533565, 13838.358559292059, -69.06429960994137]
 [0.12116110329207945, 0.12115245907382813, 0.12114597183088456, 0.12114118504637392, 0.12113771307938385, 0.12113523852752958, 0.12113350680291797, 0.1211323190247843, 0.12113152423329539, 0.1211310117677002  …  0.9933874251519441, 0.6128292434834117, 0.09218462776986637, 0.0068337541728754475, 0.9661914345949096, 0.2219798989175973, 0.07203363801526848, 150952.75694915713, 13838.34240329337, -69.31024285744343]
 [0.12120423665656944, 0.12118928168345969, 0.12117695409406527, 0.12116690224321353, 0.12115880345210753, 0.12115236793976296, 0.12114734156698287, 0.12114350756515986, 0.12114068746411359, 0.12113874145120666  …  0.9947260029718878, 0.61441610851668, 0.09201383579531924, 0.006675512062656749, 0.9663239343003682, 0.22227216398019892, 0.0721216517759309, 150952.76215620188, 13838.319723120678, -69.64637448767432]
 [0.1212995420290433, 0.12127783468666772, 0.1212589040374779, 0.1212425879351912, 0.12122873583441052, 0.12121721111566237, 0.12120789316717222, 0.12120067917599112, 0.12119548558727024, 0.1211922491964778  …  0.9971828595843288, 0.6201838932607627, 0.09161908329520764, 0.006355039713677859, 0.9666286957812559, 0.22294828828976576, 0.07235305497134359, 150952.77598869594, 13838.2694938995, -70.35063788657428]
 [0.1214553971027536, 0.12143259661681072, 0.12141268299068807, 0.12139558631643757, 0.12138124198529929, 0.12136959056512987, 0.12136057763401646, 0.12135415355743052, 0.1213502731984364, 0.12134889555279481  …  0.9999327439121073, 0.6347673874618533, 0.09093422465365385, 0.005926150085676071, 0.9671554512230358, 0.22412560303273427, 0.07284451729172227, 150952.80529264064, 13838.18882346682, -71.35304509818071]
 ⋮
 [0.136944495257914, 0.13694464168446063, 0.13694477927589319, 0.13694490832270664, 0.13694502909967796, 0.13694514186691303, 0.13694524687081178, 0.1369453443449584, 0.13694543451094182, 0.13694551757911558  …  1.0026877925575108, 0.6766722833255902, 0.0015108660008013646, 0.006285742961034189, 0.9997476285219717, 0.9996108819600831, 0.21502044147161872, 151185.30233112013, 13607.749833006827, -70.43082440918054]
 [0.13664016534264506, 0.1366400331279381, 0.13663989917287367, 0.13663976347078083, 0.13663962601534282, 0.13663948680057011, 0.13663934582077958, 0.13663920307057698, 0.13663905854483405, 0.13663891223867514  …  1.0027051646252927, 0.6747144423902359, 0.0015226265701692074, 0.00630869251132918, 0.9997446880935223, 0.9997062624414005, 0.21356234238165345, 151213.6576494461, 13579.426508631252, -70.37723151711738]
 [0.1362414605254136, 0.13624117441594705, 0.13624089059415417, 0.13624060888608422, 0.13624032912718922, 0.13624005116169596, 0.13623977484202918, 0.13623950002827942, 0.1362392265877109, 0.1362389543943081  …  1.0027275840143766, 0.6724373059628208, 0.0015363302060714499, 0.006335401714922122, 0.9997412411483091, 0.9997341725464178, 0.2118959175846982, 151247.1533714861, 13545.998515545498, -70.31510224724597]
 [0.13581920216270763, 0.1358188513034548, 0.13581850453059624, 0.13581816159716312, 0.1358178222695365, 0.1358174863265588, 0.13581715355871082, 0.13581682376735918, 0.13581649676405635, 0.13581617236989735  …  1.0027511617889564, 0.6701344182004167, 0.0015502379269453598, 0.006362431269317443, 0.9997377231755967, 0.9997378359259564, 0.21023439044504946, 151281.09701808463, 13512.139339623407, -70.25249211840398]
 [0.13533918755768654, 0.13533880976553916, 0.13533843694677725, 0.13533806882010846, 0.13533770511944831, 0.13533734559290653, 0.13533699000185287, 0.13533663812005645, 0.1353362897328906, 0.13533594463659865  …  1.0027778381735508, 0.6675367953217555, 0.0015660024919753083, 0.006392942940490192, 0.9997337138514424, 0.999735422516465, 0.2083826667107878, 151319.15383306387, 13474.185747617707, -70.18213292915296]
 [0.13483207932686891, 0.1348316949295837, 0.13483131588740194, 0.13483094190623104, 0.13483057270787868, 0.13483020802899134, 0.13482984762008002, 0.13482949124461824, 0.13482913867821186, 0.13482878970783113  …  1.0028059363845845, 0.6647624336093093, 0.0015829377999888926, 0.00642555866251243, 0.9997293823003751, 0.9997313503264379, 0.206427932151761, 151359.36895294566, 13434.084114116045, -70.10728981816584]
 [0.13432970515101228, 0.13432932255258645, 0.13432894547470195, 0.13432857361953415, 0.13432820670535936, 0.1343278444654811, 0.13432748664724223, 0.13432713301111254, 0.13432678332984782, 0.13432643738771197  …  1.002833693458643, 0.6619592743096098, 0.001600157158632393, 0.006458544300803309, 0.9997249530520707, 0.999726943082142, 0.20447531389534854, 151399.48570823882, 13394.082755688212, -70.03198079055889]
 [0.13381191387915126, 0.13381153670375415, 0.13381116512874722, 0.13381079885627492, 0.1338104376045839, 0.13381008110694892, 0.1338097291106855, 0.13380938137623702, 0.13380903767633368, 0.13380869779521487  …  1.0028622311424582, 0.6590016440086386, 0.0016184463726736293, 0.006493384188983989, 0.9997202209587297, 0.9997221973027172, 0.2024385339404032, 151441.23701638906, 13352.452891572486, -69.95285215574391]
 [0.13347257294853768, 0.13347220034900273, 0.13347183337487792, 0.1334714717294034, 0.1334711151318615, 0.13347076331650717, 0.13347041603158324, 0.13347007303841205, 0.13346973411055676, 0.13346939903304705  …  1.0028808984916584, 0.6570221579287225, 0.001630757442566722, 0.006516724021089381, 0.999717019859629, 0.9997189832869459, 0.20108851592438548, 151468.85017708497, 13324.92061087142, -69.90007814148863]

ROS 0.1uM

prob2 = remake(prob, p=[sys.ROS => 0.1μM])
@time sol2 = solve(prob2, alg; callback)
  1.399586 seconds (63.57 k allocations: 215.081 MiB, 7.71% gc time)
retcode: Success
Interpolation: 3rd order Hermite
t: 4072-element Vector{Float64}:
      0.0
      0.019333123284849367
      0.09098129546758021
      0.20735582943983916
      0.45611910276862666
      1.0472562928406153
      2.0342667657223754
      3.451776641148464
      6.733792423912826
     12.45011708102323
      ⋮
 152613.47237072335
 157039.85798296845
 162443.11402596254
 168307.23482638452
 175796.88753362198
 183286.54024085944
 192001.05125983027
 201547.44902060498
 205000.0
u: 4072-element Vector{Vector{Float64}}:
 [0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113  …  0.9911, 0.61179, 0.09243, 0.00702, 0.966, 0.22156, 0.07192, 150952.75035000002, 13838.37602, -68.79268]
 [0.12112999999999999, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113  …  0.9911240298625772, 0.61179209692054, 0.09242766669618695, 0.007020208561323646, 0.9660018276402699, 0.2215639938807744, 0.07192100954852718, 150952.7504077194, 13838.375711519551, -68.79732946186226]
 [0.12113000000531939, 0.12113000000024629, 0.12112999999996936, 0.12112999999998814, 0.12112999999999756, 0.12112999999999959, 0.12112999999999993, 0.12112999999999999, 0.12112999999999999, 0.12113  …  0.9912126672514168, 0.6118012235185329, 0.09241901973901424, 0.00702008986027517, 0.9660085993318799, 0.2215787945110049, 0.0719247622956487, 150952.75062244057, 13838.374513299192, -68.81607005265552]
 [0.12113000352486501, 0.12113000071464508, 0.12113000013259279, 0.12113000002221791, 0.12113000000324825, 0.12113000000037327, 0.12113000000001811, 0.12112999999999313, 0.12112999999999685, 0.12112999999999911  …  0.9913552605900093, 0.6118207061207029, 0.09240497563401104, 0.007017234889558555, 0.9660195931792828, 0.22160283236040595, 0.07193089713793946, 150952.7509740238, 13838.372555328333, -68.84681913285226]
 [0.12113031246875829, 0.12113011855881943, 0.12113004261415268, 0.1211300145224514, 0.1211300046922744, 0.12113000143526587, 0.12113000041393686, 0.12113000011158663, 0.12113000002760377, 0.12113000000599933  …  0.9916544804172969, 0.6118814305717646, 0.0923749578279845, 0.007003014305234393, 0.9660430731013478, 0.2216542075240971, 0.07194417536281429, 150952.7517373371, 13838.368384399068, -68.91207316777846]
 [0.12113664606535107, 0.12113391404700644, 0.12113223891788369, 0.12113124406405289, 0.12113067160353039, 0.12113035232069681, 0.12113017964115647, 0.12113008904213221, 0.12113004292180056, 0.12113002016884632  …  0.9923360674037417, 0.612126261592106, 0.09230364339951613, 0.006946470397388756, 0.9660987611411453, 0.22177624785138977, 0.07197662797870664, 150952.75361533565, 13838.358559292059, -69.06429960994139]
 [0.12116110329207945, 0.12115245907382813, 0.12114597183088456, 0.12114118504637392, 0.12113771307938385, 0.12113523852752958, 0.12113350680291797, 0.1211323190247843, 0.12113152423329539, 0.1211310117677002  …  0.9933874251519441, 0.6128292434834118, 0.09218462776986637, 0.006833754172875444, 0.9661914345949096, 0.2219798989175973, 0.07203363801526848, 150952.75694915713, 13838.34240329337, -69.31024285744344]
 [0.12120423665656949, 0.12118928168345965, 0.12117695409406525, 0.12116690224321351, 0.1211588034521075, 0.12115236793976294, 0.12114734156698287, 0.12114350756515986, 0.12114068746411359, 0.12113874145120666  …  0.9947260029718878, 0.6144161085166803, 0.09201383579531924, 0.006675512062656741, 0.9663239343003682, 0.22227216398019892, 0.0721216517759309, 150952.76215620188, 13838.319723120678, -69.64637448767434]
 [0.12129954202904335, 0.12127783468666774, 0.12125890403747792, 0.12124258793519122, 0.12122873583441056, 0.12121721111566242, 0.12120789316717229, 0.12120067917599121, 0.12119548558727035, 0.1211922491964779  …  0.9971828595843288, 0.620183893260763, 0.09161908329520764, 0.006355039713677853, 0.9666286957812559, 0.22294828828976576, 0.07235305497134359, 150952.77598869594, 13838.2694938995, -70.35063788657429]
 [0.12145539710275374, 0.12143259661681083, 0.12141268299068822, 0.12139558631643771, 0.12138124198529945, 0.12136959056513003, 0.12136057763401654, 0.12135415355743061, 0.12135027319843648, 0.12134889555279485  …  0.9999327439121074, 0.6347673874618536, 0.09093422465365385, 0.005926150085676066, 0.9671554512230358, 0.22412560303273427, 0.07284451729172227, 150952.80529264064, 13838.18882346682, -71.35304509818073]
 ⋮
 [0.1369989710494791, 0.1369991997702832, 0.13699941757293455, 0.13699962483527314, 0.13699982191469878, 0.13700000914953342, 0.13700018686027632, 0.13700035535076116, 0.13700051490922424, 0.1370006658092915  …  1.0026846394953108, 0.6770689509761135, 0.0015084831575797595, 0.006281094863345423, 0.9997482220905668, 0.999573487470715, 0.21531954921200003, 151179.65359574082, 13613.396671443046, -70.44170248253037]
 [0.1367172757178715, 0.13671719384527017, 0.13671710894634512, 0.13671702106812766, 0.13671693025509882, 0.13671683654935896, 0.13671673999078474, 0.13671664061717312, 0.13671653846437448, 0.13671643356641586  …  1.0027007872070886, 0.6751823062431298, 0.0015198153021169101, 0.006303207012166626, 0.999745392558506, 0.9996928143068632, 0.21390830813425782, 151206.82556242155, 13586.248015434101, -70.3900239070349]
 [0.13633766984799803, 0.13633740912997172, 0.13633715002233066, 0.1363368923790417, 0.1363366360619641, 0.1363363809403235, 0.13633612689022664, 0.13633587379421544, 0.13633562154085369, 0.13633537002434598  …  1.0027221909875392, 0.6729723552279588, 0.0015331064056944097, 0.00632912433476015, 0.9997420538594752, 0.9997310900052674, 0.21228514306535123, 151239.26274126166, 13553.871270220996, -70.32968086166315]
 [0.13591351691116396, 0.13591317569110334, 0.13591283827672337, 0.13591250443228592, 0.13591217393479493, 0.1359118465731487, 0.13591152214735536, 0.13591120046781432, 0.13591088135464752, 0.13591056463708467  …  1.0027459062332187, 0.6706451529276584, 0.0015471487208928343, 0.006356435022793611, 0.9997385060749734, 0.9997378193200733, 0.21060107947766224, 151273.58001379226, 13519.636743039333, -70.26635876848593]
 [0.13537767857548724, 0.13537730204588666, 0.13537693043838786, 0.1353765634736074, 0.1353762008872661, 0.13537584242918274, 0.13537548786234588, 0.13537513696205944, 0.13537478951515258, 0.1353744453192504  …  1.0027757042490888, 0.6677456536778709, 0.001564731495067874, 0.006390488797427009, 0.9997340377830025, 0.9997356982680169, 0.20853077166804287, 151316.1071643949, 13477.223908336626, -70.18777977304136]
 [0.134859110878647, 0.13485872674934557, 0.1348583479533964, 0.13485797419754256, 0.1348576052043797, 0.1348572407113011, 0.13485688046952196, 0.13485652424318467, 0.1348561718085266, 0.13485582295311763  …  1.0028044395920734, 0.6649115630440167, 0.0015820246964561256, 0.006423804722052264, 0.9997296165608176, 0.9997315806448879, 0.20653245670393722, 151357.21922401924, 13436.227658916194, -70.1113049735759]
 [0.1342817121826463, 0.13428133003869802, 0.1342809534234146, 0.13428058203897322, 0.13428021560365191, 0.13427985385075655, 0.13427949652763135, 0.13427914339474864, 0.13427879422486552, 0.13427844880224785  …  1.0028363398600344, 0.6616882027318823, 0.0016018284552183168, 0.006461735826504822, 0.9997245218269084, 0.9997265118954161, 0.2042876184919891, 151403.33708208363, 13390.2424798516, -70.02471454174034]
 [0.13368158601822516, 0.1336812105054631, 0.13368084060506177, 0.13368047601948413, 0.13368011646727795, 0.1336797616820037, 0.13367941141124695, 0.13367906541570737, 0.1336787234683582, 0.1336783853536696  …  1.0028694032176093, 0.6582452914003478, 0.0016231436854619063, 0.006502300087509243, 0.9997190010665935, 0.9997209724188424, 0.20192147632799587, 151451.81861238132, 13341.90219229395, -69.93267008536131]
 [0.13347264327070307, 0.13347227063632128, 0.13347190362839487, 0.13347154195013364, 0.13347118532079197, 0.1334708334745993, 0.1334704861597746, 0.1334701431376185, 0.1334698041816744, 0.13346946907695378  …  1.0028808944338115, 0.6570225846036165, 0.0016307550440619785, 0.006516719020231025, 0.9997170204585021, 0.999718983927008, 0.20108876988276675, 151468.84470879182, 13324.926015454703, -69.90008938888379]

ROS 0.5uM

prob3 = remake(prob, p=[sys.ROS => 0.5μM])
@time sol3 = solve(prob3, alg; callback)
  0.880758 seconds (63.27 k allocations: 214.945 MiB, 6.51% gc time)
retcode: Success
Interpolation: 3rd order Hermite
t: 4070-element Vector{Float64}:
      0.0
      0.01933312328485172
      0.09098129546759129
      0.20735582943986441
      0.4561191027686822
      1.047256292840743
      2.0342667657226237
      3.451776641148885
      6.7337924239136475
     12.45011708102475
      ⋮
 148407.71053766683
 152963.08286658817
 157518.4551955095
 163268.1543188535
 169694.74092358912
 177941.12476481107
 186187.50860603302
 195845.675555337
 205000.0
u: 4070-element Vector{Vector{Float64}}:
 [0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113  …  0.9911, 0.61179, 0.09243, 0.00702, 0.966, 0.22156, 0.07192, 150952.75035000002, 13838.37602, -68.79268]
 [0.12112999999999999, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113  …  0.9911240298625772, 0.61179209692054, 0.09242766669618695, 0.007020208561323646, 0.9660018276402699, 0.2215639938807744, 0.07192100954852718, 150952.7504077194, 13838.375711519551, -68.79732946186226]
 [0.12113000000531939, 0.12113000000024629, 0.12112999999996936, 0.12112999999998814, 0.12112999999999756, 0.12112999999999959, 0.12112999999999993, 0.12112999999999999, 0.12112999999999999, 0.12113  …  0.9912126672514168, 0.6118012235185329, 0.09241901973901424, 0.00702008986027517, 0.9660085993318799, 0.2215787945110049, 0.0719247622956487, 150952.75062244057, 13838.374513299192, -68.81607005265553]
 [0.12113000352486501, 0.12113000071464508, 0.12113000013259279, 0.12113000002221791, 0.12113000000324825, 0.12113000000037327, 0.12113000000001811, 0.12112999999999313, 0.12112999999999685, 0.12112999999999911  …  0.9913552605900093, 0.6118207061207029, 0.09240497563401104, 0.007017234889558553, 0.9660195931792828, 0.22160283236040595, 0.07193089713793946, 150952.7509740238, 13838.372555328333, -68.84681913285227]
 [0.12113031246875829, 0.12113011855881943, 0.12113004261415268, 0.1211300145224514, 0.1211300046922744, 0.12113000143526587, 0.12113000041393686, 0.12113000011158663, 0.12113000002760377, 0.12113000000599933  …  0.9916544804172969, 0.6118814305717646, 0.0923749578279845, 0.007003014305234387, 0.9660430731013478, 0.2216542075240971, 0.07194417536281429, 150952.7517373371, 13838.368384399068, -68.91207316777847]
 [0.1211366460653511, 0.12113391404700644, 0.1211322389178837, 0.1211312440640529, 0.12113067160353039, 0.12113035232069683, 0.12113017964115647, 0.12113008904213221, 0.12113004292180055, 0.12113002016884632  …  0.9923360674037418, 0.6121262615921063, 0.09230364339951613, 0.006946470397388735, 0.9660987611411453, 0.22177624785138977, 0.07197662797870664, 150952.75361533565, 13838.358559292059, -69.06429960994141]
 [0.12116110329207945, 0.12115245907382813, 0.12114597183088456, 0.1211411850463739, 0.12113771307938383, 0.12113523852752957, 0.12113350680291793, 0.12113231902478425, 0.12113152423329533, 0.12113101176770018  …  0.9933874251519443, 0.6128292434834123, 0.09218462776986637, 0.006833754172875412, 0.9661914345949096, 0.2219798989175974, 0.07203363801526849, 150952.75694915713, 13838.34240329337, -69.31024285744353]
 [0.12120423665656944, 0.12118928168345965, 0.12117695409406525, 0.12116690224321353, 0.12115880345210743, 0.12115236793976289, 0.12114734156698283, 0.1211435075651598, 0.12114068746411355, 0.12113874145120664  …  0.9947260029718881, 0.6144161085166808, 0.09201383579531924, 0.006675512062656691, 0.9663239343003682, 0.22227216398019903, 0.07212165177593094, 150952.76215620188, 13838.319723120678, -69.64637448767446]
 [0.1212995420290433, 0.1212778346866677, 0.12125890403747791, 0.1212425879351912, 0.12122873583441053, 0.12121721111566236, 0.12120789316717223, 0.12120067917599113, 0.12119548558727027, 0.12119224919647789  …  0.9971828595843293, 0.6201838932607651, 0.09161908329520757, 0.006355039713677761, 0.966628695781256, 0.22294828828976596, 0.07235305497134369, 150952.77598869594, 13838.2694938995, -70.35063788657448]
 [0.12145539710275362, 0.12143259661681072, 0.12141268299068811, 0.12139558631643761, 0.12138124198529934, 0.12136959056512993, 0.12136057763401649, 0.12135415355743055, 0.12135027319843647, 0.12134889555279485  …  0.9999327439121078, 0.6347673874618583, 0.09093422465365371, 0.005926150085675952, 0.967155451223036, 0.2241256030327346, 0.07284451729172246, 150952.80529264064, 13838.18882346682, -71.35304509818098]
 ⋮
 [0.13720912006533661, 0.13720991949051364, 0.13721069360180985, 0.13721144338253188, 0.13721216976279407, 0.13721287362306409, 0.13721355579742928, 0.1372142170766076, 0.13721485821072757, 0.13721547991189703  …  1.002672123678413, 0.678970311006764, 0.0014970539272432604, 0.0062588238933868855, 0.9997510563304199, 0.9992129260155501, 0.21677364954534015, 151153.32454080152, 13639.748604866636, -70.49393530669364]
 [0.1369783470150925, 0.13697854293283732, 0.13697872876213316, 0.1369789048461542, 0.13697907150950347, 0.13697922905945065, 0.13697937778707245, 0.1369795179683039, 0.1369796498649088, 0.1369797737253765  …  1.0026858353868378, 0.6769164796206232, 0.001509399378262874, 0.006282881542685529, 0.9997479938239396, 0.9995887201790881, 0.21520437239230722, 151181.8210281583, 13611.229537457612, -70.43752016589384]
 [0.1366846859653264, 0.13668458163557823, 0.13668447485401936, 0.136684365643624, 0.13668425402611717, 0.13668414002205842, 0.13668402365091806, 0.13668390493114793, 0.1366837838802468, 0.13668366051482037  …  1.0027026359922835, 0.6749830028086211, 0.0015210127084676383, 0.0063055436519340235, 0.9997450927562127, 0.9996989883262271, 0.21376078532456966, 151209.73220898717, 13583.345473641257, -70.38457338896255]
 [0.13627821790136063, 0.136277940846014, 0.13627766583705736, 0.1362773927104613, 0.13627712131106193, 0.13627685149197, 0.13627658311402632, 0.13627631604530002, 0.1362760501606249, 0.13627578534117163  …  1.00272552382619, 0.6726410744516013, 0.00153510205334041, 0.006333010877620564, 0.9997415509465565, 0.9997331350294371, 0.2120440151253054, 151244.14744399584, 13548.997291471083, -70.32065303692771]
 [0.13581327997497517, 0.13581292842519033, 0.13581258098335397, 0.13581223740164, 0.13581189744561728, 0.1358115608933594, 0.13581122753461897, 0.13581089717007172, 0.13581056961061416, 0.13581024467671962  …  1.002751491311949, 0.6701023470819524, 0.0015504320039824587, 0.006362807821046055, 0.999737673858053, 0.9997378278532048, 0.21021139014017595, 151281.56871601712, 13511.668616954506, -70.25162177440043]
 [0.135227197085615, 0.13522681671395925, 0.1352264414250984, 0.13522607093386743, 0.13522570497051756, 0.1352253432796896, 0.13522498561946628, 0.1352246317605, 0.13522428148520674, 0.13522393458702192  …  1.0027840515385484, 0.6669278540971403, 0.0015697104260778518, 0.00640009917728788, 0.999732767644386, 0.9997345875789514, 0.2079517132762076, 151328.02088514855, 13465.34318461949, -70.16567912133848]
 [0.1346637168343816, 0.13466333265176073, 0.13466295388709976, 0.1346625802448277, 0.1346622114453506, 0.13466184722398894, 0.13466148732999444, 0.13466113152564657, 0.13466077958541636, 0.13466043129519562  …  1.0028152453841637, 0.663829727717717, 0.001588654816176521, 0.006436530497661719, 0.999727914722595, 0.9997298997368159, 0.20577583585507456, 151372.7743944265, 13420.716792987138, -70.08219766429647]
 [0.1340359830559549, 0.13403560322338637, 0.13403522896530004, 0.1340348599834776, 0.13403449599582318, 0.13403413673528866, 0.13403378194888374, 0.13403343139676296, 0.13403308485138318, 0.13403274209672494  …  1.0028498893265507, 0.6602905482319706, 0.001610460937189975, 0.006478196508340264, 0.9997222906492309, 0.999724274568144, 0.20332321844986462, 151423.11463258122, 13370.522161909283, -69.98729455452413]
 [0.13347275769216557, 0.13347238508694897, 0.13347201810696152, 0.13347165645546835, 0.13347129985177644, 0.13347094803016535, 0.13347060073890216, 0.13347025773933344, 0.13346991880504647, 0.133469583721095  …  1.002880888425398, 0.6570232232426034, 0.0016307509259286064, 0.006516711396722909, 0.999717021606505, 0.9997189847944296, 0.20108919218149354, 151468.83532429909, 13324.935163581757, -69.90010637562662]

Comparisons#

i = (sys.t / 1000, sys.CaMKAct * 100)
plot(sol, idxs=i, lab="ROS (-)")
plot!(sol2, idxs=i, lab="ROS 0.1uM")
plot!(sol3, idxs=i, lab="ROS 0.5uM")
plot!(xlabel="Time (s)", ylabel="Active fraction (%)", title="Simulation")
_images/5aa000ea4cf1aefdba3dee4796cc6d21c1bcfe77e213f38a6b45614d43403e4c.png
savefig("ros-camkii.pdf")
savefig("ros-camkii.png")
"/home/runner/work/camkii-cardiomyocyte-model/camkii-cardiomyocyte-model/.cache/docs/ros-camkii.png"

Oxidized fraction

i = (sys.t / 1000, 100 * (sys.CaMKBOX + sys.CaMKPOX + sys.CaMKAOX + sys.CaMKOX ))
plot(sol, idxs=i, lab="ROS (-)")
plot!(sol2, idxs=i, lab="ROS 0.1uM")
plot!(sol3, idxs=i, lab="ROS 0.5uM")
plot!(xlabel="Time (s)", ylabel="Oxidized fraction (%)", title="Simulation")
_images/48b34e3dced39bbf75e72308a3d0f1a984ad94379e1d349e913841708d3dd8d8.png
savefig("ros-camkiiox.pdf")
savefig("ros-camkiiox.png")
"/home/runner/work/camkii-cardiomyocyte-model/camkii-cardiomyocyte-model/.cache/docs/ros-camkiiox.png"

Autophosphorylated fraction

i = (sys.t / 1000, 100 * (sys.CaMKP + sys.CaMKA + sys.CaMKA2))
plot(sol, idxs=i, lab="ROS (-)")
plot!(sol2, idxs=i, lab="ROS 0.1uM")
plot!(sol3, idxs=i, lab="ROS 0.5uM")
plot!(xlabel="Time (s)", ylabel="Phosphorylated fraction (%)", title="Simulation")
_images/2011ab9d2a559ca41105e4af55ee05e9d00aa92475b8ad7942821f58c654a3dd.png
savefig("ros-camkiip.pdf")
savefig("ros-camkiip.png")
"/home/runner/work/camkii-cardiomyocyte-model/camkii-cardiomyocyte-model/.cache/docs/ros-camkiip.png"

Experimental data#

chemicaldf = CSV.read(joinpath(@__DIR__, "data/CaMKAR-chemical.csv"), DataFrame)
ts = Dates.value.(chemicaldf[!, "Time"]) ./ 10^9
ctl = chemicaldf[!, "Ctrl Mean"]
ctl_error = chemicaldf[!, "Ctrl SD"] ./ sqrt.(chemicaldf[!, "Ctrl N"])

ros50 = chemicaldf[!, "H2O2 50uM Mean"]
ros50_error = chemicaldf[!, "H2O2 50uM SD"] ./ sqrt.(chemicaldf[!, "H2O2 50uM N"])
ros200 = chemicaldf[!, "H2O2 200uM Mean"]
ros200_error = chemicaldf[!, "H2O2 200uM SD"] ./ sqrt.(chemicaldf[!, "H2O2 200uM N"])

plot(ts, ctl, yerr=ctl_error, lab="Control", color=:blue, markerstrokecolor=:blue)
plot!(ts, ros50, yerr=ros50_error, lab="H2O2 50uM", color=:red, markerstrokecolor=:red)
plot!(ts, ros200, yerr=ros200_error, lab="H2O2 200uM", color=:green, markerstrokecolor=:green)
plot!(xlabel="Time (s)", ylabel="CaMKII activity (A.U.)", title="Experiment")
_images/1e3a59a78a9924a02e0a0ba0a0f8eed32c4a86d56e918566566f6ddf4dcc17d4.png
savefig("ros-exp.pdf")
savefig("ros-exp.png")
"/home/runner/work/camkii-cardiomyocyte-model/camkii-cardiomyocyte-model/.cache/docs/ros-exp.png"

This notebook was generated using Literate.jl.