Skip to content

Adjusted approach to phase retrieval #36

@jacione

Description

@jacione

When the various algorithms are defined in op_flow.py, the propagations are considered as separate from the algorithms themselves:

algs = {'ER': ('to_reciprocal_space', 'modulus', 'to_direct_space', 'er'),
'HIO': ('to_reciprocal_space', 'modulus', 'to_direct_space', 'hio'),
'ERpc': ('to_reciprocal_space', 'pc_modulus', 'to_direct_space', 'er'),
'HIOpc': ('to_reciprocal_space', 'pc_modulus', 'to_direct_space', 'hio'),
}

I wonder if it might be easier to implement other algorithms if that were not the case. I'm specifically thinking of Table 1 in this paper, in which the entire update function is defined using projection operators.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions