def test_save_load_observables_expressions(): buff = io.BytesIO() tspan = np.linspace(0, 100, 100) sim = ScipyOdeSimulator(tyson_oscillator.model, tspan).run() sim.save(buff, include_obs_exprs=True) sim2 = SimulationResult.load(buff) assert len(sim2.observables) == len(tspan) # Tyson oscillator doesn't have expressions assert_raises(ValueError, lambda: sim2.expressions)
param_values = np.array([p.value for p in model.parameters]) par_set_calibrated = np.copy(param_values) par_set_calibrated[rates_of_interest_mask] = 10**calibrated_pars tspan = np.linspace(0, 180, 181) n_conditions = 5000 max_arrestin = 100 arrestin_initials = np.linspace(0, max_arrestin, n_conditions) par_clus1 = par_set_calibrated arrestin_idx = 44 kcat_idx = [36, 37] repeated_parameter_values = np.tile(par_clus1, (n_conditions, 1)) repeated_parameter_values[:, arrestin_idx] = arrestin_initials np.save('arrestin_diff_IC_par0.npy', repeated_parameter_values) tspan_eq = np.linspace(0, 2000, 200) scipy_solver = ScipyOdeSimulator(model, tspan=tspan_eq) pars_eq = np.copy(repeated_parameter_values) pars_eq[:, kcat_idx] = 0 conc_eq = pre_equilibration(scipy_solver, param_values=pars_eq)[1] sims_final = ScipyOdeSimulator(model, tspan=tspan).run( param_values=repeated_parameter_values, initials=conc_eq) sims_final.save('simulations_ic_scipy_181.h5')
arrestin_idx = 44 kcat_idx = [36, 37] tspan_eq = np.linspace(0, 100, 100) scipy_solver = ScipyOdeSimulator(model, tspan=tspan_eq) pars_eq = np.copy(all_par_set_calibrated) pars_eq[:, kcat_idx] = 0 conc_eq = pre_equilibration(scipy_solver, param_values=pars_eq)[1] sims_final = ScipyOdeSimulator(model, tspan=tspan).run(param_values=all_par_set_calibrated, initials=conc_eq) print(sims_final.dataframe['__s27']) sims_final.save('simulations_50000_arrestin_scipy_181.h5') # Simulations without arrestin jnk3_initial_idxs = [47, 48, 49] pars_eq_noarrestin = np.copy(all_par_set_calibrated) all_pars_noarrestin = np.copy(all_par_set_calibrated) pars_eq_noarrestin[:, arrestin_idx] = 0 all_pars_noarrestin[:, arrestin_idx] = 0 pars_eq_noarrestin[:, jnk3_initial_idxs] = [0.592841488, 0, 0.007158512] pars_eq_noarrestin[:, kcat_idx] = 0 conc_eq_noarrestin = pre_equilibration(scipy_solver, param_values=pars_eq_noarrestin)[1] sims_final_noarrestin = ScipyOdeSimulator(model, tspan=tspan).run(param_values=all_pars_noarrestin, initials=conc_eq_noarrestin)