python-dts-calibration

A Python package to load raw Distributed Temperature Sensing (DTS) files, perform a calibration, and plot the result.

https://github.com/dtscalibration/python-dts-calibration

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.9%) to scientific vocabulary

Keywords

calibration dts python temperature
Last synced: 6 months ago · JSON representation ·

Repository

A Python package to load raw Distributed Temperature Sensing (DTS) files, perform a calibration, and plot the result.

Basic Info
Statistics
  • Stars: 39
  • Watchers: 7
  • Forks: 18
  • Open Issues: 12
  • Releases: 32
Topics
calibration dts python temperature
Created over 7 years ago · Last pushed 9 months ago
Metadata Files
Readme Changelog Contributing License Citation Authors Zenodo

README.rst

========
Overview
========

.. start-badges

.. list-table::

    * - Docs
      - |docs|
    * - Tests
      - |tests|
    * - Package
      - | |version| |conda-forge| |supported-versions| |commits-since|
    * - Citable
      - |zenodo|
    * - Example notebooks
      - |example-notebooks|

.. |docs| image:: https://readthedocs.org/projects/python-dts-calibration/badge/?style=flat
    :target: https://python-dts-calibration.readthedocs.io/en/latest/
    :alt: Documentation Status

.. |tests| image:: https://github.com/dtscalibration/python-dts-calibration/actions/workflows/build.yml/badge.svg
    :target: https://github.com/dtscalibration/python-dts-calibration/actions/workflows/build.yml
    :alt: Test Status

.. |version| image:: https://img.shields.io/pypi/v/dtscalibration.svg
    :alt: PyPI Package latest release
    :target: https://pypi.python.org/pypi/dtscalibration

.. |commits-since| image:: https://img.shields.io/github/commits-since/dtscalibration/python-dts-calibration/v3.1.0.svg
    :alt: Commits since latest release
    :target: https://github.com/dtscalibration/python-dts-calibration/compare/v3.1.0...main

.. |wheel| image:: https://img.shields.io/pypi/wheel/dtscalibration.svg
    :alt: PyPI Wheel
    :target: https://pypi.python.org/pypi/dtscalibration

.. |supported-versions| image:: https://img.shields.io/pypi/pyversions/dtscalibration.svg
    :alt: Supported versions
    :target: https://pypi.python.org/pypi/dtscalibration

.. |zenodo| image:: https://zenodo.org/badge/143077491.svg
   :alt: It would be greatly appreciated if you could cite this package in eg articles presentations
   :target: https://zenodo.org/badge/latestdoi/143077491

.. |example-notebooks| image:: https://mybinder.org/badge.svg
   :alt: Interactively run the example notebooks online
   :target: https://mybinder.org/v2/gh/dtscalibration/python-dts-calibration/main?labpath=docs%2Fnotebooks

.. |conda-forge| image:: https://anaconda.org/conda-forge/dtscalibration/badges/version.svg
   :alt: Conda-forge package
   :target: https://anaconda.org/conda-forge/dtscalibration

.. end-badges

A Python package to load Distributed Temperature Sensing files, perform a calibration, and plot the result. A detailed description of the calibration procedure can be found at https://doi.org/10.3390/s20082235 .

Do you have questions, ideas or just want to say hi? Please leave a message on the `discussions page `_!

Installation
============

You can install the package in a python (virtual) environment with:

.. code-block:: zsh

    pip install dtscalibration

Or the development version directly from GitHub

.. code-block:: zsh

    pip install https://github.com/dtscalibration/python-dts-calibration/zipball/main --upgrade

The package is also available on conda-forge. Install it in a conda or mamba environment with:

.. code-block:: sh

    conda install -c conda-forge dtscalibration

Package features
================
DTS measures temperature by calibrating backscatter measurements to sections with a known temperature. DTS devices provide a simple interface to perform a limited calibration. Re-calibrating your measurements with this Python package gives you better temperature estimates and additional options.

* Advanced calibration routine
   * Supports `single `_- and `double-ended `_ setups
   * Compute uncertainty of the calibrated temperature
   * All measurements are used to estimate parameter values that are constant over time.
   * Weighted least-squares calibration
   * `Fixing parameters to a previously determined value `_
   * `(Asymmetric) step loss correction `_ so that fiber connectors can be used instead of welds/splices.
   * `Matching temperature sections `_ to support J-configurations
* Dynamic reference section definition
* Tools for merging and aligning double-ended setups
* Data formats of most manufacturers are supported

Devices currently supported
===========================
* Silixa Ltd.: **Ultima** & **XT-DTS** .xml files *(up to version 8.1)*
* Sensornet Ltd.: **Oryx**, **Halo** & **Sentinel** .ddf files
* AP Sensing: **N4386B** .xml files *(single ended only)*
* SensorTran: **SensorTran 5100** .dat binary files *(single ended only)*

