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)
  8.926502 seconds (23.29 M allocations: 1.224 GiB, 2.36% gc time, 90.19% compilation time)
retcode: Success
Interpolation: 3rd order Hermite
t: 4019-element Vector{Float64}:
      0.0
      0.019333123284849377
      0.09098129546758026
      0.20735582943983927
      0.4561191027686269
      1.047256292840616
      2.0342667657223767
      3.4517766411484665
      6.733792423912831
     12.45011708102324
      ⋮
 153105.87173409184
 157632.21058110037
 163094.59147683196
 168819.53333337096
 175121.5573262318
 182484.55452456992
 189877.09234962234
 197904.13271346927
 205000.0
u: 4019-element Vector{Vector{Float64}}:
 [150952.75035000002, 13838.37602, -68.79268, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113  …  0.26081, 0.00977, 0.00188, 0.09243, 0.22156, 0.966, 0.00702, 830.0, 830.0, 0.0026]
 [150952.7504077194, 13838.375711519551, -68.79732946186226, 0.1211319185255175, 0.1211301421535992, 0.12113000811850358, 0.12113000037367234, 0.12113000001389383, 0.12113000000038378, 0.12113000000000405  …  0.2608055799112056, 0.009769882842069916, 0.001879826176081169, 0.09242766669618695, 0.2215639938807744, 0.9660018276402699, 0.007020208561323646, 829.9999654017583, 829.9994975880693, 0.0025985659590295374]
 [150952.75062244057, 13838.374513299192, -68.81607005265552, 0.12115248970210647, 0.12113624253259858, 0.12113143375871602, 0.12113027926811751, 0.12113004704056851, 0.12113000693481112, 0.12113000089551408  …  0.26078941009382306, 0.009769459049732313, 0.0018789042446514422, 0.09241901973901424, 0.2215787945110049, 0.9660085993318799, 0.00702008986027517, 829.9998348635061, 829.9976422525165, 0.002593310524681686]
 [150952.7509740238, 13838.372555328333, -68.84681913285226, 0.12118951551963696, 0.12115723910142134, 0.12114109135582982, 0.12113403405679991, 0.12113131833063846, 0.12113038966346883, 0.12113010483012127  …  0.2607638707001999, 0.009768805322556195, 0.0018766436937193197, 0.09240497563401104, 0.22160283236040595, 0.9660195931792828, 0.007017234889558555, 829.9996133960318, 829.9946506157202, 0.0025849478335103772]
 [150952.7517373371, 13838.368384399068, -68.91207316777846, 0.12125418995384042, 0.12120713813483534, 0.12117519662647318, 0.12115494411090462, 0.12114295934422188, 0.12113633873395535, 0.12113292110288301  …  0.2607122383588733, 0.00976754294689657, 0.001869919626294057, 0.0923749578279845, 0.2216542075240971, 0.9660430731013478, 0.007003014305234393, 829.9990964774663, 829.9883445519497, 0.0025677078010499796]
 [150952.75361533565, 13838.358559292059, -69.06429960994139, 0.12136450208851986, 0.12130632552358439, 0.12125925929399749, 0.12122229800810431, 0.12119414515426226, 0.12117335985880448, 0.1211584926966588  …  0.26060507831375035, 0.009765228548607825, 0.0018505337694469416, 0.09230364339951613, 0.22177624785138977, 0.9660987611411453, 0.006946470397388756, 829.9976227528975, 829.9738229154025, 0.0025298083713907]
 [150952.75694915713, 13838.34240329337, -69.31024285744344, 0.1214919651325425, 0.12142927821043346, 0.1213742637991964, 0.12132672249013038, 0.12128628091507475, 0.12125242557826563, 0.12122454121844704  …  0.26047114911179464, 0.009763403076884485, 0.0018178174419014655, 0.09218462776986637, 0.2219798989175973, 0.9661914345949096, 0.006833754172875444, 829.9944193668179, 829.9509077855928, 0.002474807978215895]
 [150952.76215620188, 13838.319723120678, -69.64637448767434, 0.12162015426876964, 0.12155743299711909, 0.12149988983034504, 0.12144759471003595, 0.12140052118634267, 0.12135855488207911, 0.12132150441596078  …  0.2603648729749554, 0.009765046552800477, 0.0017738156907532213, 0.09201383579531924, 0.22227216398019892, 0.9663239343003682, 0.0066755120626567415, 829.9883533251192, 829.9205247545176, 0.0024106893964811306]
 [150952.77598869594, 13838.2694938995, -70.35063788657429, 0.12180447948880603, 0.12174768443532381, 0.12169340184085989, 0.12164180995533579, 0.12159304920072045, 0.12154722283384199, 0.12150439833798565  …  0.26041507667541997, 0.009786689200123853, 0.00168558990949223, 0.09161908329520764, 0.22294828828976576, 0.9666286957812559, 0.006355039713677853, 829.9689941817725, 829.8589858006806, 0.002310655727734336]
 [150952.80529264064, 13838.18882346682, -71.35304509818073, 0.12196378364408182, 0.12191937753328343, 0.12187579038290358, 0.12183318573340753, 0.12179171693004423, 0.12175152667167381, 0.12171274673876382  …  0.26104417804603025, 0.009873892913308327, 0.0015688568862426027, 0.09093422465365385, 0.22412560303273427, 0.9671554512230358, 0.005926150085676066, 829.923524981244, 829.7704141396295, 0.0022289950402245157]
 ⋮
 [151183.03005391711, 13610.022453000782, -70.43523764740469, 0.1369676805582595, 0.13696770541451694, 0.13696772581562242, 0.13696774168075035, 0.13696775292579189, 0.13696775946318737, 0.13696776120174883  …  0.0011149985785659931, 0.0015670087736463368, 0.002425643258995471, 0.0015098981196587653, 0.9995947867979872, 0.9997478695199569, 0.006283856821659607, 784.9060277549115, 784.5419852203395, 0.002043321971581968]
 [151210.74059872318, 13582.33978023583, -70.38271170918792, 0.13666794672957625, 0.1366681247798025, 0.13666830079070916, 0.1366684747581079, 0.13666864667763334, 0.13666881654473434, 0.13666898435466424  …  0.0011241657888483032, 0.001573142567795679, 0.0024351309820543525, 0.0015214215593408892, 0.9997003634476637, 0.9997449901069714, 0.006306341980738431, 784.9811615791657, 784.6213015086911, 0.0020280269308611287]
 [151243.4326466473, 13549.711373761216, -70.3219859467072, 0.13627807624637142, 0.13627833812797785, 0.13627859938139578, 0.13627886004612458, 0.13627912016325777, 0.13627937977556412, 0.1362796389275742  …  0.001134831105315166, 0.0015802626202109, 0.002446145716629747, 0.0015348071355956367, 0.999732729954332, 0.9997416251520747, 0.006332436908734123, 784.7531725033057, 784.3992145147291, 0.002000143442004991]
 [151276.83932906823, 13516.386453454743, -70.2603513896919, 0.13586230119922857, 0.13586259714206841, 0.13586289313277525, 0.13586318923061927, 0.1358634854972661, 0.13586378199689936, 0.1358640787963502  …  0.0011457342409985215, 0.0015875213654787258, 0.0024573758211653583, 0.0015484860441590048, 0.9997378186335917, 0.9997381673170063, 0.006359032048958898, 784.3454744214123, 783.998000972686, 0.001966745674512186]
 [151312.62712829173, 13480.694858320712, -70.1942291580683, 0.13541071612361646, 0.135411023276123, 0.13541133082412019, 0.13541163883584953, 0.13541194738231138, 0.1354122565374058, 0.13541256637808194  …  0.0011575028351441788, 0.0015953421204605491, 0.0024694801750338785, 0.001563281594486843, 0.9997359908155934, 0.999734407440869, 0.006387687012331912, 783.8157839445096, 783.4754062616739, 0.0019289528623679414]
 [151353.169306461, 13440.26655453652, -70.11887053897253, 0.134899081243244, 0.1348993881459736, 0.1348996956411196, 0.1349000038007389, 0.13490031269980202, 0.13490062241633985, 0.13490093303160447  …  0.00117111914633227, 0.0016043018941568636, 0.002483346762746055, 0.0015803060021757664, 0.9997320099287309, 0.9997300569271541, 0.006420501128197219, 783.1593298430379, 782.826973630168, 0.0018856069960036588]
 [151392.540330536, 13401.008513011, -70.04507616188525, 0.13440549809442084, 0.13440579963692706, 0.13440610188370683, 0.13440640490798328, 0.13440670878593972, 0.13440701359686885, 0.1344073194233378  …  0.0011846226674762008, 0.0016131221044384412, 0.0024969996267277133, 0.0015971504279967388, 0.9997277178059536, 0.9997257276799157, 0.006452796354839783, 782.4907188080352, 782.1660474217431, 0.0018438340587790742]
 [151433.82887305671, 13359.83987530622, -69.96695205890143, 0.1338927252051512, 0.13389301915339386, 0.1338933138855437, 0.1338936094749437, 0.13389390599790135, 0.13389420353383985, 0.13389450216545884  …  0.0011990241172112482, 0.0016225192311731737, 0.0025115362546610743, 0.0016151722984756977, 0.9997230494424985, 0.9997210698420853, 0.00648716242198947, 781.7678285200349, 781.4510692841307, 0.0018007046814386962]
 [151469.1032662699, 13324.668736061592, -69.89959533692594, 0.13345901539850258, 0.13345930203024708, 0.1334595895024914, 0.1334598778882704, 0.1334601672635707, 0.13346045770748213, 0.13346074930235696  …  0.0012115249155876967, 0.0016306588682617616, 0.002524135827400887, 0.001630870869703222, 0.9997189540444598, 0.9997169901786227, 0.006516937899942709, 781.1360850436763, 780.8259581147418, 0.0017645060464925727]

