PEtab-dev / PEtab-dev/petab_sciml
Linter
Open
@m-philipps is already working on this.
Since Apr 14, 2026.
- Dominant language
- Python
- Stars
- 11
- Forks
- 4
- PR merge metrics
- No merged PRs in 30d
Description
A list of things that should be checked by extending the libpetab-python PEtab v2 linter.
NN model via NN model YAML format
- NN inputs/outputs are valid/unique PEtab IDs (inputs and outputs can be the same PEtab ID if the NN does nothing -- this is fine)
- layers/activation functions are in this list: https://petab-sciml.readthedocs.io/latest/layers.html
Hybridization table
-
targetIds are not alsotargetIds in the condition table -
targetIds are not alsoinputIds orparameterIds in the array data files - NN inputs are not in
targetValues - NN outputs are not
targetIds -
targetValues contain valid PEtab math expressions - pre-initialization--hybridized NNs are evaluable (i.e. only depend on things that are available before simulation)
Condition table
-
targetIds are not alsoinputIds orparameterIds in the array data files - NN inputs are not in
targetValues - NN outputs are not
targetIds
Array data files
- any input in the file must have an array defined for all initial PEtab conditions
Parameter table
- a parameter with
nominalValue:=arraymust be defined by an array - all parameters of the NN are explicitly specified to be estimated or fixed
- if posterior then all ML parameters require one of the following
- a proper prior
- finite bounds
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.