generated from EasyScience/EasyExampleApp
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bump from v0.8.0-beta to v0.8.0-beta.1 (#82)
### Changes - CrysFML and CrysPy simulations now show Bragg peaks. - Updated and extended user tutorials. - Contact email more prominently displayed. - More detailed `README.md` file for the project. - Updated module dependencies. - Updated application installer. ### Bug Fixes - CrysFML and GSAS-II binding on Linux have been fixed. - Now project reset clears the experimental data correctly. - When an example is loaded, the summary save path is corrected. - Broken links in the About box have been updated. - Minor text fixes.
- Loading branch information
1 parent
fe3838e
commit 75e0e67
Showing
38 changed files
with
967 additions
and
249 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,37 @@ | ||
# Version 0.8.0-beta.1 (7 May 2021) | ||
|
||
### Changes | ||
|
||
- CrysFML and CrysPy simulations now show Bragg peaks. | ||
- Updated and extended user tutorials. | ||
- Contact email more prominently displayed. | ||
- More detailed `README.md` file for the project. | ||
- Updated module dependencies. | ||
- Updated application installer. | ||
|
||
### Bug Fixes | ||
|
||
- CrysFML and GSAS-II binding on Linux have been fixed. | ||
- Now project reset clears the experimental data correctly. | ||
- When an example is loaded, the summary save path is corrected. | ||
- Broken links in the About box have been updated. | ||
- Minor text fixes. | ||
|
||
# Version 0.8.0-beta (3 May 2021) | ||
|
||
This is a new version of easyDiffraction, which is now based on the easyScience framework. Whereas some features present in the original implementation have not yet been implemented, new easyDiffraction has improved GUI, additional back-end calculator interfaces, enhancement of minimization options and other improvements over the original version of easyDiffraction (0.7.0). | ||
|
||
### New features in version 0.8.0: | ||
|
||
- Ability to run in simulation-only mode | ||
- Multiple crystallographic calculation engines: [CrysPy](https://github.com/ikibalin/cryspy), [CrysFML](https://code.ill.fr/scientific-software/crysfml) and [GSAS-II](https://subversion.xray.aps.anl.gov/trac/pyGSAS) | ||
- Multiple minimization engines: [lmfit](https://lmfit.github.io/lmfit-py/), [bumps](https://github.com/bumps/bumps) and [DFO_LS](https://github.com/numericalalgorithmsgroup/dfols) | ||
- High quality structure visualizer | ||
- Interactive HTML report generation | ||
- Built-in guided tutorials | ||
- Improved visualization of experimental and simulated data | ||
- Structural editor for cells and atoms | ||
- Improved project management | ||
- Parameter searching and filtering | ||
- Engine independent cif interpreter/editor | ||
- Engine independent background generation |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,88 @@ | ||
# Contributing | ||
|
||
When contributing to the EasyDiffraction repository, please first discuss the change you wish to make via issue, | ||
email, or any other method with the owners of this repository before making a change. | ||
|
||
Please note we have a code of conduct, please follow it in all your interactions with the project. | ||
|
||
## Pull Request Process | ||
|
||
1. Ensure any install or build dependencies are removed before the end of the layer when doing a | ||
build. | ||
2. Update the README.md with details of changes to the interface, this includes new environment | ||
variables, exposed ports, useful file locations and container parameters. | ||
3. Increase the version numbers in any examples files and the README.md to the new version that this | ||
Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/). | ||
4. You may merge the Pull Request in once you have the sign-off of two other developers, or if you | ||
do not have permission to do that, you may request the second reviewer to merge it for you. | ||
|
||
## Code of Conduct | ||
|
||
### Our Pledge | ||
|
||
In the interest of fostering an open and welcoming environment, we as | ||
contributors and maintainers pledge to making participation in our project and | ||
our community a harassment-free experience for everyone, regardless of age, body | ||
size, disability, ethnicity, gender identity and expression, level of experience, | ||
nationality, personal appearance, race, religion, or sexual identity and | ||
orientation. | ||
|
||
### Our Standards | ||
|
||
Examples of behavior that contributes to creating a positive environment | ||
include: | ||
|
||
* Being respectful of differing viewpoints and experiences | ||
* Gracefully accepting constructive criticism | ||
* Focusing on what is best for the community | ||
|
||
Examples of unacceptable behavior by participants include: | ||
|
||
* Trolling, insulting/derogatory comments, and personal or political attacks | ||
* Public or private harassment | ||
* Publishing others' private information, such as a physical or electronic | ||
address, without explicit permission | ||
* Other conduct which could reasonably be considered inappropriate in a | ||
professional setting | ||
|
||
### Our Responsibilities | ||
|
||
Project maintainers are responsible for clarifying the standards of acceptable | ||
behavior and are expected to take appropriate and fair corrective action in | ||
response to any instances of unacceptable behavior. | ||
|
||
Project maintainers have the right and responsibility to remove, edit, or | ||
reject comments, commits, code, wiki edits, issues, and other contributions | ||
that are not aligned to this Code of Conduct, or to ban temporarily or | ||
permanently any contributor for other behaviors that they deem inappropriate, | ||
threatening, offensive, or harmful. | ||
|
||
### Scope | ||
|
||
This Code of Conduct applies both within project spaces and in public spaces | ||
when an individual is representing the project or its community. Examples of | ||
representing a project or community include using an official project e-mail | ||
address, posting via an official social media account, or acting as an appointed | ||
representative at an online or offline event. Representation of a project may be | ||
further defined and clarified by project maintainers. | ||
|
||
### Enforcement | ||
|
||
Instances of abusive, harassing, or otherwise unacceptable behavior may be | ||
reported by contacting the project team at suport@easydiffraction.org. All | ||
complaints will be reviewed and investigated and will result in a response that | ||
is deemed necessary and appropriate to the circumstances. The project team is | ||
obligated to maintain confidentiality with regard to the reporter of an incident. | ||
Further details of specific enforcement policies may be posted separately. | ||
|
||
Project maintainers who do not follow or enforce the Code of Conduct in good | ||
faith may face temporary or permanent repercussions as determined by other | ||
members of the project's leadership. | ||
|
||
### Attribution | ||
|
||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, | ||
available at [http://contributor-covenant.org/version/1/4][version] | ||
|
||
[homepage]: http://contributor-covenant.org | ||
[version]: http://contributor-covenant.org/version/1/4/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,97 +1,109 @@ | ||
<img src="https://easydiffraction.github.io/images/easydiffraction-logo.svg" height="80"><img width="15"><img src="https://easydiffraction.github.io/images/easydiffraction-text.svg" height="80"> | ||
|
||
**easyDiffraction** is a scientific software for modelling and analysis of the diffraction data. | ||
|
||
## Dev info | ||
|
||
[![CI Build][20]][21] | ||
|
||
[![Release][30]][31] | ||
|
||
[![Downloads][70]][71] [![Lines of code][82]][80] [![Total lines][81]][80] [![Files][83]][80] | ||
|
||
[![License][50]][51] | ||
|
||
[![w3c][90]][91] | ||
|
||
### Download easyDiffractionApp repo | ||
* Open **Terminal** | ||
* Change the current working directory to the location where you want the **easyDiffractionApp** directory | ||
* Clone **easyDiffractionApp** repo from GitHub using **git** | ||
``` | ||
git clone https://github.com/easyScience/easyDiffractionApp | ||
``` | ||
|
||
### Install easyDiffractionApp dependencies | ||
* Open **Terminal** | ||
* Install [**Poetry**](https://python-poetry.org/docs/) (Python dependency manager) | ||
* osx / linux / bashonwindows | ||
``` | ||
curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python | ||
``` | ||
* windows powershell | ||
``` | ||
(Invoke-WebRequest -Uri https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py -UseBasicParsing).Content | python | ||
``` | ||
* Go to **easyDiffractionApp** directory | ||
* Create virtual environment for **easyDiffractionApp** and install its dependences using **poetry** (configuration file: **pyproject.toml**) | ||
``` | ||
poetry install | ||
``` | ||
|
||
### Launch easyDiffractionApp application | ||
* Open **Terminal** | ||
* Go to **easyDiffractionApp** directory | ||
* Launch **easyDiffraction** application using **poetry** | ||
``` | ||
poetry run easyDiffraction | ||
``` | ||
|
||
### Update easyDiffractionApp dependencies | ||
* Open **Terminal** | ||
* Go to **easyDiffractionApp** directory | ||
* Update **easyDiffractionApp** using **poetry** (configuration file: **pyproject.toml**) | ||
``` | ||
poetry update | ||
``` | ||
|
||
### Delete easyDiffractionApp | ||
* Delete **easyDiffractionApp** directory | ||
* Uninstall **Poetry** | ||
* osx / linux / bashonwindows | ||
``` | ||
curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | POETRY_UNINSTALL=1 python | ||
``` | ||
## [![CI Build][20]][21] [![Release][30]][31] [![Downloads][70]][71] [![Lines of code][82]][80] [![Total lines][81]][80] [![Files][83]][80] [![License][50]][51] | ||
|
||
<img height="80"><img src="./resources/images/ed_logo.svg" height="65"> | ||
|
||
**easyDiffraction** is a scientific software for modelling and analysis of diffraction data. Currently, **easyDiffraction** covers classical 1D unpolarized neutron powder diffraction data collected at constant wavelength. | ||
|
||
![easyDiffraction Screenshot](./resources/images/ed_analysis_dark.png) | ||
|
||
## What is easyDiffraction for? | ||
|
||
**easyDiffraction** allows simulation of diffraction patterns based on a structural model and refinement of its parameters. For refinement, the program uses a number of fitting engines (minimizers). | ||
|
||
**easyDiffraction** is similar to crystallographic programs like FullProf, Jana, GSAS, ShelX, etc. Unlike these programs **easyDiffraction** is based on _external_ crystallographic libraries such as [CrysPy](https://github.com/ikibalin/cryspy), [CrysFML](https://code.ill.fr/scientific-software/crysfml) and [GSAS-II](https://subversion.xray.aps.anl.gov/trac/pyGSAS). This allows **easyDiffraction** to cover different functionality aspects within a single, intuitive and user-friendly graphical interface. These libraries are included with the installation so there is no need to download and compile any additional components. | ||
|
||
## Main features | ||
|
||
**easyDiffraction** is open source (currently [GPL v3](LICENSE.md)) and cross-platform, with support for Windows, macOS and Linux (Ubuntu). | ||
|
||
The intuitive tabbed interface allows for a clear and defined data modelling and analysis workflow. There are also built-in step-by-step user guides and video tutorials for new users. | ||
|
||
Current main features of **easyDiffraction**: | ||
|
||
- Support for constant-wavelength 1D unpolarized neutron powder diffraction data. | ||
- Structure refinement (yet unstable) using [CrysPy](https://github.com/ikibalin/cryspy), [CrysFML](https://code.ill.fr/scientific-software/crysfml) and [GSAS-II](https://subversion.xray.aps.anl.gov/trac/pyGSAS). | ||
- Simulations of diffraction pattern using aforementioned libraries. | ||
- Multiple minimization engines: [lmfit](https://lmfit.github.io/lmfit-py), [bumps](https://github.com/bumps/bumps) and [DFO-LS](https://github.com/numericalalgorithmsgroup/dfols). | ||
- Crystal structure visualizer and builder. | ||
- Diffraction pattern viewer, including Bragg peaks and difference curve. | ||
- Live update of calculations on parameters change. | ||
- Input files are in [CIF (Crystallographic Information File)](https://www.iucr.org/resources/cif) format. | ||
- Interactive HTML and standard PDF report generation. | ||
- Undo/redo for both parameter changes and fitting. | ||
|
||
Planned improvements / new functionality for **easyDiffraction**: | ||
|
||
- Improved refinement. | ||
- Parameter constraints during refinement. | ||
- Loading and simulation of Time-of-Flight data. | ||
- Support for polarized neutron data. | ||
- Magnetic structure refinement. | ||
- Pair distribution function. | ||
- X-ray data analysis. | ||
|
||
## Getting Started | ||
|
||
### Downloading | ||
|
||
Download the official **easyDiffraction installer v0.8.0-beta** for your operating system: | ||
|
||
- [Windows 10 and above, 32-bit](https://github.com/easyScience/easyDiffractionApp/releases/download/v0.8.0-beta.1/easyDiffraction_Windows_x86-32_v0.8.0-beta.1.zip) | ||
- [macOS 10.15 and above, 64-bit](https://github.com/easyScience/easyDiffractionApp/releases/download/v0.8.0-beta.1/easyDiffraction_macOS_x86-64_v0.8.0-beta.1.zip) | ||
- [Ubuntu 20.04 and above, 64-bit](https://github.com/easyScience/easyDiffractionApp/releases/download/v0.8.0-beta.1/easyDiffraction_Linux_x86-64_v0.8.0-beta.1.zip) | ||
|
||
### Installing | ||
|
||
Run **easyDiffraction installer** and follow the instructions. | ||
|
||
macOS: If you see the message _easyDiffractionSetup.app can't be opened because it is from an unidentified developer_, do the following: | ||
In the **Finder**, locate the **easyDiffraction installer app**, then _control-click_ the app icon, then choose _Open_ from the shortcut menu and finally click _Open_. | ||
|
||
### Uninstalling | ||
|
||
Run **MaintenanceTool** from the **easyDiffraction** installation directory, select _Remove all components_ and follow the instructions. | ||
|
||
## Get in touch | ||
|
||
For general questions or comments, please contact us at [support@easydiffraction.org](mailto:support@easydiffraction.org). | ||
|
||
For bug reports and feature requests, please use [Issue Tracker](https://github.com/easyScience/easyDiffractionApp/issues) instead. | ||
|
||
<!---URLs---> | ||
<!---https://naereen.github.io/badges/---> | ||
|
||
<!---CI Build Status---> | ||
[20]: https://github.com/easyScience/easyDiffractionApp/workflows/build%20macOS,%20Linux,%20Windows/badge.svg | ||
|
||
[20]: https://img.shields.io/github/workflow/status/easyScience/easyDiffractionApp/build%20macOS,%20Linux,%20Windows/master | ||
[21]: https://github.com/easyScience/easyDiffractionApp/actions?query=workflow%3A%22build+macOS%2C+Linux%2C+Windows%22 | ||
|
||
<!---Release---> | ||
[30]: https://img.shields.io/github/release/easyScience/easyDiffractionApp.svg | ||
|
||
[30]: https://img.shields.io/github/release/easyScience/easyDiffractionApp.svg?include_prereleases | ||
[31]: https://github.com/easyScience/easyDiffractionApp/releases | ||
|
||
<!---License---> | ||
|
||
[50]: https://img.shields.io/github/license/easyScience/easyDiffractionApp.svg | ||
[51]: https://github.com/easyScience/easyDiffractionApp/blob/master/LICENSE.md | ||
|
||
<!---LicenseScan---> | ||
|
||
[60]: https://app.fossa.com/api/projects/git%2Bgithub.com%2FeasyScience%2FeasyDiffractionApp.svg?type=shield | ||
[61]: https://app.fossa.com/projects/git%2Bgithub.com%2FeasyScience%2FeasyDiffractionApp?ref=badge_shield | ||
|
||
<!---Downloads---> | ||
|
||
[70]: https://img.shields.io/github/downloads/easyScience/easyDiffractionApp/total.svg | ||
[71]: https://github.com/easyScience/easyDiffractionApp/releases | ||
|
||
<!---Code statistics---> | ||
|
||
[80]: https://github.com/easyScience/easyDiffractionApp | ||
[81]: https://tokei.rs/b1/github/easyScience/easyDiffractionApp | ||
[82]: https://tokei.rs/b1/github/easyScience/easyDiffractionApp?category=code | ||
[83]: https://tokei.rs/b1/github/easyScience/easyDiffractionApp?category=files | ||
|
||
<!---W3C validation---> | ||
|
||
[90]: https://img.shields.io/w3c-validation/default?targetUrl=https://easyscience.github.io/easyDiffractionApp | ||
[91]: https://easyscience.github.io/easyDiffractionApp |
Oops, something went wrong.