Skip to content

'atomic_resolution' signal type

atomap currently doesn't create hyperspy signals but I think there will be value in creating an atomic resolution signals. I have been exploring this idea when implementing GPA (https://github.com/ericpre/gpa) and its has the following structure:

  • severals signals class (AtomicResolution, AtomicResolutionFFT, GeometricalPhaseImage)
  • a GeometricalPhaseAnalysisTool class from which the different processing step can be done.

The syntax is fairly similar to the way we create a model, where the gpa tool is created by calling the create_gpa_tool For example:

import gpa

s = gpa.datasets.get_atomic_resolution_interface(size=2048, spacing=14, strain=-0.1)
s.add_gaussian_noise(100)
s.set_signal_type('atomic_resolution')

s.plot()

gpa_tool = s.create_gpa_tool()
gpa_tool.set_fft(True)
...

Ideally, I think that it would be convenient to have signals from which we can create any relevant "processing or analysis tool".

@magnunor, do you think it would be possible to add hyperspy signals (atomic_resolution, etc.) to atomap in a way that my gpa library could be merged into atomap?