|
223 | 223 | "outputs": [], |
224 | 224 | "source": [ |
225 | 225 | "# Create a spline object\n", |
226 | | - "spline = amici.splines.CubicHermiteSpline(\n", |
| 226 | + "from amici.importers.sbml.splines import CubicHermiteSpline, UniformGrid\n", |
| 227 | + "from amici.importers.utils import amici_time_symbol\n", |
| 228 | + "\n", |
| 229 | + "spline = CubicHermiteSpline(\n", |
227 | 230 | " sbml_id=\"f\",\n", |
228 | | - " evaluate_at=amici.sbml_utils.amici_time_symbol, # the spline function is evaluated at the current time point\n", |
229 | | - " nodes=amici.splines.UniformGrid(0, 1, number_of_nodes=3),\n", |
| 231 | + " evaluate_at=amici_time_symbol, # the spline function is evaluated at the current time point\n", |
| 232 | + " nodes=UniformGrid(0, 1, number_of_nodes=3),\n", |
230 | 233 | " values_at_nodes=[1, -1, 2],\n", |
231 | 234 | ")" |
232 | 235 | ] |
|
485 | 488 | }, |
486 | 489 | "outputs": [], |
487 | 490 | "source": [ |
488 | | - "spline = amici.splines.CubicHermiteSpline(\n", |
| 491 | + "spline = CubicHermiteSpline(\n", |
489 | 492 | " sbml_id=\"f\",\n", |
490 | | - " evaluate_at=amici.sbml_utils.amici_time_symbol,\n", |
491 | | - " nodes=amici.splines.UniformGrid(0, 1, number_of_nodes=3),\n", |
| 493 | + " evaluate_at=amici_time_symbol,\n", |
| 494 | + " nodes=UniformGrid(0, 1, number_of_nodes=3),\n", |
492 | 495 | " values_at_nodes=sp.symbols(\"f0:3\"),\n", |
493 | 496 | ")" |
494 | 497 | ] |
|
619 | 622 | "outputs": [], |
620 | 623 | "source": [ |
621 | 624 | "# A simple spline for which finite differencing would give a different result\n", |
622 | | - "spline = amici.splines.CubicHermiteSpline(\n", |
| 625 | + "spline = CubicHermiteSpline(\n", |
623 | 626 | " sbml_id=\"f\",\n", |
624 | | - " evaluate_at=amici.sbml_utils.amici_time_symbol,\n", |
625 | | - " nodes=amici.splines.UniformGrid(0, 1, number_of_nodes=3),\n", |
| 627 | + " evaluate_at=amici_time_symbol,\n", |
| 628 | + " nodes=UniformGrid(0, 1, number_of_nodes=3),\n", |
626 | 629 | " values_at_nodes=[1.0, -1.0, 1.0],\n", |
627 | 630 | " derivatives_at_nodes=[10.0, -10.0, -10.0],\n", |
628 | 631 | ")" |
|
717 | 720 | }, |
718 | 721 | "outputs": [], |
719 | 722 | "source": [ |
720 | | - "spline = amici.splines.CubicHermiteSpline(\n", |
| 723 | + "spline = CubicHermiteSpline(\n", |
721 | 724 | " sbml_id=\"f\",\n", |
722 | | - " evaluate_at=amici.sbml_utils.amici_time_symbol,\n", |
723 | | - " nodes=amici.splines.UniformGrid(0, 1, number_of_nodes=3),\n", |
| 725 | + " evaluate_at=amici_time_symbol,\n", |
| 726 | + " nodes=UniformGrid(0, 1, number_of_nodes=3),\n", |
724 | 727 | " values_at_nodes=[-2, 1, -1],\n", |
725 | 728 | " extrapolate=(\n", |
726 | 729 | " None,\n", |
|
812 | 815 | }, |
813 | 816 | "outputs": [], |
814 | 817 | "source": [ |
815 | | - "spline = amici.splines.CubicHermiteSpline(\n", |
| 818 | + "spline = CubicHermiteSpline(\n", |
816 | 819 | " sbml_id=\"f\",\n", |
817 | | - " evaluate_at=amici.sbml_utils.amici_time_symbol,\n", |
818 | | - " nodes=amici.splines.UniformGrid(0, 1, number_of_nodes=3),\n", |
| 820 | + " evaluate_at=amici_time_symbol,\n", |
| 821 | + " nodes=UniformGrid(0, 1, number_of_nodes=3),\n", |
819 | 822 | " values_at_nodes=[-2, 1, -2], # first and last node must coincide\n", |
820 | 823 | " extrapolate=\"periodic\",\n", |
821 | 824 | ")" |
|
904 | 907 | }, |
905 | 908 | "outputs": [], |
906 | 909 | "source": [ |
907 | | - "spline = amici.splines.CubicHermiteSpline(\n", |
| 910 | + "spline = CubicHermiteSpline(\n", |
908 | 911 | " sbml_id=\"f\",\n", |
909 | | - " evaluate_at=amici.sbml_utils.amici_time_symbol,\n", |
910 | | - " nodes=amici.splines.UniformGrid(0, 1, number_of_nodes=4),\n", |
| 912 | + " evaluate_at=amici_time_symbol,\n", |
| 913 | + " nodes=UniformGrid(0, 1, number_of_nodes=4),\n", |
911 | 914 | " values_at_nodes=[-1, 2, 4, 2],\n", |
912 | 915 | " bc=\"zeroderivative\",\n", |
913 | 916 | ")" |
|
963 | 966 | }, |
964 | 967 | "outputs": [], |
965 | 968 | "source": [ |
966 | | - "spline = amici.splines.CubicHermiteSpline(\n", |
| 969 | + "spline = CubicHermiteSpline(\n", |
967 | 970 | " sbml_id=\"f\",\n", |
968 | | - " evaluate_at=amici.sbml_utils.amici_time_symbol,\n", |
969 | | - " nodes=amici.splines.UniformGrid(0, 1, number_of_nodes=4),\n", |
| 971 | + " evaluate_at=amici_time_symbol,\n", |
| 972 | + " nodes=UniformGrid(0, 1, number_of_nodes=4),\n", |
970 | 973 | " values_at_nodes=[-1, 2, 4, 2],\n", |
971 | 974 | " bc=\"natural\",\n", |
972 | 975 | ")" |
|
1029 | 1032 | }, |
1030 | 1033 | "outputs": [], |
1031 | 1034 | "source": [ |
1032 | | - "spline = amici.splines.CubicHermiteSpline(\n", |
| 1035 | + "spline = CubicHermiteSpline(\n", |
1033 | 1036 | " sbml_id=\"f\",\n", |
1034 | | - " evaluate_at=amici.sbml_utils.amici_time_symbol,\n", |
1035 | | - " nodes=amici.splines.UniformGrid(0, 1, number_of_nodes=5),\n", |
| 1037 | + " evaluate_at=amici_time_symbol,\n", |
| 1038 | + " nodes=UniformGrid(0, 1, number_of_nodes=5),\n", |
1036 | 1039 | " values_at_nodes=[2, 0.05, 0.1, 2, 1],\n", |
1037 | 1040 | ")" |
1038 | 1041 | ] |
|
1068 | 1071 | }, |
1069 | 1072 | "outputs": [], |
1070 | 1073 | "source": [ |
1071 | | - "spline = amici.splines.CubicHermiteSpline(\n", |
| 1074 | + "spline = CubicHermiteSpline(\n", |
1072 | 1075 | " sbml_id=\"f\",\n", |
1073 | | - " evaluate_at=amici.sbml_utils.amici_time_symbol,\n", |
1074 | | - " nodes=amici.splines.UniformGrid(0, 1, number_of_nodes=5),\n", |
| 1076 | + " evaluate_at=amici_time_symbol,\n", |
| 1077 | + " nodes=UniformGrid(0, 1, number_of_nodes=5),\n", |
1075 | 1078 | " values_at_nodes=[2, 0.05, 0.1, 2, 1],\n", |
1076 | 1079 | " logarithmic_parametrization=True,\n", |
1077 | 1080 | ")" |
|
1191 | 1194 | "df = None\n", |
1192 | 1195 | "for n in num_nodes + amici_only_nodes:\n", |
1193 | 1196 | " # Create model\n", |
1194 | | - " spline = amici.splines.CubicHermiteSpline(\n", |
| 1197 | + " spline = CubicHermiteSpline(\n", |
1195 | 1198 | " sbml_id=\"f\",\n", |
1196 | | - " evaluate_at=amici.sbml_utils.amici_time_symbol,\n", |
1197 | | - " nodes=amici.splines.UniformGrid(0, 1, number_of_nodes=n),\n", |
| 1199 | + " evaluate_at=amici_time_symbol,\n", |
| 1200 | + " nodes=UniformGrid(0, 1, number_of_nodes=n),\n", |
1198 | 1201 | " values_at_nodes=np.random.rand(n),\n", |
1199 | 1202 | " )\n", |
1200 | 1203 | " sbml_doc = libsbml.SBMLReader().readSBML(\"example_splines.xml\")\n", |
|
0 commit comments