ROS (H2O2) 0.1uM

prob2 = remake(prob, p=[sys.ROS => 0.1μM])
@time sol2 = solve(prob2, alg; callback)
  0.920238 seconds (63.27 k allocations: 208.038 MiB, 11.14% gc time)
retcode: Success
Interpolation: 3rd order Hermite
t: 4019-element Vector{Float64}:
      0.0
      0.019333123284849575
      0.09098129546758119
      0.2073558294398414
      0.4561191027686316
      1.0472562928406268
      2.034266765722398
      3.451776641148502
      6.733792423912901
     12.450117081023368
      ⋮
 152359.07188619237
 156668.9965679624
 161940.38408337475
 169000.41000400635
 176060.43592463795
 184196.78495096602
 192583.10997787392
 201744.62516325316
 205000.0
u: 4019-element Vector{Vector{Float64}}:
 [150952.75035000002, 13838.37602, -68.79268, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113  …  0.26081, 0.00977, 0.00188, 0.09243, 0.22156, 0.966, 0.00702, 830.0, 830.0, 0.0026]
 [150952.7504077194, 13838.375711519551, -68.79732946186226, 0.1211319185255175, 0.1211301421535992, 0.12113000811850358, 0.12113000037367234, 0.12113000001389383, 0.12113000000038378, 0.12113000000000405  …  0.2608055799112056, 0.009769882842069916, 0.001879826176081169, 0.09242766669618695, 0.2215639938807744, 0.9660018276402699, 0.007020208561323646, 829.9999654017583, 829.9994975880693, 0.0025985659590295374]
 [150952.75062244057, 13838.374513299192, -68.81607005265553, 0.12115248970210647, 0.12113624253259858, 0.12113143375871602, 0.12113027926811751, 0.12113004704056851, 0.12113000693481112, 0.12113000089551408  …  0.26078941009382306, 0.009769459049732313, 0.0018789042446514422, 0.09241901973901424, 0.2215787945110049, 0.9660085993318799, 0.00702008986027517, 829.9998348635061, 829.9976422525165, 0.0025933105246816854]
 [150952.7509740238, 13838.372555328333, -68.84681913285227, 0.12118951551963696, 0.12115723910142134, 0.12114109135582982, 0.12113403405679991, 0.12113131833063846, 0.12113038966346883, 0.12113010483012127  …  0.2607638707001999, 0.009768805322556195, 0.001876643693719319, 0.09240497563401104, 0.22160283236040595, 0.9660195931792828, 0.007017234889558554, 829.9996133960318, 829.9946506157202, 0.002584947833510377]
 [150952.7517373371, 13838.368384399068, -68.91207316777847, 0.12125418995384042, 0.12120713813483534, 0.12117519662647318, 0.12115494411090462, 0.12114295934422188, 0.12113633873395535, 0.12113292110288301  …  0.2607122383588733, 0.00976754294689657, 0.0018699196262940555, 0.0923749578279845, 0.2216542075240971, 0.9660430731013478, 0.00700301430523439, 829.9990964774663, 829.9883445519497, 0.002567707801049979]
 [150952.75361533565, 13838.358559292059, -69.0642996099414, 0.12136450208851986, 0.1213063255235844, 0.1212592592939975, 0.12122229800810431, 0.12119414515426227, 0.1211733598588045, 0.1211584926966588  …  0.26060507831375035, 0.009765228548607825, 0.0018505337694469399, 0.09230364339951613, 0.22177624785138977, 0.9660987611411453, 0.006946470397388749, 829.9976227528975, 829.9738229154025, 0.002529808371390699]
 [150952.75694915713, 13838.34240329337, -69.31024285744347, 0.12149196513254244, 0.12142927821043341, 0.12137426379919634, 0.12132672249013035, 0.12128628091507473, 0.12125242557826557, 0.12122454121844699  …  0.26047114911179464, 0.009763403076884485, 0.001817817441901464, 0.09218462776986637, 0.2219798989175973, 0.9661914345949096, 0.006833754172875437, 829.9944193668179, 829.9509077855928, 0.002474807978215894]
 [150952.76215620188, 13838.319723120678, -69.64637448767436, 0.1216201542687696, 0.12155743299711909, 0.12149988983034504, 0.121447594710036, 0.1214005211863427, 0.12135855488207914, 0.12132150441596078  …  0.2603648729749554, 0.009765046552800478, 0.001773815690753218, 0.09201383579531924, 0.22227216398019892, 0.9663239343003682, 0.006675512062656731, 829.9883533251192, 829.9205247545176, 0.0024106893964811306]
 [150952.77598869594, 13838.2694938995, -70.35063788657433, 0.12180447948880609, 0.12174768443532384, 0.12169340184085993, 0.12164180995533587, 0.1215930492007205, 0.12154722283384208, 0.12150439833798576  …  0.26041507667541997, 0.009786689200123854, 0.0016855899094922258, 0.09161908329520764, 0.22294828828976576, 0.9666286957812559, 0.0063550397136778345, 829.9689941817725, 829.8589858006806, 0.002310655727734339]
 [150952.80529264064, 13838.18882346682, -71.35304509818077, 0.12196378364408193, 0.12191937753328355, 0.1218757903829037, 0.12183318573340764, 0.12179171693004433, 0.1217515266716739, 0.1217127467387639  …  0.26104417804603025, 0.009873892913308334, 0.001568856886242598, 0.09093422465365383, 0.2241256030327343, 0.9671554512230358, 0.005926150085676051, 829.923524981244, 829.7704141396295, 0.0022289950402245165]
 ⋮
 [151178.40028403263, 13614.651207638442, -70.44418470104124, 0.1370131611026063, 0.13701314847240534, 0.13701313080628244, 0.13701310800487543, 0.13701307996478604, 0.13701304657837443, 0.1370130077335405  …  0.0011134280561192259, 0.0015659652303962593, 0.0024240308081282264, 0.001507938720745235, 0.9995611110596602, 0.9997483572630401, 0.0062800347392394235, 784.8549278822638, 784.4903100554122, 0.0020446388807830763]
 [151204.8886865649, 13588.18308591063, -70.39368854970164, 0.13673438581715974, 0.13673453976237207, 0.1367346912792631, 0.13673484035140618, 0.13673498696170291, 0.13673513109234867, 0.13673527272479652  …  0.0011222588305175765, 0.0015718610411212918, 0.0024331454115249554, 0.001519009638185871, 0.9996873352528118, 0.9997455943387755, 0.006301636427175591, 784.9919891281011, 784.6311614381465, 0.00203210497645615]
 [151236.58940638913, 13556.539418911354, -70.3346392255748, 0.1363616198935427, 0.13636186968856984, 0.13636211863921402, 0.13636236677836622, 0.1363626141402456, 0.1363628607604665, 0.13636310667611207  …  0.0011326084283224888, 0.0015787779807522496, 0.0024438466997537805, 0.0015320109017768254, 0.9997294919341869, 0.9997423298173016, 0.006326990739354614, 784.8190230276713, 784.4637788023583, 0.002006509033529506]
 [151277.87821535525, 13515.3501496425, -70.25843495887048, 0.13584923416364006, 0.1358495306909567, 0.1358498272796179, 0.1358501239892542, 0.13585042088190702, 0.13585071802215082, 0.135851015477225  …  0.0011460689656871287, 0.0015877474428011985, 0.0024577258456768484, 0.0015489131226837692, 0.9997378352249404, 0.9997380590689205, 0.006359860759862646, 784.3310771184217, 783.9838091528613, 0.0019656646996025523]
 [151317.86964127517, 13475.466738293622, -70.18451365802599, 0.13534445103575932, 0.13534475862873244, 0.1353450666468866, 0.1353453751590839, 0.13534568423697074, 0.1353459939551209, 0.13534630439118608  …  0.001159256999802734, 0.001596496984242899, 0.0024712639492974545, 0.0015654661624873343, 0.9997355340728726, 0.9997338507267097, 0.0063919081505006406, 783.7334592787345, 783.3941234086763, 0.0019233387847301044]
 [151362.40315333926, 13431.05892960409, -70.10161714072797, 0.13478294893696188, 0.13478325487688592, 0.1347835614396127, 0.1347838686976125, 0.13478417672628637, 0.13478448560411557, 0.13478479541282054  …  0.001174205774785441, 0.0016063612392441043, 0.002486532941516183, 0.0015842287273537604, 0.9997310237639004, 0.9997290512889963, 0.006428037481650419, 783.0047063629532, 782.6741631568799, 0.0018757671135336876]
 [151406.62434878098, 13386.965138502435, -70.01850741882363, 0.13422996720047692, 0.13423026631111062, 0.13423056615569012, 0.13423086680754737, 0.1342311683429796, 0.1342314708414007, 0.13423177438550152  …  0.0011894303887176486, 0.0016163142191269301, 0.002501934916894105, 0.0016032570495331491, 0.9997261418803839, 0.9997241530147133, 0.006464463403179324, 782.2462919952438, 781.9243369434565, 0.0018290343462134598]
 [151453.0632770309, 13340.661567046856, -69.93029457539885, 0.13365570753819137, 0.13365599754487992, 0.1336562883678799, 0.13365658008038048, 0.13365687275853003, 0.1336571664815876, 0.1336574613320827  …  0.0012057983815949476, 0.0016269448841401395, 0.0025183857108780827, 0.0016236975512667596, 0.9997208281021642, 0.9997188571416543, 0.006503350163092712, 781.4248482052263, 781.1117204902667, 0.0017808883290139025]
 [151469.10599508276, 13324.665891674314, -69.89958935312049, 0.13345897605266832, 0.13345926268983752, 0.13345955016769007, 0.1334598385592453, 0.13346012794047482, 0.1334604183904534, 0.13346070999151852  …  0.0012115413836495288, 0.001630661156493646, 0.002524136944550219, 0.0016308723776175197, 0.9997189531991868, 0.9997169899201898, 0.00651694016171944, 781.1360311597318, 780.8259048088499, 0.0017645029323400737]

ROS (H2O2) 0.5uM

prob3 = remake(prob, p=[sys.ROS => 0.5μM])
@time sol3 = solve(prob3, alg; callback)
  1.139676 seconds (63.31 k allocations: 208.344 MiB, 22.74% gc time)
retcode: Success
Interpolation: 3rd order Hermite
t: 4019-element Vector{Float64}:
      0.0
      0.019333123284852018
      0.09098129546759268
      0.20735582943986758
      0.45611910276868917
      1.047256292840759
      2.0342667657226547
      3.4517766411489377
      6.73379242391375
     12.450117081024938
      ⋮
 152229.668379067
 156693.01110375646
 162137.25596277026
 168220.05331925137
 175684.1621984258
 183498.26432090864
 192274.69276273437
 202819.53195738627
 205000.0
u: 4019-element Vector{Vector{Float64}}:
 [150952.75035000002, 13838.37602, -68.79268, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113, 0.12113  …  0.26081, 0.00977, 0.00188, 0.09243, 0.22156, 0.966, 0.00702, 830.0, 830.0, 0.0026]
 [150952.7504077194, 13838.375711519551, -68.79732946186226, 0.1211319185255175, 0.1211301421535992, 0.12113000811850358, 0.12113000037367234, 0.12113000001389383, 0.12113000000038378, 0.12113000000000405  …  0.2608055799112056, 0.009769882842069916, 0.001879826176081169, 0.09242766669618695, 0.2215639938807744, 0.9660018276402699, 0.007020208561323646, 829.9999654017583, 829.9994975880693, 0.002598565959029538]
 [150952.75062244057, 13838.374513299192, -68.81607005265553, 0.12115248970210647, 0.12113624253259858, 0.12113143375871602, 0.12113027926811751, 0.12113004704056851, 0.12113000693481112, 0.12113000089551408  …  0.26078941009382306, 0.009769459049732313, 0.001878904244651442, 0.09241901973901424, 0.2215787945110049, 0.9660085993318799, 0.00702008986027517, 829.9998348635061, 829.9976422525165, 0.0025933105246816854]
 [150952.7509740238, 13838.372555328333, -68.84681913285227, 0.12118951551963694, 0.12115723910142132, 0.12114109135582982, 0.12113403405679991, 0.12113131833063846, 0.12113038966346883, 0.12113010483012127  …  0.2607638707001999, 0.009768805322556195, 0.0018766436937193184, 0.09240497563401104, 0.22160283236040595, 0.9660195931792828, 0.007017234889558553, 829.9996133960318, 829.9946506157202, 0.002584947833510376]
 [150952.7517373371, 13838.368384399068, -68.91207316777847, 0.12125418995384041, 0.12120713813483533, 0.12117519662647316, 0.1211549441109046, 0.12114295934422183, 0.12113633873395532, 0.12113292110288301  …  0.2607122383588733, 0.00976754294689657, 0.0018699196262940544, 0.0923749578279845, 0.2216542075240971, 0.9660430731013478, 0.0070030143052343865, 829.9990964774663, 829.9883445519497, 0.002567707801049976]
 [150952.75361533565, 13838.358559292059, -69.06429960994141, 0.12136450208851983, 0.12130632552358438, 0.12125925929399752, 0.12122229800810433, 0.12119414515426226, 0.1211733598588045, 0.12115849269665879  …  0.26060507831375035, 0.009765228548607825, 0.0018505337694469342, 0.09230364339951613, 0.22177624785138977, 0.9660987611411453, 0.006946470397388732, 829.9976227528975, 829.9738229154025, 0.0025298083713906918]
 [150952.75694915713, 13838.34240329337, -69.31024285744353, 0.12149196513254247, 0.12142927821043346, 0.12137426379919643, 0.12132672249013036, 0.12128628091507475, 0.12125242557826563, 0.12122454121844706  …  0.26047114911179464, 0.009763403076884485, 0.0018178174419014564, 0.09218462776986637, 0.2219798989175974, 0.9661914345949096, 0.006833754172875411, 829.9944193668179, 829.9509077855928, 0.002474807978215882]
 [150952.76215620188, 13838.319723120678, -69.64637448767446, 0.12162015426876963, 0.12155743299711912, 0.12149988983034511, 0.12144759471003602, 0.12140052118634274, 0.12135855488207918, 0.12132150441596085  …  0.2603648729749554, 0.00976504655280048, 0.0017738156907532085, 0.09201383579531924, 0.22227216398019903, 0.9663239343003682, 0.006675512062656691, 829.9883533251192, 829.9205247545176, 0.002410689396481114]
 [150952.77598869594, 13838.2694938995, -70.3506378865745, 0.12180447948880602, 0.1217476844353238, 0.12169340184085987, 0.12164180995533581, 0.12159304920072049, 0.12154722283384203, 0.12150439833798572  …  0.2604150766754201, 0.009786689200123865, 0.0016855899094922052, 0.09161908329520757, 0.22294828828976596, 0.966628695781256, 0.0063550397136777625, 829.9689941817725, 829.8589858006806, 0.002310655727734318]
 [150952.80529264064, 13838.18882346682, -71.35304509818101, 0.1219637836440819, 0.1219193775332835, 0.12187579038290362, 0.12183318573340757, 0.12179171693004426, 0.1217515266716738, 0.12171274673876377  …  0.2610441780460306, 0.009873892913308365, 0.0015688568862425706, 0.09093422465365371, 0.22412560303273463, 0.967155451223036, 0.005926150085675941, 829.923524981244, 829.7704141396295, 0.0022289950402245053]
 ⋮
 [151177.5980993207, 13615.453370126514, -70.44573834543321, 0.13702089704843468, 0.13702087757364084, 0.13702085295531424, 0.13702082309064229, 0.13702078787264227, 0.13702074718994864, 0.1370207009265871  …  0.0011131770383532844, 0.0015657870769716221, 0.002423751086816901, 0.001507598142252379, 0.9995547830962707, 0.9997484421326583, 0.006279371250897506, 784.8449238181372, 784.4802096989263, 0.0020448301294197727]
 [151205.03598417286, 13588.035995577784, -70.39341088138066, 0.13673274132583893, 0.136732895962884, 0.13673304818191784, 0.1367331979668293, 0.13673334530084877, 0.136733490166514, 0.13673363254563464  …  0.00112232194319741, 0.0015718944501589048, 0.002433195616835611, 0.0015190704331408842, 0.999687738145029, 0.9997455790810663, 0.006301755412662899, 784.9919862779354, 784.6311823990416, 0.0020320089361796924]
 [151237.75986518903, 13555.371490748064, -70.33247280165385, 0.13634740053466754, 0.13634765261927956, 0.13634790390132293, 0.13634815441499776, 0.1363484041958858, 0.13634865328102033, 0.13634890170896155  …  0.00113299254515042, 0.0015790326023814494, 0.0024442401824658773, 0.0015324893737585382, 0.9997301456758501, 0.9997422093364849, 0.006327922863482857, 784.8085405019236, 784.4535137053001, 0.002005449193395649]
 [151273.380149257, 13519.836600603798, -70.26673060448118, 0.13590575282411063, 0.13590604665915662, 0.13590634049201958, 0.13590663438057235, 0.13590692838502635, 0.13590722256805066, 0.13590751699489872  …  0.0011446175865427724, 0.0015867698139152091, 0.002456211176358873, 0.0015470652229029617, 0.9997377628053504, 0.9997385273079582, 0.006356274292265693, 784.3927065966795, 784.0445517984208, 0.0019703233318538005]
 [151315.77134176032, 13477.559244346083, -70.18840368846539, 0.13537097718663413, 0.13537128466560064, 0.135371592559394, 0.1353719009366889, 0.13537220986893667, 0.13537251943050674, 0.13537282969883685  …  0.001158583046947918, 0.001596035094479721, 0.0024705494336960724, 0.0015645910354670895, 0.9997357184902987, 0.999734073698319, 0.006390217698570697, 783.7665526660294, 783.4267996140948, 0.00192559510469377]
 [151358.6447906545, 13434.806583900416, -70.10864235465442, 0.13483019080754075, 0.1348304971719486, 0.13483080414700774, 0.13483111180503518, 0.13483142022127176, 0.13483172947403166, 0.13483203964486032  …  0.0011729615039210981, 0.001605524198424321, 0.002485235283769428, 0.0015826299918434653, 0.9997314266114354, 0.9997294613744955, 0.006424967786165939, 783.067815006895, 782.7365344295829, 0.0018797711247857144]
 [151405.0284895752, 13388.556398343191, -70.0215227935951, 0.13424982550942433, 0.13425012489997273, 0.13425042502099027, 0.1342507259457924, 0.13425102775065825, 0.13425133051498245, 0.1342516343214351  …  0.0011889215329410649, 0.0016159528187008525, 0.0025013741994334756, 0.0016025625757086037, 0.9997263208770492, 0.9997243321237557, 0.006463138217084981, 782.2740844758273, 781.9518225205945, 0.001830706160872507]
 [151458.38250538096, 13335.357949703752, -69.92012537858207, 0.13359038775004053, 0.13359067665139435, 0.13359096637703705, 0.1335912570001161, 0.13359154859673603, 0.13359184124610946, 0.1335921350307172  …  0.0012076873871469751, 0.0016281752477340732, 0.0025202892519312413, 0.001626070201985845, 0.9997202085156732, 0.999718240182082, 0.006507848139662067, 781.329367112405, 781.0172372163787, 0.0017754417709193865]
 [151469.10198081323, 13324.669921907891, -69.89959724546107, 0.13345902635865134, 0.1334593129723598, 0.13345960042704672, 0.13345988879574194, 0.1334601781544274, 0.1334604685821882, 0.1334607601613721  …  0.0012115058325973278, 0.0016306584080692144, 0.002524135532906223, 0.0016308705866936754, 0.9997189538410474, 0.9997169904224869, 0.006516937056444784, 781.1361067314048, 780.8259796394175, 0.001764507104782125]

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")

savefig("ros-camkii.pdf")
"/home/runner/work/camkii-cardiomyocyte-model/camkii-cardiomyocyte-model/docs/ros-camkii.pdf"

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")

savefig("ros-camkiiox.pdf")
"/home/runner/work/camkii-cardiomyocyte-model/camkii-cardiomyocyte-model/docs/ros-camkiiox.pdf"

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")

savefig("ros-camkiip.pdf")
"/home/runner/work/camkii-cardiomyocyte-model/camkii-cardiomyocyte-model/docs/ros-camkiip.pdf"

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"])
42-element Vector{Float64}:
 0.02305850621757014
 0.023225557529411765
 0.023536003837902393
 0.022995786588235295
 0.023056161133316953
 0.02236794743822152
 0.02448575734900888
 0.02631837493460871
 0.029628792824062226
 0.0306227531696316
 ⋮
 0.02665056333747046
 0.02525893438851731
 0.024749347823716496
 0.024158682609370527
 0.023572491294117648
 0.0240760416039372
 0.023230166
 0.023759599761907887
 0.02369791084482974
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"])
42-element Vector{Float64}:
 0.01579193843196981
 0.015098907892605207
 0.01579878654371588
 0.015408311367567479
 0.01575464714359121
 0.015563615686070896
 0.015839325542753135
 0.01815890968670797
 0.022420341690296358
 0.026401360928455686
 ⋮
 0.01970504059747541
 0.018928610243134615
 0.018308801083333333
 0.017872510075561544
 0.017135324764712814
 0.016622042234321177
 0.01699837223508933
 0.01644948545788867
 0.016236308371972322
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")

