Formulates ExaModels from PEtab parameter-estimation models.
Unlike PEtab.jl, which uses the sequential method for
dynamic optimization, ExaModelsPEtab.jl applies the simultaneous method (orthogonal collocation) to
formulate the problem as an NLP. The ExaModel can then be solved with MadNLP
using a CPU or GPU backend.
An ExaModel is formulated in a single function call:
examodel = petab_examodel(
filename::String;
backend = nothing,
K::Int = 4
)Keyword arguments
backend— Array backend:nothingfor CPU (default) orCUDA.CUDABackend()for GPU.K— Degree of the Lagrange interpolating polynomial (number of collocation points per interval); defaults to4. Steady-state models ignoreKsince no mesh is required to solvef(z, p) = 0.
using ExaModelsPEtab, MadNLP
# Build the ExaModels NLP from a PEtab problem YAML file.
model_CPU = petab_examodel("path/to/problem.yaml") # CPU
result_CPU = madnlp(model_CPU)
# Build the ExaModel using CUDA backend and solve with GPU solver
using CUDA, MadNLPGPU
model_GPU = petab_examodel(
"path/to/problem.yaml";
backend = CUDA.CUDABackend(),
K = 4
)
result_GPU = madnlp(model_GPU; tol = 1e-6)-
Shin, S., Anitescu, M., & Pacaud, F. (2024). Accelerating optimal power flow with GPUs: SIMD abstraction of nonlinear programs and condensed-space interior-point methods. Electric Power Systems Research, 236, 110651.
-
Persson, S., Fröhlich, F., Grein, S., Loman, T., Ognissanti, D., Hasselgren, V., Hasenauer, J., & Cvijovic, M. (2025). PEtab.jl: advancing the efficiency and utility of dynamic modelling. Bioinformatics, 41(9), btaf497.
-
Schmiester, L., Schälte, Y., Bergmann, F. T., Camba, T., Dudkin, E., Egert, J., Fröhlich, F., Fuhrmann, L., Hauber, A. L., Kemmer, S., et al. (2021). PEtab—Interoperable specification of parameter estimation problems in systems biology. PLoS Computational Biology, 17(1), e1008646.