Fix indexed COMPARTMENT block.#1209
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #1209 +/- ##
==========================================
+ Coverage 86.55% 86.60% +0.04%
==========================================
Files 176 176
Lines 13017 13047 +30
==========================================
+ Hits 11267 11299 +32
+ Misses 1750 1748 -2 ☔ View full report in Codecov by Sentry. |
This comment has been minimized.
This comment has been minimized.
|
We'll want to merge #1206 first. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
matz-e
left a comment
There was a problem hiding this comment.
I sort of feel like I've read that std::regex is not too performant, and the use here seems a wee bit excessive. But I guess we don't need to be supremely performant and it is concise.
When encountering an indexed `COMPARTMENT` block:
COMPARTMENT i, volume_expr { species }
All state variables are searched if they match they match the pattern
`"{species}[%d]"`. For each matching state variables, we obtain the
value of the array index and substitute the name of the array index with
its value in `volume_expr`. This is then stored in the array of
compartment factors.
Check that the resulting derivatives are divided by the volume of the compartment.
|
Logfiles from GitLab pipeline #199851 (:white_check_mark:) have been uploaded here! Status and direct links: |
When encountering an indexed `COMPARTMENT` block:
COMPARTMENT i, volume_expr { species }
All state variables are searched if they match they match the pattern
`"{species}[%d]"`. For each matching state variables, we obtain the
value of the array index and substitute the name of the array index with
its value in `volume_expr`. This is then stored in the array of
compartment factors.
Check that the resulting derivatives are divided by the volume
of the compartment.
When encountering an indexed `COMPARTMENT` block:
COMPARTMENT i, volume_expr { species }
All state variables are searched if they match they match the pattern
`"{species}[%d]"`. For each matching state variables, we obtain the
value of the array index and substitute the name of the array index with
its value in `volume_expr`. This is then stored in the array of
compartment factors.
Check that the resulting derivatives are divided by the volume
of the compartment.
NMODL Repo SHA: BlueBrain/nmodl@219a3ed
When encountering an indexed
COMPARTMENTblock:All state variables are searched if they match they match the pattern
"{species}[%d]". For each matching state variables, we obtain thevalue of the array index and substitute the name of the array index with
its value in
volume_expr. This is then stored in the array ofcompartment factors.
If multiple species are listed, the above happens for each (array-valued) species.