|
415 | 415 | "print(\n", |
416 | 416 | " \"Simulation was run using model default parameters as specified in the SBML model:\"\n", |
417 | 417 | ")\n", |
418 | | - "print(dict(zip(model.get_free_parameter_ids(), model.get_parameters())))" |
| 418 | + "print(dict(zip(model.get_free_parameter_ids(), model.get_free_parameters())))" |
419 | 419 | ] |
420 | 420 | }, |
421 | 421 | { |
|
1111 | 1111 | "source": [ |
1112 | 1112 | "# Set model options\n", |
1113 | 1113 | "model = model_module.get_model()\n", |
1114 | | - "p_orig = np.array(model.get_parameters())\n", |
| 1114 | + "p_orig = np.array(model.get_free_parameters())\n", |
1115 | 1115 | "p_orig[\n", |
1116 | 1116 | " list(model.get_free_parameter_ids()).index(\"observable_x1withsigma_sigma\")\n", |
1117 | 1117 | "] = 0.1 # Change default parameter\n", |
1118 | | - "model.set_parameters(p_orig)\n", |
| 1118 | + "model.set_free_parameters(p_orig)\n", |
1119 | 1119 | "model.set_parameter_scale(amici.ParameterScaling.none)\n", |
1120 | 1120 | "model.set_timepoints(np.linspace(0, 10, 21))\n", |
1121 | 1121 | "\n", |
|
1172 | 1172 | " p[plist] = x0\n", |
1173 | 1173 | " verbose and print(f\"f: p={p}\")\n", |
1174 | 1174 | "\n", |
1175 | | - " old_parameters = model.get_parameters()\n", |
| 1175 | + " old_parameters = model.get_free_parameters()\n", |
1176 | 1176 | " solver.set_sensitivity_order(amici.SensitivityOrder.none)\n", |
1177 | | - " model.set_parameters(p)\n", |
| 1177 | + " model.set_free_parameters(p)\n", |
1178 | 1178 | " rdata = amici.run_simulation(model, solver, edata)\n", |
1179 | 1179 | "\n", |
1180 | | - " model.set_parameters(old_parameters)\n", |
| 1180 | + " model.set_free_parameters(old_parameters)\n", |
1181 | 1181 | "\n", |
1182 | 1182 | " res = np.sum(rdata[symbol])\n", |
1183 | 1183 | " verbose and print(res)\n", |
|
1194 | 1194 | " model.require_sensitivities_for_all_parameters()\n", |
1195 | 1195 | " verbose and print(f\"g: p={p}\")\n", |
1196 | 1196 | "\n", |
1197 | | - " old_parameters = model.get_parameters()\n", |
| 1197 | + " old_parameters = model.get_free_parameters()\n", |
1198 | 1198 | " solver.set_sensitivity_method(amici.SensitivityMethod.forward)\n", |
1199 | 1199 | " solver.set_sensitivity_order(amici.SensitivityOrder.first)\n", |
1200 | | - " model.set_parameters(p)\n", |
| 1200 | + " model.set_free_parameters(p)\n", |
1201 | 1201 | " rdata = amici.run_simulation(model, solver, edata)\n", |
1202 | 1202 | "\n", |
1203 | | - " model.set_parameters(old_parameters)\n", |
| 1203 | + " model.set_free_parameters(old_parameters)\n", |
1204 | 1204 | "\n", |
1205 | 1205 | " res = rdata[f\"s{symbol}\"]\n", |
1206 | 1206 | " if not isinstance(res, float):\n", |
|
1255 | 1255 | "outputs": [], |
1256 | 1256 | "source": [ |
1257 | 1257 | "eps = 1e-4\n", |
1258 | | - "op = model.get_parameters()\n", |
| 1258 | + "op = model.get_free_parameters()\n", |
1259 | 1259 | "\n", |
1260 | 1260 | "\n", |
1261 | 1261 | "solver.set_sensitivity_method(\n", |
|
1271 | 1271 | "\n", |
1272 | 1272 | "def fd(x0, ip, eps, symbol=\"llh\"):\n", |
1273 | 1273 | " p = list(x0[:])\n", |
1274 | | - " old_parameters = model.get_parameters()\n", |
| 1274 | + " old_parameters = model.get_free_parameters()\n", |
1275 | 1275 | " solver.set_sensitivity_order(amici.SensitivityOrder.none)\n", |
1276 | 1276 | " p[ip] += eps\n", |
1277 | | - " model.set_parameters(p)\n", |
| 1277 | + " model.set_free_parameters(p)\n", |
1278 | 1278 | " rdata_f = amici.run_simulation(model, solver, edata)\n", |
1279 | 1279 | " p[ip] -= 2 * eps\n", |
1280 | | - " model.set_parameters(p)\n", |
| 1280 | + " model.set_free_parameters(p)\n", |
1281 | 1281 | " rdata_b = amici.run_simulation(model, solver, edata)\n", |
1282 | 1282 | "\n", |
1283 | | - " model.set_parameters(old_parameters)\n", |
| 1283 | + " model.set_free_parameters(old_parameters)\n", |
1284 | 1284 | " return (rdata_f[symbol] - rdata_b[symbol]) / (2 * eps)\n", |
1285 | 1285 | "\n", |
1286 | 1286 | "\n", |
1287 | 1287 | "def plot_sensitivities(symbol, eps):\n", |
1288 | 1288 | " fig, axes = plt.subplots(4, 2, figsize=(15, 10))\n", |
1289 | 1289 | " for ip in range(4):\n", |
1290 | | - " fd_approx = fd(model.get_parameters(), ip, eps, symbol=symbol)\n", |
| 1290 | + " fd_approx = fd(model.get_free_parameters(), ip, eps, symbol=symbol)\n", |
1291 | 1291 | "\n", |
1292 | 1292 | " axes[ip, 0].plot(\n", |
1293 | 1293 | " edata.get_timepoints(), rdata[f\"s{symbol}\"][:, ip, :], \"r-\"\n", |
|
0 commit comments