-
Notifications
You must be signed in to change notification settings - Fork 145
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New year - new ptycho functionality #375
Merged
Merged
Conversation
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
…projection-set algorithms
…ions, cropping to fov
This notebook may be helpful for reviewing the PR |
except relative error
Some minor tweaks to the viz functions and gaussian options
bsavitzky
approved these changes
Feb 22, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Opening a draft PR on the remaining ptychography roadmap to move some of the discussion from slack (and also typeset some of the associated math).
Features already implemented:
Add projection-set type reconstruction algorithms
$$\psi^{j+1} = x \psi^j + a \hat{P}*\hat{O} + b \mathcal{F}_c \left[ c \hat{P} * \hat{O} + y \psi^j \right],$$ $\hat{P} * \hat{O}$ and $\mathcal{F}_c$ are the overlap and Fourier projections respectively, and $x= 1-a-b$ , and $y=1-c$ .
A whole family of projection-set algorithms can be formulated using the exit wave view update scheme
such that
For convenience, we also implement common named projections:
reconstruction_parameter
.Enable batch-updating of probes/objects
reconstruction_method='GD'
.Enable affine transformation position correction constraint
max_batch_size
and update positions using a least-squares fit to the measured/estimated intensity differencePtychographicReconstruction.reconstruct()
,global_affine_transformation=True
, which constraints the updated positions to be an affine transformation of the initial scan positionsJoint Electrostatic and Magnetic Vector Potential Reconstruction Ptychography
Multislice Ptychography
normalization_min
default to 1 forMultisliceReconstruction
, since we don't sum the back-propagated probesMixed-State Ptychography
orthogonalize_probe
functionality works best for a smallmax_batch_size
, so it is recommended to run withreconstruction_method='GD'
.Butterworth Filtering in Fourier space
q_highpass
accepts values in 'A^-1' and is-infact a low-pass filterSeparate tuning function to run after
PtychographicReconstruction.preprocess()
and beforePtychographicReconstruction.reconstruct()
for coarser step-size/rotation tuning ?_visualize_last_iteration_figax
Make
BFReconstruction
consistent with other classes, add gpu-supportFeatures to be added before merging: