Skip to main content

XANES package using jupyter widgets

Project description

Presentation of thorondor, a program for data analysis and treatment in NEXAFS

Authors : Simonne and Martini

The Program is meant to be imported as a python package, if you download it, please save the thorondor folder in ...\Anaconda3\Lib\site-packages

The installation command can be found here : https://pypi.org/project/thorondor/

Link for references and paper : https://scripts.iucr.org/cgi-bin/paper?S1600577520011388

To keep the package up to date, please use the following command : pip install thorondor -U

There are two main classes at the core of thorondor:

The class Dataset

A new instance of the Dataset class will be initialized for each Dataset saved in the data folder. This object is then saved in the list "ClassList", attribute of the second class "GUI". For each Dataset, all the different dataframes that will be created as well as specific information e.g. the edge jump E0 can be found as attributes of this class. Certain attributes are instanced directly with the class, such as:

  • Name of Dataset
  • Path of original dataset
  • Timestamp

At the end of the data reduction, each Dataset should have at least three different data sets as attributes, saved as pandas.DataFrame():

  • Renamed data : Original data
  • Shifted data : If one shifts the energy
  • Reduced data : If one applies some background reduction or normalization method

A Logbook entry might also be associated, under Dataset.LogbookEntry, this is done via the GUI, the logbook should be in the common excel formats.

It is possible to add commentaries for each Dataset by using the Dataset.Comment() and to specify some additional information with the function Dataset.AdditionalInfo().

Each Dataset can be retrieved by using the function Dataset.unpickle() with the path of the saved Class as an argument. This is the recommended way to share the data, since it comes with all the metadata linked to the data collection and analysis.

The class GUI

This class is a Graphical User Interface (GUI) that is meant to be used to process nulerous XAS datasets, that focus on similar energy range and absorption edge. There are two ways of initializing the procedure in a jupyter notebook:

  • GUI = thorondor.GUI(); one will have to write the name of the data folder in which all his raw datasets are saved in a common data format (.txt, .dat, .csv, .xlsx).
  • GUI = thorondor.GUI.GetClassList(DataFolder = "<yourdatafolder>") ; if one has already worked on a folder and wishes to retrieve his work.

This class makes extensive use of the ipywidgets and is thus meant to be used with a jupyter notebook. Additional informations concerning the use of the GUI functions are provided in the "ReadMe" tab of the GUI. One may also access method information through the python help built-in function.

All the different attributes of this class can also be exported in a single hdf5 file using the pandas .to_hdf5 methods. They should then be accessed using the read_hdf methods.

The necessary Python packages are : numpy, pandas, matplotlib, ipywidgets, iPython, scipy, lmfit, emcee, thorondor and pytables.

Citation and additional details

thorondor: software for fast treatment and analysis of low-energy XAS dat. Simonne, D.H., Martini, A., Signorile, M., Piovano, A., Braglia, L., Torelli, P., Borfecchia, E. & Ricchiardi, G. (2020). J. Synchrotron Rad. 27, https://doi.org/10.1107/S1600577520011388.

FlowChart

FlowChart

Tutorial

Diapositive1 Diapositive2 Diapositive3 Diapositive4 Diapositive5 Diapositive6 Diapositive7 Diapositive8 Diapositive9 Diapositive10

Please follow the following architecture when using the software

Architecture1 Architecture2

For users on Jupyter Lab, please follow this thread : https://stackoverflow.com/questions/49542417/how-to-get-ipywidgets-working-in-jupyter-lab

Project details


Download files

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

Source Distribution

thorondor-0.3.1.tar.gz (600.7 kB view details)

Uploaded Source

Built Distribution

thorondor-0.3.1-py3-none-any.whl (678.7 kB view details)

Uploaded Python 3

File details

Details for the file thorondor-0.3.1.tar.gz.

File metadata

  • Download URL: thorondor-0.3.1.tar.gz
  • Upload date:
  • Size: 600.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.1.post20201107 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

File hashes

Hashes for thorondor-0.3.1.tar.gz
Algorithm Hash digest
SHA256 24a80da9cd2fa93bc3301b3bc21840cb5e18918a2b6d97286da7d755593b7698
MD5 859ee5c50cd57f933171bbbaa7bf7500
BLAKE2b-256 13c5b9c5355329dbfe7d7874e40805078c159d406af9eb92446b91a222295f77

See more details on using hashes here.

File details

Details for the file thorondor-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: thorondor-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 678.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.1.post20201107 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

File hashes

Hashes for thorondor-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 feb7e948076ffa8ae19bf3ba565f7a2fc50de8736845721c9a5ea813e4066ceb
MD5 750777a770f372a7488b0c6608e6ac32
BLAKE2b-256 117d014937e04608dbac524025a756307176b1bdf24b6659a6ee8b41c7ceb7d2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page