savefig("ros-exp.pdf")
"/home/runner/work/camkii-cardiomyocyte-model/camkii-cardiomyocyte-model/docs/ros-exp.pdf"

Runtime information

using InteractiveUtils
InteractiveUtils.versioninfo()
Julia Version 1.12.4
Commit 01a2eadb047 (2026-01-06 16:56 UTC)
Build Info:
  Official https://julialang.org release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 4 × Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
  WORD_SIZE: 64
  LLVM: libLLVM-18.1.7 (ORCJIT, icelake-server)
  GC: Built with stock GC
Threads: 4 default, 1 interactive, 4 GC (on 4 virtual cores)
Environment:
  JULIA_CPU_TARGET = generic;icelake-server,clone_all;znver3,clone_all
  JULIA_CONDAPKG_OFFLINE = true
  JULIA_CONDAPKG_BACKEND = Null
  JULIA_CI = true
  LD_LIBRARY_PATH = /opt/hostedtoolcache/Python/3.14.2/x64/lib
  JULIA_NUM_THREADS = auto
using Pkg
Pkg.status()
Project CaMKIIModel v0.7.0
Status `~/work/camkii-cardiomyocyte-model/camkii-cardiomyocyte-model/Project.toml`
  [336ed68f] CSV v0.10.15
  [a93c6f00] DataFrames v1.8.1
  [459566f4] DiffEqCallbacks v4.11.0
  [f6369f11] ForwardDiff v1.3.1
  [682c06a0] JSON v1.3.0
  [23fbe1c1] Latexify v0.16.10
  [98b081ad] Literate v2.21.0
  [2fda8390] LsqFit v0.15.1
⌅ [961ee093] ModelingToolkit v10.31.2
  [77ba4419] NaNMath v1.1.3
  [1dea7af3] OrdinaryDiffEq v6.105.0
  [91a5bcdd] Plots v1.41.4
  [2913bbd2] StatsBase v0.34.9
  [9672c7b4] SteadyStateDiffEq v2.8.0
  [ea8e919c] SHA v0.7.0
Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated`

This notebook was generated using Literate.jl.

Back to top