Commit 3202b6f9 authored by payno's avatar payno

[refactoring] rename xas -> est

parent 1b5f6831
...@@ -14,7 +14,7 @@ variables: ...@@ -14,7 +14,7 @@ variables:
- export PYTHONPATH="${PYTHONPATH}:/usr/lib/python3/dist-packages/" - export PYTHONPATH="${PYTHONPATH}:/usr/lib/python3/dist-packages/"
- export LD_LIBRARY_PATH=/lib/i386-linux-gnu/:${LD_LIBRARY_PATH} - export LD_LIBRARY_PATH=/lib/i386-linux-gnu/:${LD_LIBRARY_PATH}
- export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu/:${LD_LIBRARY_PATH} - export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu/:${LD_LIBRARY_PATH}
- export XAS_TEST_PROCESS=False - export EST_TEST_PROCESS=False
- python --version - python --version
- python -m pip install pip --upgrade - python -m pip install pip --upgrade
- python -m pip install setuptools --upgrade - python -m pip install setuptools --upgrade
...@@ -30,8 +30,8 @@ variables: ...@@ -30,8 +30,8 @@ variables:
- python -m pip install pymca --upgrade --pre - python -m pip install pymca --upgrade --pre
- git submodule update --init --recursive - git submodule update --init --recursive
- python -m pip install -e . - python -m pip install -e .
- python -m xas --help - python -m est --help
- /usr/bin/xvfb-run --server-args="-screen 0 1024x768x24" -a xas test -v - /usr/bin/xvfb-run --server-args="-screen 0 1024x768x24" -a est test -v
.build_template: &test_linux_template_larch .build_template: &test_linux_template_larch
...@@ -41,7 +41,7 @@ variables: ...@@ -41,7 +41,7 @@ variables:
- export PYTHONPATH="${PYTHONPATH}:/usr/lib/python3/dist-packages/" - export PYTHONPATH="${PYTHONPATH}:/usr/lib/python3/dist-packages/"
- export LD_LIBRARY_PATH=/lib/i386-linux-gnu/:${LD_LIBRARY_PATH} - export LD_LIBRARY_PATH=/lib/i386-linux-gnu/:${LD_LIBRARY_PATH}
- export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu/:${LD_LIBRARY_PATH} - export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu/:${LD_LIBRARY_PATH}
- export XAS_TEST_PROCESS=False - export EST_TEST_PROCESS=False
- python --version - python --version
- python -m pip install pip --upgrade - python -m pip install pip --upgrade
- python -m pip install setuptools --upgrade - python -m pip install setuptools --upgrade
...@@ -57,8 +57,8 @@ variables: ...@@ -57,8 +57,8 @@ variables:
- install_larch - install_larch
- git submodule update --init --recursive - git submodule update --init --recursive
- python -m pip install -e . - python -m pip install -e .
- python -m xas --help - python -m est --help
- /usr/bin/xvfb-run --server-args="-screen 0 1024x768x24" -a xas test -v - /usr/bin/xvfb-run --server-args="-screen 0 1024x768x24" -a est test -v
.build_template: &test_linux_template_pymca_larch .build_template: &test_linux_template_pymca_larch
...@@ -68,7 +68,7 @@ variables: ...@@ -68,7 +68,7 @@ variables:
- export PYTHONPATH="${PYTHONPATH}:/usr/lib/python3/dist-packages/" - export PYTHONPATH="${PYTHONPATH}:/usr/lib/python3/dist-packages/"
- export LD_LIBRARY_PATH=/lib/i386-linux-gnu/:${LD_LIBRARY_PATH} - export LD_LIBRARY_PATH=/lib/i386-linux-gnu/:${LD_LIBRARY_PATH}
- export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu/:${LD_LIBRARY_PATH} - export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu/:${LD_LIBRARY_PATH}
- export XAS_TEST_PROCESS=False - export EST_TEST_PROCESS=False
- python --version - python --version
- python -m pip install pip --upgrade - python -m pip install pip --upgrade
- python -m pip install setuptools --upgrade - python -m pip install setuptools --upgrade
...@@ -85,8 +85,8 @@ variables: ...@@ -85,8 +85,8 @@ variables:
- install_larch - install_larch
- git submodule update --init --recursive - git submodule update --init --recursive
- python -m pip install -e . - python -m pip install -e .
- python -m xas --help - python -m est --help
- /usr/bin/xvfb-run --server-args="-screen 0 1024x768x24" -a xas test -v - /usr/bin/xvfb-run --server-args="-screen 0 1024x768x24" -a est test -v
test:python3.5-stretch-pyqt5_pymca: test:python3.5-stretch-pyqt5_pymca:
...@@ -104,7 +104,7 @@ test:python3.5-stretch-pyqt5_pymca_larch: ...@@ -104,7 +104,7 @@ test:python3.5-stretch-pyqt5_pymca_larch:
<<: *test_linux_template_pymca_larch <<: *test_linux_template_pymca_larch
test:test-xas-tutorials_pymca: test:test-est-tutorials_pymca:
type: test type: test
image: docker-registry.esrf.fr/dau/tomwer:python3.5_stretch_pyqt5 image: docker-registry.esrf.fr/dau/tomwer:python3.5_stretch_pyqt5
before_script: before_script:
...@@ -130,4 +130,4 @@ test:test-xas-tutorials_pymca: ...@@ -130,4 +130,4 @@ test:test-xas-tutorials_pymca:
- python -m pip install . - python -m pip install .
script: script:
- /usr/bin/xvfb-run --server-args="-screen 0 1024x768x24" -a jupyter nbconvert --to notebook --execute doc/tutorials/pymca_xas_process.ipynb - /usr/bin/xvfb-run --server-args="-screen 0 1024x768x24" -a jupyter nbconvert --to notebook --execute doc/tutorials/pymca_est_process.ipynb
[submodule "xas/pushworkflow"] [submodule "est/pushworkflow"]
path = xas/pushworkflow path = est/pushworkflow
url = https://gitlab.esrf.fr/payno/pushworkflow.git url = https://gitlab.esrf.fr/payno/pushworkflow.git
branch = master branch = master
...@@ -4,21 +4,21 @@ Change Log ...@@ -4,21 +4,21 @@ Change Log
0.2.0: 13/08/2019 0.2.0: 13/08/2019
----------------- -----------------
* xas * est
* core * core
* add larch processes: * add larch processes:
* autobk (xas.core.process.larch.autobk) * autobk (est.core.process.larch.autobk)
* mback (xas.core.process.larch.mback) * mback (est.core.process.larch.mback)
* mback_norm (xas.core.process.larch.mback_norm) * mback_norm (est.core.process.larch.mback_norm)
* pre_edge (xas.core.process.larch.pre_edge) * pre_edge (est.core.process.larch.pre_edge)
* xftf (xas.core.process.larch.xftf) * xftf (est.core.process.larch.xftf)
* add roi process: data reduction * add roi process: data reduction
* move pymca processes to xas.core.process.pymca * move pymca processes to est.core.process.pymca
* input / output * input / output
...@@ -26,7 +26,7 @@ Change Log ...@@ -26,7 +26,7 @@ Change Log
* app * app
* add reprocessing application: take one .h5 file generated by the xas library and reprocess the workflow * add reprocessing application: take one .h5 file generated by the est library and reprocess the workflow
* orangecontrib * orangecontrib
...@@ -43,16 +43,16 @@ Change Log ...@@ -43,16 +43,16 @@ Change Log
0.1.0 0.1.0
----- -----
* xas * est
* core * core
* add core processes to access the PyMca XASClass main functionnalities * add core processes to access the PyMca XASClass main functionnalities
* spectra normalization (xas.core.process.normalization) * spectra normalization (est.core.process.normalization)
* exafs - Extended X-Ray Absorption Fine Structure (xas.core.process.exafs) * exafs - Extended X-Ray Absorption Fine Structure (est.core.process.exafs)
* fourier transform (xas.core.process.ft) * fourier transform (est.core.process.ft)
* weight (xas.core.process.weight) * weight (est.core.process.weight)
* input / output * input / output
......
The xas library goal is to provide some usefull process for acquisition/reconstruction automation. The est library goal is to provide some usefull process for acquisition/reconstruction automation.
xas is distributed under the MIT license. est is distributed under the MIT license.
xas is using the Qt library. A word of caution is to be provided. If users develop and distribute software using modules accessing Qt by means of Riverbank Computing Qt bindings PyQt4 or PyQt5, those users will be conditioned by the license of their PyQt4/5 software (GPL or commercial). If the end user does not own a commercial license of PyQt4 or PyQt5 and wishes to be free of any distribution condition, (s)he should be able to use PySide because it uses the LGPL license. est is using the Qt library. A word of caution is to be provided. If users develop and distribute software using modules accessing Qt by means of Riverbank Computing Qt bindings PyQt4 or PyQt5, those users will be conditioned by the license of their PyQt4/5 software (GPL or commercial). If the end user does not own a commercial license of PyQt4 or PyQt5 and wishes to be free of any distribution condition, (s)he should be able to use PySide because it uses the LGPL license.
It can also be used as an Orange3 add-on. If you wan't to distribute Orange you must stick to there license (GNU [GPL-3.0]+ license) It can also be used as an Orange3 add-on. If you wan't to distribute Orange you must stick to there license (GNU [GPL-3.0]+ license)
......
# Description # Description
XAS is a library providing tools to define a workflow of treatments for X-ray Absorption Structure analysis. `est` is a library providing tools to define a workflow of treatments for X-ray Absorption Structure analysis.
Treatments are based on eather [PyMca](https://github.com/vasole/pymca)_ or [Larch](https://xraypy.github.io/xraylarch/) Treatments are based on eather [PyMca](https://github.com/vasole/pymca)_ or [Larch](https://xraypy.github.io/xraylarch/)
The library offers a convenient object for connecting those two. The library offers a convenient object for connecting those two.
...@@ -12,4 +12,4 @@ An [Orange3](https://github.com/biolab/orange3) add-on is also provided by the l ...@@ -12,4 +12,4 @@ An [Orange3](https://github.com/biolab/orange3) add-on is also provided by the l
from git repository from git repository
------------------- -------------------
see [install](http://www.edna-site.org/pub/doc/xas/latest/install.html) from documentation see [install](http://www.edna-site.org/pub/doc/est/latest/install.html) from documentation
...@@ -8,5 +8,5 @@ For this you should execute the `process` application ...@@ -8,5 +8,5 @@ For this you should execute the `process` application
.. code-block:: bash .. code-block:: bash
xas process pymca_workflow.ows -i [input_spectrum_file] -o [output_file] est process pymca_workflow.ows -i [input_spectrum_file] -o [output_file]
...@@ -2,13 +2,13 @@ reprocessing ...@@ -2,13 +2,13 @@ reprocessing
------------ ------------
A file containing information about raw data and xas process flow (output file generated by the xas output orange widget for example) can A file containing information about raw data and est process flow (output file generated by est output orange widget for example) can
be reprocess from the reprocessing application. be reprocess from the reprocessing application.
This will reprocess raw data (spectra, energy) through the processing flow. This will reprocess raw data (spectra, energy) through the processing flow.
.. code-block:: bash .. code-block:: bash
xas reprocessing myfile.h5 [--spectra_path path1] [--energy_path path2] [--configuration_path path3] [--entry entry] est reprocessing myfile.h5 [--spectra_path path1] [--energy_path path2] [--configuration_path path3] [--entry entry]
note: path is relative to the entry. By default entry is 'scan1' and path are also set to default values. note: path is relative to the entry. By default entry is 'scan1' and path are also set to default values.
...@@ -53,7 +53,7 @@ source_suffix = ['.rst', '.md'] ...@@ -53,7 +53,7 @@ source_suffix = ['.rst', '.md']
master_doc = 'index' master_doc = 'index'
# General information about the project. # General information about the project.
project = 'xas' project = 'est'
copyright = '2016-2019, ESRF' copyright = '2016-2019, ESRF'
author = 'ESRF' author = 'ESRF'
...@@ -134,7 +134,7 @@ html_theme = 'nature' ...@@ -134,7 +134,7 @@ html_theme = 'nature'
# The name of an image file (relative to this directory) to place at the top # The name of an image file (relative to this directory) to place at the top
# of the sidebar. # of the sidebar.
html_logo = "img/xas.png" html_logo = "img/est.png"
# The name of an image file (within the static path) to use as favicon of the # The name of an image file (within the static path) to use as favicon of the
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 # docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
...@@ -207,7 +207,7 @@ html_logo = "img/xas.png" ...@@ -207,7 +207,7 @@ html_logo = "img/xas.png"
#html_search_scorer = 'scorer.js' #html_search_scorer = 'scorer.js'
# Output file base name for HTML help builder. # Output file base name for HTML help builder.
htmlhelp_basename = 'xas' htmlhelp_basename = 'est'
# -- Options for LaTeX output --------------------------------------------- # -- Options for LaTeX output ---------------------------------------------
...@@ -251,12 +251,12 @@ latex_elements = { ...@@ -251,12 +251,12 @@ latex_elements = {
# One entry per manual page. List of tuples # One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section). # (source start file, name, description, authors, manual section).
man_pages = [ man_pages = [
(master_doc, 'xas', 'xas Documentation', (master_doc, 'est', 'est Documentation',
[author], 1) [author], 1)
] ]
htmlhelp_pages = [ htmlhelp_pages = [
(master_doc, 'xas', 'xas Add-on Documentation', (master_doc, 'est', 'est Add-on Documentation',
[author], 1) [author], 1)
] ]
...@@ -270,8 +270,8 @@ htmlhelp_pages = [ ...@@ -270,8 +270,8 @@ htmlhelp_pages = [
# (source start file, target name, title, author, # (source start file, target name, title, author,
# dir menu entry, description, category) # dir menu entry, description, category)
texinfo_documents = [ texinfo_documents = [
(master_doc, 'xas', 'xas Documentation', (master_doc, 'est', 'est Documentation',
author, 'xas', 'One line description of project.', author, 'est', 'One line description of project.',
'Miscellaneous'), 'Miscellaneous'),
] ]
......
=== ===
XAS est
=== ===
XAS is a library providing tools to define a workflow of treatments for X-ray Absorption Structure analysis. `est` is a library providing tools to define a workflow of treatments for X-ray Absorption Structure analysis.
Treatments are based on eather `PyMca <https://github.com/vasole/pymca>`_ or `Larch <https://xraypy.github.io/xraylarch/>`_. Treatments are based on eather `PyMca <https://github.com/vasole/pymca>`_ or `Larch <https://xraypy.github.io/xraylarch/>`_.
The library offers a convenient object for connecting those two. The library offers a convenient object for connecting those two.
...@@ -33,7 +33,7 @@ An `Orange3 <https://github.com/biolab/orange3>`_ add-on is also provided by the ...@@ -33,7 +33,7 @@ An `Orange3 <https://github.com/biolab/orange3>`_ add-on is also provided by the
API API
:doc:`tutorials/index` :doc:`tutorials/index`
tutorials for using the xas library tutorials for using the est library
:doc:`larch_pymca` :doc:`larch_pymca`
pymca and larch coexistence pymca and larch coexistence
......
installation installation
:::::::::::: ::::::::::::
xas is library made to link several xas libraries together and define treatment workflows. est is library made to link several libraries together and define treatment workflows.
This is the recommended way to install xas. This is the recommended way to install est.
Step 1 - Create a virtual env Step 1 - Create a virtual env
''''''''''''''''''''''''''''' '''''''''''''''''''''''''''''
...@@ -33,20 +33,20 @@ Step 2 installation ...@@ -33,20 +33,20 @@ Step 2 installation
clone the git repository ( and the submodule - --recursive option) clone the git repository ( and the submodule - --recursive option)
git clone --recursive https://gitlab.esrf.fr/workflow/xas.git git clone --recursive https://gitlab.esrf.fr/workflow/est.git
You can install from the code source (https://gitlab.esrf.fr/workflow/xas) You can install from the code source (https://gitlab.esrf.fr/workflow/est)
.. code-block:: bash .. code-block:: bash
pip install .[full] pip install .[full]
.. note:: Has explained in the description the goal of xas is to link pymca and / or larch treatments to define a workflow. By default neither pymca or larch are installed. To use xas you should have at least one installed. .. note:: Has explained in the description the goal of est is to link pymca and / or larch treatments to define a workflow. By default neither pymca or larch are installed. To use est you should have at least one installed.
Orange3 add-on Orange3 add-on
:::::::::::::: ::::::::::::::
xas is offering an orange add-on for having a convenient and user friendly way to define a treatment workflow. est is offering an orange add-on for having a convenient and user friendly way to define a treatment workflow.
To benefit from the orange add-on you will need to have orange3 canvas installed. To benefit from the orange add-on you will need to have orange3 canvas installed.
.. code-block:: bash .. code-block:: bash
...@@ -54,7 +54,7 @@ To benefit from the orange add-on you will need to have orange3 canvas installed ...@@ -54,7 +54,7 @@ To benefit from the orange add-on you will need to have orange3 canvas installed
pip install orange3 pip install orange3
To launch orange and access the xas add-on you can simply launch Orange2 with the command: To launch orange and access the est add-on you can simply launch Orange2 with the command:
.. code-block:: bash .. code-block:: bash
...@@ -101,7 +101,7 @@ You also should generate documentation to be accessible from Orange GUI (pressin ...@@ -101,7 +101,7 @@ You also should generate documentation to be accessible from Orange GUI (pressin
Warning Warning
::::::: :::::::
At the time being (August 2019) the xas GUI is using silx from the silx.gui.qt module which try to use PyQt5, then PySide2, then PyQt4 At the time being (August 2019) the est GUI is using silx from the silx.gui.qt module which try to use PyQt5, then PySide2, then PyQt4
Order is different for AnyQt, used by Orange3. So some incoherence might append (will bring errors) in the Signal/SLOT connection Order is different for AnyQt, used by Orange3. So some incoherence might append (will bring errors) in the Signal/SLOT connection
during widget instantiation. during widget instantiation.
......
Larch and pymca compatibility Larch and pymca compatibility
----------------------------- -----------------------------
xas library is using the :class:`XASObject` to associate larch and pymca treatments and create as much as possible a bridge between those two. The library is using the :class:`XASObject` to associate larch and pymca treatments and create as much as possible a bridge between those two.
Here is a small summary about current (August 2019) larch processes and pymca processes : Here is a small summary about current (August 2019) larch processes and pymca processes :
Original functions goals: Original functions goals:
+-----------------------------+----------------------+---------------------------------------------------------------+----------------------------------+ +-----------------------------+----------------------+---------------------------------------------------------------+----------------------------------+
| larch functions | pymca functions | description | is currently accessible from xas | | larch functions | pymca functions | description | is currently accessible from est |
+=============================+======================+===============================================================+==================================+ +=============================+======================+===============================================================+==================================+
| | processSpectrum | compute all variables for the given spectrum | YES | | | processSpectrum | compute all variables for the given spectrum | YES |
+-----------------------------+----------------------+---------------------------------------------------------------+----------------------------------+ +-----------------------------+----------------------+---------------------------------------------------------------+----------------------------------+
......
xas.core package est.core package
================ ================
Subpackages Subpackages
...@@ -9,26 +9,26 @@ Subpackages ...@@ -9,26 +9,26 @@ Subpackages
utils/index.rst utils/index.rst
process/index.rst process/index.rst
xas.core.io module est.core.io module
------------------ ------------------
.. automodule:: xas.core.io .. automodule:: est.core.io
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
xas.core.reprocessing module est.core.reprocessing module
---------------------------- ----------------------------
.. automodule:: xas.core.reprocessing .. automodule:: est.core.reprocessing
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
xas.core.types module est.core.types module
--------------------- ---------------------
.. automodule:: xas.core.types .. automodule:: est.core.types
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
...@@ -37,7 +37,7 @@ xas.core.types module ...@@ -37,7 +37,7 @@ xas.core.types module
Module contents Module contents
--------------- ---------------
.. automodule:: xas.core .. automodule:: est.core
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
......
xas.core.process package est.core.process package
======================== ========================
Subpackages Subpackages
...@@ -6,37 +6,37 @@ Subpackages ...@@ -6,37 +6,37 @@ Subpackages
.. toctree:: .. toctree::
xas.core.process.larch est.core.process.larch
xas.core.process.pymca est.core.process.pymca
xas.core.process.process module est.core.process.process module
------------------------------- -------------------------------
.. automodule:: xas.core.process.process .. automodule:: est.core.process.process
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
xas.core.process.progress module est.core.process.progress module
-------------------------------- --------------------------------
.. automodule:: xas.core.process.progress .. automodule:: est.core.process.progress
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
xas.core.process.roi module est.core.process.roi module
--------------------------- ---------------------------
.. automodule:: xas.core.process.roi .. automodule:: est.core.process.roi
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
xas.core.process.setup module est.core.process.setup module
----------------------------- -----------------------------
.. automodule:: xas.core.process.setup .. automodule:: est.core.process.setup
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
...@@ -45,7 +45,7 @@ xas.core.process.setup module ...@@ -45,7 +45,7 @@ xas.core.process.setup module
Module contents Module contents
--------------- ---------------
.. automodule:: xas.core.process .. automodule:: est.core.process
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
xas.core.process.larch package est.core.process.larch package
============================== ==============================
xas.core.process.larch.autobk module est.core.process.larch.autobk module
------------------------------------ ------------------------------------
.. automodule:: xas.core.process.larch.autobk .. automodule:: est.core.process.larch.autobk
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
xas.core.process.larch.mback module est.core.process.larch.mback module
----------------------------------- -----------------------------------
.. automodule:: xas.core.process.larch.mback .. automodule:: est.core.process.larch.mback
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
xas.core.process.larch.mback\_norm module est.core.process.larch.mback\_norm module
----------------------------------------- -----------------------------------------
.. automodule:: xas.core.process.larch.mback_norm .. automodule:: est.core.process.larch.mback_norm
:members: :members:
:undoc-members: :undoc-members:
:show-inheritance: :show-inheritance:
xas.core.process.larch.pre\_edge module est.core.process.larch.pre\_edge module
--------------------------------------- ---------------------------------------
.. automodule:: xas.core.process.larch.pre_edge .. automodule:: est.core.process.larch.pre_edge