Skip to content

Commit

Permalink
Merge pull request #490 from PEtab-dev/release_0.1.12
Browse files Browse the repository at this point in the history
Release 0.1.12

* Documentation update:
  * Added SBML2Julia to list of tools supporting PEtab
  * Extended PEtab introduction
  * Tutorial for creating PEtab files
* Minor fix: Default argument for optional 'model' parameter in 
  `petab.lint.check_condition_df`` (#477)
  • Loading branch information
dweindl committed Nov 20, 2020
2 parents f263174 + 2687841 commit 4d6d917
Show file tree
Hide file tree
Showing 21 changed files with 3,162 additions and 34 deletions.
11 changes: 10 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,23 @@

## 0.1 series

### 0.1.12

* Documentation update:
* Added SBML2Julia to list of tools supporting PEtab
* Extended PEtab introduction
* Tutorial for creating PEtab files
* Minor fix: Default argument for optional 'model' parameter in
`petab.lint.check_condition_df`` (#477)

### 0.1.11

* Function for generating synthetic data (#472)
* Minor documentation updates (#470)

### 0.1.10

*Fixed deployment setup, no further changes.*
* Fixed deployment setup, no further changes.*

### 0.1.9

Expand Down
52 changes: 30 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,9 @@ Where PEtab is supported (in alphabetical order):
- [pyPESTO](https://github.com/ICB-DCM/pyPESTO/)
([Example](https://pypesto.readthedocs.io/en/latest/example/petab_import.html))

- [SBML2Julia](https://github.com/paulflang/SBML2Julia)
([Tutorial](https://sbml2julia.readthedocs.io/en/latest/python_api.html))

If your project or tool is using PEtab, and you would like to have it listed
here, please [let us know](https://github.com/PEtab-dev/PEtab/issues).

Expand All @@ -78,24 +81,24 @@ different tools, based on passed test cases of the
[PEtab test suite](https://github.com/PEtab-dev/petab_test_suite):


| ID | Test | AMICI<br>`>=0.10.20` | Copasi | D2D | dMod | MEIGO | parPE<br>`develop` | pyABC<br>`>=0.10.1` | pyPESTO<br>`>=0.0.11` |
|----|----------------------------------------------------------------|----------------------|--------|-----|------|-------|-----------------------|-------|------------------------|
| 1 | Basic simulation | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ |
| 2 | Multiple simulation conditions | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ |
| 3 | Numeric observable parameter overrides in measurement table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ |
| 4 | Parametric observable parameter overrides in measurement table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ |
| 5 | Parametric overrides in condition table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ |
| 6 | Time-point specific overrides in the measurement table | --- | --- | +++ | +++ | +++ | --- | --- | --- |
| 7 | Observable transformations to log10 scale | +-+ | +-- | +++ | ++- | +++ | --+ | +-+ | +-+ |
| 8 | Replicate measurements | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ |
| 9 | Pre-equilibration | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ |
| 10 | Partial pre-equilibration | +++ | --- | +++ | +++ | +++ | --+ | +++ | +++ |
| 11 | Numeric initial concentration in condition table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ |
| 12 | Numeric initial compartment sizes in condition table | --- | +-- | +++ | +++ | +++ | --- | --- | --- |
| 13 | Parametric initial concentrations in condition table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ |
| 14 | Numeric noise parameter overrides in measurement table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ |
| 15 | Parametric noise parameter overrides in measurement table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ |
| 16 | Observable transformations to log scale | +-+ | +-- | +++ | ++- | +++ | --+ | +-+ | +-+ |
| ID | Test | AMICI<br>`>=0.10.20` | Copasi | D2D | dMod | MEIGO | parPE<br>`develop` | pyABC<br>`>=0.10.1` | pyPESTO<br>`>=0.0.11` | SBML2Julia |
|----|----------------------------------------------------------------|----------------------|--------|-----|------|-------|-----------------------|-------|------------------------|------------|
| 1 | Basic simulation | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 2 | Multiple simulation conditions | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 3 | Numeric observable parameter overrides in measurement table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 4 | Parametric observable parameter overrides in measurement table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 5 | Parametric overrides in condition table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 6 | Time-point specific overrides in the measurement table | --- | --- | +++ | +++ | +++ | --- | --- | --- | +++ |
| 7 | Observable transformations to log10 scale | +-+ | +-- | +++ | ++- | +++ | --+ | +-+ | +-+ | +++ |
| 8 | Replicate measurements | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 9 | Pre-equilibration | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 10 | Partial pre-equilibration | +++ | --- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 11 | Numeric initial concentration in condition table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 12 | Numeric initial compartment sizes in condition table | --- | +-- | +++ | +++ | +++ | --- | --- | --- | +++ |
| 13 | Parametric initial concentrations in condition table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 14 | Numeric noise parameter overrides in measurement table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 15 | Parametric noise parameter overrides in measurement table | +++ | +-- | +++ | +++ | +++ | --+ | +++ | +++ | +++ |
| 16 | Observable transformations to log scale | +-+ | +-- | +++ | ++- | +++ | --+ | +-+ | +-+ | +++ |

Legend:
* First character indicates whether computing simulated data is supported and simulations are correct (+) or not (-).
Expand All @@ -104,10 +107,15 @@ Legend:

## Using PEtab

If you would like to use PEtab yourself, please have a look at
[doc/documentation_data_format.rst](doc/documentation_data_format.rst) or at
the example models provided in the
[benchmark collection](https://github.com/Benchmarking-Initiative/Benchmark-Models-PEtab).
If you would like to use PEtab yourself, please have a look at:

* [a PEtab tutorial](https://petab.readthedocs.io/en/latest/tutorial.html)
going through the individual steps of setting up a parameter estimation
problem in PEtab, independently of any specific software
* [the PEtab format reference](https://petab.readthedocs.io/en/stable/documentation_data_format.html)
* the example models provided in the
[benchmark collection](https://github.com/Benchmarking-Initiative/Benchmark-Models-PEtab).
* the tutorials provided with each of the softwares supporting PEtab

To convert your existing parameter estimation problem to the PEtab format, you
will have to:
Expand Down
10 changes: 10 additions & 0 deletions doc/compile_tutorial.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#!/bin/sh

# Build a pdflatex document from the tutorial

pandoc tutorial.rst \
-o tutorial.pdf \
-V geometry:margin=1.5in -V geometry:a4paper -V fontsize=10pt \
-V urlcolor=cyan \
--toc \
--pdf-engine pdflatex
44 changes: 35 additions & 9 deletions doc/documentation_data_format.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,36 @@ systems biology, especially for the case of Ordinary Differential Equation
(ODE) models.


Scope
-----

The scope of PEtab is the full specification of parameter estimation problems
in typical systems biology applications. In our experience, a typical setup of
data-based modeling starts either with (i) the model of a biological system
that is to be calibrated, or with (ii) experimental data that are to be
integrated and analyzed using a computational model.
Measurements are linked to the biological model by an observation and noise
model. Often, measurements are taken after some perturbations have been
applied, which are modeled as derivations from a generic model
(Figure 1A). Therefore, one goal was to specify such a setup in the
least redundant way. Furthermore, we wanted to establish an intuitive, modular,
machine- and human-readable and -writable format that makes use of existing
standards.

.. figure:: gfx/petab_scope_and_files.png
:alt: A common setup for data-based modeling studies and its representation in PEtab.
:scale: 80%

**Figure 1: A common setup for data-based modeling studies and its representation in PEtab.**

Overview
---------

The PEtab data format specifies a parameter estimation problem using a number
of text-based files (`Systems Biology Markup Language (SBML) <http://sbml.org>`_
and
`Tab-Separated Values (TSV) <https://www.iana.org/assignments/media-types/text/tab-separated-values>`_),
i.e.
`Tab-Separated Values (TSV) <https://www.iana.org/assignments/media-types/text/tab-separated-values>`_)
(Figure 2), i.e.

- An SBML model [SBML]

Expand All @@ -42,9 +64,14 @@ i.e.
- (optional) A visualization file, which contains specifications how the data
and/or simulations should be plotted by the visualization routines [TSV]

.. image:: gfx/petab_files.png
.. figure:: gfx/petab_files.png
:alt: Files constituting a PEtab problem

**Figure 2: Files constituting a PEtab problem.**

Figure 1B shows how those files relate to a common setup for
data-based modeling studies.

The following sections will describe the minimum requirements of those
components in the core standard, which should provide all information for
defining the parameter estimation problem.
Expand All @@ -58,8 +85,6 @@ problem as such.
**General remarks**

- All model entities, column names and row names are case-sensitive
- All identifiers must consist only of upper and lower case letters, digits and
underscores, and must not start with a digit.
- Fields in "[]" are optional and may be left empty.


Expand Down Expand Up @@ -104,7 +129,8 @@ Detailed field description
- ``conditionId`` [STRING, NOT NULL]

Unique identifier for the simulation/experimental condition, to be referenced
by the measurement table described below.
by the measurement table described below. Must consist only of upper and
lower case letters, digits and underscores, and must not start with a digit.

- ``conditionName`` [STRING, OPTIONAL]

Expand Down Expand Up @@ -297,9 +323,9 @@ Detailed field description

* ``observableId`` [STRING]

Any identifier which would be a valid identifier in SBML. This is referenced
by the ``observableId`` column in the measurement table. Must be different from
any existing model entity or parameter introduced elsewhere.
Unique identifier for the given observable. Must consist only of upper and
lower case letters, digits and underscores, and must not start with a digit.
This is referenced by the ``observableId`` column in the measurement table.

* [``observableName``] [STRING, OPTIONAL]

Expand Down
Binary file added doc/gfx/copasi_simulation.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/gfx/petab_scope_and_files.pdf
Binary file not shown.
Binary file added doc/gfx/petab_scope_and_files.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 4d6d917

Please sign in to comment.