chromatix-team / chromatix

Differentiable wave optics using JAX! Documentation can be found at https://chromatix.readthedocs.io
MIT License
77 stars 13 forks source link

Allow Microscope to plug in sensors #92

Closed diptodip closed 1 year ago

diptodip commented 1 year ago

As discussed in #20, we want to be able to plug in different kinds of sensor elements to Microscopes.

The easiest way to make this change is to allow sensors to accept either Fields or intensities as inputs. This way, sensors can be placed either in an OpticalSystem or be used by a Microscope to resample and add noise, etc. to the result of a convolution of an intensity volume and an intensity PSF, for example.

We can then modify Microscopes to accept the sensor and define all the sensor specifications there and remove the currently duplicated resampling and noise code from the Microscope.

This also changes the way we want future Microscopes and Sensors to interact, in a way that is hopefully more flexible and also allows Microscopes to be more naturally specified.

diptodip commented 1 year ago

Very good points, we should change the name.