Software Open Access

locie/triflow: Triflow v0.5.0


The aim of this library is to have a (relatively) easy way to write transient dynamic systems with 1D finite difference discretization, with fast temporal solvers.

Triflow, PDE solver framework Quick description

The main two parts of the library are:

  • symbolic tools defining the spatial discretization, with boundary taking into account in a separated part
  • a fast temporal solver written in order to use the sparsity of the finite difference method to reduce the memory and CPU usage during the solving

Moreover, extra tools are provided and the library is written in a modular way, allowing an easy extension of these different parts (see the plug-in module of the library.)

The library fits well with an interactive usage (in a jupyter notebook). The dependency list is actually larger, but on-going work target a reduction of the stack complexity.



  • WARNING: some part of the API has changed:
    • Simulation signature has changed. t arg is now optional (with t=0) as default and physical_parameters is now parameters.
    • The displays have been completely rewritten, and the previous API is depreciated. Users are encouraged to modify their scripts or to stick to the ^0.4 triflow versions.
  • move schemes from plugins to core
  • compilers: remove tensorflow, add numpy which is way slower but has no compilation overhead.
  • displays and containers are connected to the simulation via streamz
  • add post-processing.
  • real-time display is now based on Holoviews. Backward compatibility for display is broken and users are encouraged to modify their scripts or to stick to the ^0.4 triflow versions.
  • use poetry to manage dependencies.
  • use tqdm to display simulation update.


  • give user choice of compiler
    • get out tensorflow compiler (not really efficient, lot of maintenance trouble)
    • give access to theano and numpy compiler
  • upwind scheme support
  • using xarray as fields backend, allowing easy post process and save
  • update display and containers
  • adding repr string to all major classes
Files (24.2 MB)
Name Size
24.2 MB Download
All versions This version
Views 222133
Downloads 106
Data volume 183.7 MB145.1 MB
Unique views 196119
Unique downloads 86


Cite as