Skip to main content

A Python package to load raw DTS files, perform a calibration, and plot the result

  • Free software: BSD 3-Clause License

Installation

pip install dtscalibration

Or the development version directly from GitHub

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

Package features

  • Advanced calibration routine
    • Both single- and double-ended setups

    • Confidence intervals of calibrated temperature

    • Time integration of calibration parameters

    • Fixing parameters to a previously determined value

    • Weighted least-squares calibration

  • 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 7.0)

  • Sensornet Ltd.: Oryx & Halo .ddf files

  • AP Sensing: CP320 .xml files (single ended only)

  • SensorTran: SensorTran 5100 .dat binary files (single ended only)

Learn by examples

Interactively run the example notebooks online by clicking the example-notebooks button in the beginning of this README.

Documentation

https://python-dts-calibration.readthedocs.io/

Changelog

0.8.0 (2020-02-14)

  • Valentine edition

  • Added example for fixing parameters

  • Bug fixed in routine for reading Sensornet files (Bor van der Scheer)

  • Official support for Python 3.8

  • When the datastore is printed to the screen, the mean and std of thereference temperature is plotted

  • Integrated differential attenuation is reformulated. Starts integrating atthe first reference section location.

  • Estimation of the variance of the Stokes that is linear dependent on theintensity (Poisson)

  • Removed __slots__ attribute

0.7.4 (2020-01-26)

  • Update automated zenodo reference requires to draft a new release

0.7.3 (2020-01-24)

  • Solved xlim in subplots of plot_residuals_reference_sections funciton

  • Solved YAML depreciation related problems

  • Introduced new approach for double ended calibration, with a different Cfor the forward and backward channel

  • First code added for time variant asymmetric attenuation, such as connectors.

  • First code added for matching sections

0.7.2 (2019-11-22)

  • Set alpha and or gamma to known value, with corresponding variance.

  • Bug in computation of the weights for single and double-ended calibration

  • Added notebook about merging two single ended measurements

  • Added example notebook on how to create a custom datastore

  • Added notebook examples for loading in data from the different manufa..

  • Loading AP Sensing files and tests

  • Loading Sensortran files

0.7.0 (2019-11-07)

  • Ensure order of dimension upon initialization of DataStore. Resamplingwould lead to issues

  • Bug in section definition (reported by Robert Law)

  • Rewritten calibration solvers to align with article of this package

  • Removed old calibration solvers

  • New possibilities of saving and loading large DataStores saved to multiplenetCDF files

0.6.7 (2019-11-01)

  • Use twine to check if the compiled package meets all the requirements of Pypi

0.6.6 (2019-11-01)

  • Use twine to check if the compiled package meets all the requirements of Pypi

0.6.5 (2019-11-01)

  • Major bug fix version.

  • More flexibility in defining the time and space dimensions

  • Fixed unsave yaml loading

  • Added support for Silixa 7 files

  • Start using __slots__ as it is something new

  • xarray doesn’t have the attribute ._initialized anymore. Rewritten teststo make more sense by checking the sum of the Stokes instead.

  • Support for double ended Sensornet files and tests

  • Bug fixing

0.6.4 (2019-04-09)

  • More flexibility in defining the time dimension

  • Cleanup of some plotting functions

0.6.3 (2019-04-03)

  • Added reading support for zipped silixa files. Still rarely fails due to upstream bug.

  • pretty __repr__

  • Reworked double ended calibration procedure. Integrated differential attenuation outside of reference sections is now calculated seperately.

  • New approach for estimation of Stokes variance. Not restricted to a decaying exponential

  • Bug in averaging TMPF and TMPB to TMPW

  • Modified residuals plot, especially useful for long fibers (Great work Bart!)

  • Example notebooks updatred accordingly

  • Bug in to_netcdf when passing encodings

  • Better support for sections that are not related to a timeseries.

0.6.2 (2019-02-26)

  • Double-ended weighted calibration procedure is rewritten so that the integrated differential attenuation outside of the reference sections is calculated seperately. Better memory usage and faster

  • Other calibration routines cleaned up

  • Official support for Python 3.7

  • Coverage figures are now trustworthy

  • String representation improved

  • Include test for aligning double ended measurements

  • Example for aligning double ended measurements

