Chaste-codegen

Latest version: v0.10.5

Safety actively analyzes 683506 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 5

0.9.1

- Added RushLarsen translators for allowing output as c code (`--rush-larsen-c`) and labview (`--rush-larsen-labview`), These are for people wanting to generate generic c or labview code when using chaste_codegen as a stand-alone utility and are not used by chaste

0.9.0

- Updated to the latest version of the Web Lab Ontology.
- Better error messages when working with transitively finding terms, and encountering subjects that don't point to an existing node in the model.

0.8.1

- Pinned Pint version to be > 0.9 and < 0.20 since 0.20 has changed the location and number of arguments of the ScaleConverter and UnitDefinition classes. Needed for python 10 & higher.
- PLEASE NOTE: releases 0.9.0 - 0.9.10 do NOT contain this ptach.

0.8.0

- Added `--use-model-factory` flag to allow code to be added for models to self-register to the model factory of the ApPredict peoject.
- Renamed backward euler cells to be in line with others using `BackwardEulerOpt` / `BackwardEuler` instead of `BackwardEuler` and `BackwardEulerNoLot`.

0.7.0

- The singularities fixing code from release 0.6.3 has moved to the latest cellmlmanip release (0.3.0). You may see small differences in generated code, due to singularities now being fixed prior to any unit conversion taking place. These should not cause any differences in results when run with chaste.
- Improved capacitance unit checking.

0.6.3

- Fixed issue with backward euler opt models where unused state variables appeard in ComputeResidual
- Fixed memory leek on generated models within lookup table interpolation on nan/inf values in singularities.
- Removed chaste warnings from backward euler template for cases where inf/nan would end up in the table. Intead an error is thrown when multiple (more than 2) such warnings happen.

- Added an automatic fix for removable singularities in GHK equations (which can be switched off with --skip-ingularity-fixes).
The process looks for equations of any of the following forms, where U is a function of V:
- `U / (exp(U) - 1.0)`
- `U / (1.0 - exp(U))`
- `(exp(U) - 1.0) / U`
- `(1.0 - exp(U)) / U`
It replaces these with a piecewise 1e-7 either side of U==0 drawing a stright line in the region.
For example `(V + 5)/(exp(V + 5) - 1)` becomes `((fabs(-V - 5.0000000000000000) < fabs(-4.9999999000000000 / 2 - -5.0000001000000000 / 2)) ? ((-5.0000001000000000 + 5.0) / (-1.0 + exp(-5.0000001000000000 + 5.0)) + (--5.0000001000000000 + V) * ((-4.9999999000000000 + 5.0) / (-1.0 + exp(-4.9999999000000000 + 5.0)) - (-5.0000001000000000 + 5.0) / (-1.0 + exp(-5.0000001000000000 + 5.0))) / (--5.0000001000000000 - 4.9999999000000000)) : ((5.0 + V) / (-1.0 + exp(5.0 + V))))`

See for more details appendix B in: Johnstone, R. H. (2018). Uncertainty characterisation in action potential modelling for cardiac drug safety [PhD thesis]. University of Oxford. https://ora.ox.ac.uk/objects/uuid:0a28829c-828d-4641-bfb0-11193ef47195
- For lookup tables prevented expressions of the form 1 / A from being added, instead adding A. 1 / A type expressions were causing issues, when A is 0. While many cases have a piecewise to prevent hissing this case, lookup table interpolation might cause issues.
- Updated the way BackwardEuler models are calculated, to allow the jacobian to be taken into consideration for lookup tables.
- Fixed a bug with BackwardEuler models where jacobian common term equations (e.g. var_x0) ended up in lookup tables.

Page 3 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.