-
Notifications
You must be signed in to change notification settings - Fork 3
Description
Currently, if we have two charge injection images in a ci_analysis_data object, the list index is at the ci_analysis_data lelve, e.g.:
ci_analysis_data[0].image
ci_analysis_data[1].image
ci_analysis_data[0].noise_map
ci_analysis_data[1].noise_map
We should instead make it so that the list attributes are at the attribute level, e.g.:
ci_analysis_data_stack.image[0]
ci_analysis_data_stack.image[1]
ci_analysis_data_stack.noise_map[0]
ci_analysis_data_stack.noise_map[1]
I also would refer to a list of charge injections as a 'stack', where the attribute names are pluralized to signify it is a stack. We will retain a CIData class that represents a single charge injection image / data-set.
The reason we do not want to have the list index at the ci_analysis_data level is that in AutoLens we perform fits which fit the entire data-set (e.g. every image in the list) simultaneously. In these cases, we cannot simply apply a map function over the list of lens_data. A similar thing can happen in AutoCTI. For this reason, AutoFit has been designed so that it can be passed lists of images, noise-maps, etc, to perform the fit.