timflow

A Python package for the modeling of multi-layer groundwater flow with analytic elements.
https://github.com/timflow-org/timflow

Category: Hydrosphere
Sub Category: Freshwater and Hydrology

Keywords

analytic-element-method groundwater hydrology modeling python

Keywords from Contributors

pastas modflow arctic data-management observations

Last synced: about 13 hours ago
JSON representation

Repository metadata

Analytic element modeling of groundwater flow

README.md

PyPI - Version
General
Steady
Transient
Documentation Status
Ruff

timflow, a multi-layer analytic element model

timflow is a Python package for the modeling of multi-layer groundwater flow with analytic
elements. The package is split into two main submodules: timflow.steady for steady-state flow
and timflow.transient for modeling transient flow. Both modules may be applied to an
arbitrary number of aquifers and leaky layers. The head, flow, and leakage between
aquifers may be computed semi-analytically at any point in space and time.

The design
of timflow is object-oriented and has been kept simple and flexible.
New analytic elements may be added to the code without making any changes in the
existing part of the code. timflow is coded in Python and uses numba to speed up
evaluation of the line elements and inverse Laplace transforms.
The transient submodule is based on the Laplace-transform analytic element
method. The solution is computed analytically in the Laplace domain and converted back
to the time domain numerically usig the algorithm of De Hoog, Stokes, and Knight.

Installation

timflow requires Python >= 3.11 and can be installed from PyPI:

pip install timflow

To install all optional dependencies (for running tests and building docs):

pip install timflow[dev]

Documentation

The documentation is hosted on readthedocs.

History

timflow combines the old packages TimML
and TTim. Git history is maintained within this new package, but the old repositories are still available for searching through old issues, pull requests, and other information.

Citation

Some of the papers that you may want to cite when using timflow are:

  • Steady-state flow:
  • Transient flow:
    • M. Bakker. 2013. Semi-analytic modeling of transient multi-layer flow with TTim.
      Hydrogeology Journal, 21: 935-943. https://doi.org/10.1007/s10040-013-0975-2
    • M .Bakker. 2013. Analytic modeling of transient multi-layer flow. In: Advances in
      Hydrogeology, edited by P Mishra and K Kuhlman, Springer, Heidelberg, 95-114.

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
  - family-names: "Bakker"
    given-names: "Mark"
    orcid: "https://orcid.org/0000-0002-5629-2861"
title: "timflow"
url: "https://github.com/timflow-org/timflow"

references:
  - type: article
    authors:
      - family-names: "Bakker"
        given-names: "Mark"
        orcid: "https://orcid.org/0000-0002-5629-2861"
      - family-names: "Strack"
        given-names: "Otto D.L."
    doi: "10.1016/S0022-1694(02)00319-0"
    journal: "Journal of Hydrology"
    title: "Analytic elements for multiaquifer flow"
    volume: 271
    number: 1
    start: 119
    end: 129
    year: 2003
  - type: article
    authors:
      - family-names: "Bakker"
        given-names: "Mark"
        orcid: "https://orcid.org/0000-0002-5629-2861"
    doi: "10.1007/s10040-013-0975-2"
    journal: "Hydrogeology Journal"
    title: "Semi-analytic modeling of transient multi-layer flow with TTim"
    volume: 21
    start: 935
    end: 943
    year: 2013

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 3 days ago

Total Commits: 985
Total Committers: 9
Avg Commits per committer: 109.444
Development Distribution Score (DDS): 0.441

Commits in past year: 283
Committers in past year: 4
Avg Commits per committer in past year: 70.75
Development Distribution Score (DDS) in past year: 0.364

Name Email Commits
Mark Bakker m****k@g****m 551
Davíd Brakenhoff d****f@a****l 393
Mattijs Borst 4****t 17
Justin Jent j****r@g****m 9
xzyang43 5****3 8
Huite h****a@g****m 4
Raoul Collenteur r****r@g****m 1
JoerivanEngelen j****n@h****m 1
Hugo Lapré g****b@t****l 1

Committer domains:


Issue and Pull Request metadata

Last synced: 2 days ago

Total issues: 24
Total pull requests: 11
Average time to close issues: 8 days
Average time to close pull requests: 2 days
Total issue authors: 5
Total pull request authors: 4
Average comments per issue: 0.38
Average comments per pull request: 2.36
Merged pull request: 8
Bot issues: 0
Bot pull requests: 0

Past year issues: 24
Past year pull requests: 11
Past year average time to close issues: 8 days
Past year average time to close pull requests: 2 days
Past year issue authors: 5
Past year pull request authors: 4
Past year average comments per issue: 0.38
Past year average comments per pull request: 2.36
Past year merged pull request: 8
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/timflow-org/timflow

Top Issue Authors

  • dbrakenhoff (18)
  • mbakker7 (3)
  • yslinnemann (1)
  • Huite (1)
  • tomvansteijn (1)

Top Pull Request Authors

  • mbakker7 (4)
  • HsHeesen (3)
  • dbrakenhoff (3)
  • MattBrst (1)

Top Issue Labels

  • steady (9)
  • enhancement (8)
  • documentation (6)
  • transient (5)
  • bug (2)

Top Pull Request Labels

  • bug (1)
  • documentation (1)

Package metadata

pypi.org: timflow

Analytic element modeling of groundwater flow

  • Homepage:
  • Documentation: https://timflow.readthedocs.io/
  • Licenses: MIT License Copyright (c) 2026 timflow-org Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  • Latest release: 0.1.0 (published about 2 months ago)
  • Last Synced: 2026-03-25T02:01:13.915Z (3 days ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 132 Last month
  • Rankings:
    • Dependent packages count: 7.872%
    • Average: 26.189%
    • Dependent repos count: 44.505%
  • Maintainers (1)

Score: 11.277228447584399