0.6.1 (2019-01-04)

  • Many examples were shown in the documentation

  • Fixed verbose settings of solvers

  • Revised example notebooks

  • Moved to 80 characters per line (PEP)

  • More Python formatting using YAPF

  • Use example of plot_residuals_reference_sections function in Stokes variance example notebook

  • Support Python 3.7

0.6.0 (2018-12-08)

  • Reworked the double-ended calibration routine and the routine for confidence intervals. The integrated differential attenuation is not zero at x=0 anymore.

  • Verbose commands carpentry

  • Bug fixed that would make the read_silixa routine crash if there are copies of the same file in the same folder

  • Routine to read sensornet files. Only single-ended configurations supported for now. Anyone has double-ended measurements?

  • Lazy calculation of the confidence intervals

  • Bug solved. The x-coordinates where not calculated correctly. The bug only appeared for measurements along long cables.

  • Example notebook of importing a timeseries. For example, importing measurments from an external temperature sensor for calibration.

  • Updated documentation

0.5.3 (2018-10-26)

  • No changes

0.5.2 (2018-10-26)

  • New resample_datastore method (see basic usage notebook)

  • New notebook on basic usage of DataStore

  • Support for Silixa v4 (Windows xp based system) and Silixa v6 (Windows 7) measurement files

  • The representation string now includes the sections

  • Reorganized the IO related files

  • CI: Add appveyor to continuesly test on Windows platform

  • Auto load Silixa files to memory option, if size is small

0.5.1 (2018-10-19)

  • Rewritten the routine that reads Silixa measurement files

  • dts-calibration is now citable

  • Refractored the MC confidence interval routine

  • MC confidence interval routine speed up, with full dask support

  • Link to mybinder.org to try the example notebooks online

  • Added a few missing dependencies

  • The routine to read the Silixa files is completely refractored. Faster, smarter. Supports both the path to a directory and a list of file paths.

  • Changed imports from dtscalibration to be relative

0.4.0 (2018-09-06)

  • Single ended calibration

  • Confidence intervals for single ended calibration

  • Example notebooks have figures embedded

  • Several bugs squashed

  • Reorganized DataStore functions

0.2.0 (2018-08-16)

  • Double ended calibration

  • Confidence intervals for double ended calibration

0.1.0 (2018-08-01)

  • First release on PyPI.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dtscalibration-0.8.0.tar.gz (6.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dtscalibration-0.8.0-py2.py3-none-any.whl (60.4 kB view details)

Uploaded Python 2Python 3

File details

Details for the file dtscalibration-0.8.0.tar.gz.

File metadata

  • Download URL: dtscalibration-0.8.0.tar.gz
  • Upload date:
  • Size: 6.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0.post20191030 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.5

File hashes

Hashes for dtscalibration-0.8.0.tar.gz
Algorithm Hash digest
SHA256 c4c1587b67f45152066196db4cde881d13350701bd4ef734967b517b2627843f
MD5 de1f55b0939361d43bbb3ea87fea1c90
BLAKE2b-256 5cadbfbef8307b9f7fc6a7787238fcc4b1a5ba49dfcbe2445d61fd31de5b0b06

See more details on using hashes here.

File details

Details for the file dtscalibration-0.8.0-py2.py3-none-any.whl.

File metadata

  • Download URL: dtscalibration-0.8.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 60.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0.post20191030 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.5

File hashes

Hashes for dtscalibration-0.8.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 6f01a67f94da33589e0d51afbb15889536749b694ad815dd838f9567d33afae6
MD5 d8937ebc20bb5c78c2b060be809a69c7
BLAKE2b-256 0a4653f8f3a4c2d9f93040a246df52c1af0afb43dea1916a10bb014bdf222cad

See more details on using hashes here.

Release history Release notifications | RSS feed

3.1.0

2 files

3.0.3

2 files

3.0.2

2 files

3.0.0

2 files

2.0.0

2 files

1.2.0

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

0.9.2

2 files

0.9.0

2 files

This release

0.8.0 This release

2 files

0.7.4

2 files

0.7.3

2 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

0.6.7

2 files

0.6.5

2 files

0.6.4

2 files

0.6.3

2 files

0.6.2

2 files

0.6.1

2 files

0.6.0

2 files

0.5.3

2 files

0.5.2

2 files

0.5.1

2 files

0.5.0

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

1 file

0.1.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page