Documentation
=============

* A full calibration procedure for single-ended setups is presented in notebook `07Calibrate_single_ended.ipynb `_ and for double-ended setups in `08Calibrate_double_ended.ipynb `_.
* Documentation at `readthedocs `_.
* Example notebooks (`./docs/notebooks`) that work within the browser can be viewed `here `_.

How to cite
===========
The following article explains and discusses the calibration procedure:

    des Tombe, B., Schilperoort, B., & Bakker, M. (2020). Estimation of Temperature and Associated Uncertainty from Fiber-Optic Raman-Spectrum Distributed Temperature Sensing. Sensors, 20(8), 2235. https://doi.org/10.3390/s20082235

Cite the specific implementation / repository via Zenodo:

1. Check the version of `dtscalibration` that is used in your Python console with:

    >>> # The following line introduces the .dts accessor for xarray datasets
    >>> import dtscalibration  # noqa: E401
    >>> dtscalibration.__version__
    '3.0.1'
2. Go to `Zenodo `_ and follow the link to the version of interest.
3. The citation is found on the bottom right of the page.

Owner

  • Name: DTS Calibration
  • Login: dtscalibration
  • Kind: organization

Citation (CITATION.cff)

# YAML 1.2
---
message: If you use this software, please cite it as below.
authors:
  - affiliation: "Water Resources Section, Faculty of Civil Engineering and
  Geosciences, Delft University of Technology, Delft, Netherlands"
    family-names: "des Tombe"
    given-names: "Bas François"
    orcid: "https://orcid.org/0000-0002-3302-7387"
  - affiliation: "Water Resources Section, Faculty of Civil Engineering and
  Geosciences, Delft University of Technology, Delft, Netherlands"
    family-names: Schilperoort
    given-names: Bart
    orcid: "https://orcid.org/0000-0003-4487-9822"
keywords:
  - Distributed Temperature Sensing
  - DTS
  - calibration
  - Python
cff-version: "1.0.3"
doi: "10.5281/zenodo.1410097"
license: "BSD-3-Clause"
repository-code: "https://github.com/dtscalibration/python-dts-calibration"
title: "Python distributed temperature sensing calibration"
version: "v3.1.0"
url: "https://python-dts-calibration.readthedocs.io"

GitHub Events

Total
  • Watch event: 6
  • Push event: 1
Last Year
  • Watch event: 6
  • Push event: 1

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 864
  • Total Committers: 6
  • Avg Commits per committer: 144.0
  • Development Distribution Score (DDS): 0.231
Past Year
  • Commits: 109
  • Committers: 3
  • Avg Commits per committer: 36.333
  • Development Distribution Score (DDS): 0.22
Top Committers
Name Email Commits
Bas des Tombe b****e@g****m 664
Bart Schilperoort b****t@g****m 184
Bart Schilperoort - CITG b****o@t****t 8
bvdscheer b****r@o****m 4
Bart Schilperoort b****t@e****l 3
GitHub n****y@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 55
  • Total pull requests: 53
  • Average time to close issues: 8 months
  • Average time to close pull requests: about 1 month
  • Total issue authors: 12
  • Total pull request authors: 5
  • Average comments per issue: 2.76
  • Average comments per pull request: 1.81
  • Merged pull requests: 42
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 2
  • Average time to close issues: about 24 hours
  • Average time to close pull requests: 7 days
  • Issue authors: 1
  • Pull request authors: 2
  • Average comments per issue: 1.0
  • Average comments per pull request: 3.5
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • BSchilperoort (19)
  • bdestombe (19)
  • zrxdaly (3)
  • mankoff (3)
  • Roywu99 (1)
  • mitchelljbrown (1)
  • klapo (1)
  • johannespopma (1)
  • XiaohangJi (1)
  • davechris (1)
  • mariosgeo (1)
  • sdattri (1)
Pull Request Authors
  • bdestombe (25)
  • BSchilperoort (23)
  • davechris (6)
  • fprice111 (1)
  • klapo (1)
Top Labels
Issue Labels
enhancement (5) wontfix (1) bug (1)
Pull Request Labels

Dependencies

.github/workflows/build.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
.github/workflows/documentation.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/python-publish-dry-run.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
.github/workflows/python-publish.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
  • pypa/gh-action-pypi-publish 27b31702a0e7fc50959f5ad993c78deac1bdfc29 composite
pyproject.toml pypi
  • bottleneck *
  • dask *
  • flox *
  • matplotlib *
  • nc-time-axis >=1.4.1
  • netCDF4 >=1.6.4
  • numpy >=1.22.4
  • pandas *
  • pyyaml >=6.0.1
  • scipy *
  • statsmodels *
  • xarray [parallel]
  • xmltodict *