Welcome to Phase splitter, a non-negative matrix factorization to separate the different phases in an in situ "PDF" data.
The algorithms were used as part of the bachelor thesis "Phase-Splitter: An Automated Tool for phase identification and characterization of in situ Pair Distribution Function data."
Example of in situ data with multiple phase shifts to the left and the resultant NMF components from Phase splitter on the right.
The GitHub contains a test dataset called "insitu_sim" which is simulated PDFs of an Cu reduction synthesis from Cu(OH)_2 precursor.
Using Phase splitter on your PDFs is straightforward and does not require anything installed or downloaded to your computer. Follow the instructions in the Colab notebook and try to play around.
Download the folder "phase-splitter.zip".
Set 'root_path_results' in funcs.py to the location of 'phase-splitter/Results' to the path on your computer
The lite version is made to work on python 3.7 as a notebook with the following libraries:
For plots:
matplotlib, seaborn, IPython.display, celluloid
For data:
numpy, pandas
For statistical analysis:
sklearn, scipy
Open the notebook "phase-splitter.ipynb" in your favorite python interpreter and follow the instructions.
Contributors' names and contact info
Joakim Lajer (gpw395@alumni.ku.dk)
- 0.1
- Initial Release (lite version)
This project is licensed under the GNU General Public License v3.0, January 2004 - see the LICENSE file for details.
Inspiration, mental support, guidance, etc.