-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
15 additions
and
34 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,19 +1,17 @@ | ||
# Julia BCDI Documentation | ||
# BcdiStrain.jl Documentation | ||
|
||
## About | ||
|
||
The BYU-CXI research group maintains a suite of Julia packages to solve the Bragg Coherent Diffraction Imaging (BCDI) problem in several different regimes and circumstance. | ||
Bragg Coherent Diffraction Imaging (BCDI) Strain implements projection-based phase retrieval algorithms. Some of the core functionality of this project is implemented in BcdiCore.jl and BcdiTrad.jl. Additionally, this package is part of a collection of BCDI packages consisting of BcdiAtomic.jl (an atomic scale BCDI solver), BcdiMeso.jl (a mesoscale BCDI Solver), and BcdiMulti.jl (a multiscale BCDI solver). | ||
|
||
- [BcdiCore.jl](https://byu-cxi.github.io/BcdiCore.jl/dev) implements all of the Fourier transforms for the Julia BCDI packages. In addition, BcdiCore calculates the loss function used (either ``L_2`` or the MLE estimator) and derivatives of these loss functions. | ||
While this package is marked as BCDI specific, the methods are more general and can be used in many phase retrieval problems. In the future, this package may be incorporated into a more general phase retrieval package. | ||
|
||
- [BcdiTrad.jl](https://byu-cxi.github.io/BcdiTrad.jl/dev) implements projection-based BCDI algorithm. Currently, this is limited to ER, HIO, and shrinkwrap. | ||
Currently, this entire package must be run with access to GPUs. This may change in the future (especially if Issues requesting it are opened), but for our research group, using GPUs is a necessity. | ||
|
||
- [BcdiStrain.jl](https://byu-cxi.github.io/BcdiStrain.jl/dev) implements a multi-peak BCDI algorithm developed by the BYU-CXI group. In addition to the alogrithms present in BcdiTrad, BcdiStrain also implements Mount, an operator that switches between peaks. | ||
## Installation | ||
|
||
- [BcdiMeso.jl](https://byu-cxi.github.io/BcdiMeso.jl/dev) implements a BCDI algorithm that solves in the mesoscale regime. Instead of using projections, this algorithm uses a gradient-based optimization scheme. Additionally, BcdiMeso does not assume a small measurement distance away from the peak. | ||
Currently, BcdiStrain.jl is not registered in the Julia general registry and can be installed by running in the REPL package manager (```]```): | ||
|
||
- BcdiAtomic.jl is an upcoming BCDI package that implements a BCDI algorithm that solves at the atomic scale. | ||
|
||
- BcdiMulti.jl is an upcoming BCDI package that implements a multiscale BCDI algorithm that solves at both the mesoscale and the atomic scale. | ||
|
||
- BcdiSimulate.jl is an upcoming BCDI package that simulates the BCDI problem. Currently, this is only implimented at the atomic scale. | ||
``` | ||
add BcdiStrain | ||
``` |
This file was deleted.
Oops, something went wrong.
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