-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make it possible to interpret a model (initially algebraic and ODE models) #1220
base: main
Are you sure you want to change the base?
Commits on Apr 8, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 99672cd - Browse repository at this point
Copy the full SHA 99672cdView commit details -
Configuration menu - View commit details
-
Copy full SHA for d6f5b87 - Browse repository at this point
Copy the full SHA d6f5b87View commit details -
Configuration menu - View commit details
-
Copy full SHA for b67ea7d - Browse repository at this point
Copy the full SHA b67ea7dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7f97aa4 - Browse repository at this point
Copy the full SHA 7f97aa4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 412d8d4 - Browse repository at this point
Copy the full SHA 412d8d4View commit details
Commits on Apr 9, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 0488b1b - Browse repository at this point
Copy the full SHA 0488b1bView commit details -
Configuration menu - View commit details
-
Copy full SHA for c3690ea - Browse repository at this point
Copy the full SHA c3690eaView commit details
Commits on Apr 10, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 3d6552b - Browse repository at this point
Copy the full SHA 3d6552bView commit details -
Configuration menu - View commit details
-
Copy full SHA for d93b7d8 - Browse repository at this point
Copy the full SHA d93b7d8View commit details
Commits on Apr 11, 2024
-
Generator: extracted the code that generates the code to compute the …
…model. So that we can reuse them for the interpreter later on.
Configuration menu - View commit details
-
Copy full SHA for 907da52 - Browse repository at this point
Copy the full SHA 907da52View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5412941 - Browse repository at this point
Copy the full SHA 5412941View commit details -
Configuration menu - View commit details
-
Copy full SHA for d9e4258 - Browse repository at this point
Copy the full SHA d9e4258View commit details -
Configuration menu - View commit details
-
Copy full SHA for a9914f6 - Browse repository at this point
Copy the full SHA a9914f6View commit details -
Configuration menu - View commit details
-
Copy full SHA for d408b5f - Browse repository at this point
Copy the full SHA d408b5fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 09fe513 - Browse repository at this point
Copy the full SHA 09fe513View commit details -
Configuration menu - View commit details
-
Copy full SHA for 38b608a - Browse repository at this point
Copy the full SHA 38b608aView commit details
Commits on Apr 15, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 4dbd96d - Browse repository at this point
Copy the full SHA 4dbd96dView commit details -
Configuration menu - View commit details
-
Copy full SHA for ac65d8a - Browse repository at this point
Copy the full SHA ac65d8aView commit details -
GeneratorInterpreter: merged generateDoubleOrConstantVariableNameCode…
…() into generateInitialisationCode(). To make it easier to work with both the Generator and Interpreter classes.
Configuration menu - View commit details
-
Copy full SHA for 32eedd1 - Browse repository at this point
Copy the full SHA 32eedd1View commit details
Commits on Apr 16, 2024
-
GeneratorProfile: don't define the min() and max() functions for the …
…C profile. There are indeed C functions to get the minimum/maximum of two values: fmin() and fmax().
Configuration menu - View commit details
-
Copy full SHA for db0665f - Browse repository at this point
Copy the full SHA db0665fView commit details -
Configuration menu - View commit details
-
Copy full SHA for d959235 - Browse repository at this point
Copy the full SHA d959235View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9a96766 - Browse repository at this point
Copy the full SHA 9a96766View commit details -
Configuration menu - View commit details
-
Copy full SHA for cab734a - Browse repository at this point
Copy the full SHA cab734aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9341694 - Browse repository at this point
Copy the full SHA 9341694View commit details -
Configuration menu - View commit details
-
Copy full SHA for 52219db - Browse repository at this point
Copy the full SHA 52219dbView commit details
Commits on Apr 17, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 4a6c420 - Browse repository at this point
Copy the full SHA 4a6c420View commit details -
Debug: some minor improvements to the printing of an AST / Interprete…
…rStatement as a tree.
Configuration menu - View commit details
-
Copy full SHA for fb67039 - Browse repository at this point
Copy the full SHA fb67039View commit details -
Configuration menu - View commit details
-
Copy full SHA for 743b33e - Browse repository at this point
Copy the full SHA 743b33eView commit details -
Configuration menu - View commit details
-
Copy full SHA for c0e0525 - Browse repository at this point
Copy the full SHA c0e0525View commit details -
Debug: make it easier to check the name of CI elements when printing …
…an InterpreterStatement object as a tree.
Configuration menu - View commit details
-
Copy full SHA for b38dc48 - Browse repository at this point
Copy the full SHA b38dc48View commit details
Commits on Apr 18, 2024
-
Configuration menu - View commit details
-
Copy full SHA for f01ef9d - Browse repository at this point
Copy the full SHA f01ef9dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 07b99d2 - Browse repository at this point
Copy the full SHA 07b99d2View commit details -
Configuration menu - View commit details
-
Copy full SHA for a08fec0 - Browse repository at this point
Copy the full SHA a08fec0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 34ab752 - Browse repository at this point
Copy the full SHA 34ab752View commit details -
Configuration menu - View commit details
-
Copy full SHA for c139ced - Browse repository at this point
Copy the full SHA c139cedView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2a9415e - Browse repository at this point
Copy the full SHA 2a9415eView commit details -
Configuration menu - View commit details
-
Copy full SHA for c3c8c45 - Browse repository at this point
Copy the full SHA c3c8c45View commit details -
Configuration menu - View commit details
-
Copy full SHA for 03607ef - Browse repository at this point
Copy the full SHA 03607efView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1204fb1 - Browse repository at this point
Copy the full SHA 1204fb1View commit details -
Configuration menu - View commit details
-
Copy full SHA for a97ac29 - Browse repository at this point
Copy the full SHA a97ac29View commit details -
Configuration menu - View commit details
-
Copy full SHA for e0f1dbc - Browse repository at this point
Copy the full SHA e0f1dbcView commit details -
InterpreterStatement: removed the DIFF type.
Indeed, it's accounted for in the CI type and the `rate()` method.
Configuration menu - View commit details
-
Copy full SHA for 9373065 - Browse repository at this point
Copy the full SHA 9373065View commit details -
InterpreterStatement: re-enabled the evaluation of some types.
We had disabled them for coverage reasons.
Configuration menu - View commit details
-
Copy full SHA for 0b31297 - Browse repository at this point
Copy the full SHA 0b31297View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7d48ea0 - Browse repository at this point
Copy the full SHA 7d48ea0View commit details -
GeneratorProfile: simplified the definition of some trigonometric fun…
…ctions. ... and actually fixed the one for acoth()!
Configuration menu - View commit details
-
Copy full SHA for b6aa691 - Browse repository at this point
Copy the full SHA b6aa691View commit details -
Analyser: allow a
piecewise
element to have no children or only an ……`otherwise` element. See https://www.w3.org/TR/MathML2/chapter4.html#contm.piecewise for more details. Basically, a `piecewise` element can have 0+ `piece` child elements and optionally 1 `otherwise` child element. If there are no child elements then it's undefined, which in our case means that our InterpreterStatement class will evaluate such a `piecewise` element to NAN.
Configuration menu - View commit details
-
Copy full SHA for 9460678 - Browse repository at this point
Copy the full SHA 9460678View commit details -
InterpreterStatement: don't need the
OTHERWISE
type.When evaluating it, we would have one extra call for nothing while we could directly evaluate the otherwise part.
Configuration menu - View commit details
-
Copy full SHA for 290beda - Browse repository at this point
Copy the full SHA 290bedaView commit details -
GeneratorInterpreter: the default profile doesn't have an
XOR
opera……tor. So, we need to construct our statement in the other branch!
Configuration menu - View commit details
-
Copy full SHA for 3f0be73 - Browse repository at this point
Copy the full SHA 3f0be73View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3c3df21 - Browse repository at this point
Copy the full SHA 3c3df21View commit details -
Configuration menu - View commit details
-
Copy full SHA for 532efc1 - Browse repository at this point
Copy the full SHA 532efc1View commit details -
Utils: moved areNearlyEqual() to src/commonutils.cpp.
So that it can be used in tests/test_utils.cpp.
Configuration menu - View commit details
-
Copy full SHA for 5cd4a41 - Browse repository at this point
Copy the full SHA 5cd4a41View commit details
Commits on Apr 19, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 3126a0e - Browse repository at this point
Copy the full SHA 3126a0eView commit details -
Configuration menu - View commit details
-
Copy full SHA for f835aa5 - Browse repository at this point
Copy the full SHA f835aa5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1148d08 - Browse repository at this point
Copy the full SHA 1148d08View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8077ffa - Browse repository at this point
Copy the full SHA 8077ffaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6bbb036 - Browse repository at this point
Copy the full SHA 6bbb036View commit details -
Configuration menu - View commit details
-
Copy full SHA for a94e396 - Browse repository at this point
Copy the full SHA a94e396View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6614251 - Browse repository at this point
Copy the full SHA 6614251View commit details -
InterpreterStatement: cache a variable's index.
This means fewer calls when evaluating a model.
Configuration menu - View commit details
-
Copy full SHA for ce7570f - Browse repository at this point
Copy the full SHA ce7570fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 62dd985 - Browse repository at this point
Copy the full SHA 62dd985View commit details -
Configuration menu - View commit details
-
Copy full SHA for 262608e - Browse repository at this point
Copy the full SHA 262608eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 53e262a - Browse repository at this point
Copy the full SHA 53e262aView commit details
Commits on Apr 21, 2024
-
Configuration menu - View commit details
-
Copy full SHA for dc51437 - Browse repository at this point
Copy the full SHA dc51437View commit details -
Interpreter: return the states, rates, and variables by reference.
So that the end-user can modify their values, if needed (e.g., for integration purposes).
Configuration menu - View commit details
-
Copy full SHA for 63f8333 - Browse repository at this point
Copy the full SHA 63f8333View commit details -
Configuration menu - View commit details
-
Copy full SHA for acb462b - Browse repository at this point
Copy the full SHA acb462bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 265759b - Browse repository at this point
Copy the full SHA 265759bView commit details
Commits on Apr 22, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 208157f - Browse repository at this point
Copy the full SHA 208157fView commit details -
GeneratorInterpreter: removed NLA system statements.
Since we don't currently support the interpretation of DAE models.
Configuration menu - View commit details
-
Copy full SHA for dcecc8d - Browse repository at this point
Copy the full SHA dcecc8dView commit details -
InterpretStatement: renamed to InterpretAstStatement.
So that we can compare it to our future InterpreterRpnStatement.
Configuration menu - View commit details
-
Copy full SHA for 5755083 - Browse repository at this point
Copy the full SHA 5755083View commit details -
Configuration menu - View commit details
-
Copy full SHA for 76e743c - Browse repository at this point
Copy the full SHA 76e743cView commit details
Commits on Apr 23, 2024
-
Configuration menu - View commit details
-
Copy full SHA for fa196e4 - Browse repository at this point
Copy the full SHA fa196e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 50a4923 - Browse repository at this point
Copy the full SHA 50a4923View commit details
Commits on Apr 24, 2024
-
Interpreter: removed the RPN-based interpreter.
Indeed, it is 15 to 20 times slower than the AST-based interpreter. Clearly, handling a stack is more costly than handling recursion.
Configuration menu - View commit details
-
Copy full SHA for cf5da30 - Browse repository at this point
Copy the full SHA cf5da30View commit details -
Configuration menu - View commit details
-
Copy full SHA for 03d6043 - Browse repository at this point
Copy the full SHA 03d6043View commit details -
Generator tests: don't compare the compiled and interpreted models.
This was only done to check that we do indeed get the same results... and we do.
Configuration menu - View commit details
-
Copy full SHA for 960472a - Browse repository at this point
Copy the full SHA 960472aView commit details -
Coverage tests: check the values we get from the interpreter.
Very important to make sure that we do indeed get the results we expect for all aspects of the interpreter.
Configuration menu - View commit details
-
Copy full SHA for 0e40acd - Browse repository at this point
Copy the full SHA 0e40acdView commit details
Commits on Apr 25, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 91595e1 - Browse repository at this point
Copy the full SHA 91595e1View commit details -
Configuration menu - View commit details
-
Copy full SHA for f2884bc - Browse repository at this point
Copy the full SHA f2884bcView commit details -
Configuration menu - View commit details
-
Copy full SHA for d81efdf - Browse repository at this point
Copy the full SHA d81efdfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 50ef61a - Browse repository at this point
Copy the full SHA 50ef61aView commit details -
Configuration menu - View commit details
-
Copy full SHA for f87c44d - Browse repository at this point
Copy the full SHA f87c44dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9900f4e - Browse repository at this point
Copy the full SHA 9900f4eView commit details -
Interpreter: directly use
double *
.Rather than `std::vector<double>` (and then retrieve the data using `data()`. Indeed, some solvers may want to use temporary arrays (e.g., CVODE uses a temporary array of doubles for states and rates), which means that we need to be able to set them, if needed.
Configuration menu - View commit details
-
Copy full SHA for 519faa2 - Browse repository at this point
Copy the full SHA 519faa2View commit details
Commits on Apr 26, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 107fb7b - Browse repository at this point
Copy the full SHA 107fb7bView commit details -
Interpreter: don't keep track of the VOI, states, rates, and variables.
We now rely on the user providing them since some solvers may use temporary arrays to compute rates (e.g., CVODE uses temporary arrays for states and rates).
Configuration menu - View commit details
-
Copy full SHA for 2bcc1ca - Browse repository at this point
Copy the full SHA 2bcc1caView commit details -
Configuration menu - View commit details
-
Copy full SHA for c922a79 - Browse repository at this point
Copy the full SHA c922a79View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8fe2e97 - Browse repository at this point
Copy the full SHA 8fe2e97View commit details
Commits on Apr 30, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 987b3db - Browse repository at this point
Copy the full SHA 987b3dbView commit details
Commits on May 11, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 160d855 - Browse repository at this point
Copy the full SHA 160d855View commit details
Commits on May 16, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 584ebb5 - Browse repository at this point
Copy the full SHA 584ebb5View commit details
Commits on Jul 3, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 33a527a - Browse repository at this point
Copy the full SHA 33a527aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 83fe400 - Browse repository at this point
Copy the full SHA 83fe400View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4966bad - Browse repository at this point
Copy the full SHA 4966badView commit details -
Configuration menu - View commit details
-
Copy full SHA for d51df65 - Browse repository at this point
Copy the full SHA d51df65View commit details