SegmentSimulator

class lsst.cp.pipe.SegmentSimulator(imarr, prescan_width, output_amplifier, cti=0.0, traps=None)

Bases: object

Controls the creation of simulated segment images.

Parameters:
imarr : np.ndarray (nx, ny)

Image data array.

prescan_width : int

Number of serial prescan columns.

output_amplifier : lsst.cp.pipe.FloatingOutputAmplifier

An object holding the gain, read noise, and global_offset.

cti : float

Global CTI value.

traps : list [lsst.ip.isr.SerialTrap]

Serial traps to simulate.

Methods Summary

add_trap(serial_trap) Add a trap to the serial register.
ramp_exp(signal_list) Simulate an image with varying flux illumination per row.
readout([serial_overscan_width, …]) Simulate serial readout of the segment image.

Methods Documentation

add_trap(serial_trap)

Add a trap to the serial register.

Parameters:
serial_trap : lsst.ip.isr.SerialTrap

The trap to add.

ramp_exp(signal_list)

Simulate an image with varying flux illumination per row.

This method simulates a segment image where the signal level increases along the horizontal direction, according to the provided list of signal levels.

Parameters:
signal_list : list [float]

List of signal levels.

Raises:
ValueError

Raised if the length of the signal list does not equal the number of rows.

readout(serial_overscan_width=10, parallel_overscan_width=0)

Simulate serial readout of the segment image.

This method performs the serial readout of a segment image given the appropriate SerialRegister object and the properties of the ReadoutAmplifier. Additional arguments can be provided to account for the number of desired overscan transfers. The result is a simulated final segment image, in ADU.

Parameters:
serial_overscan_width : int, optional

Number of serial overscan columns.

parallel_overscan_width : int, optional

Number of parallel overscan rows.

Returns:
result : np.ndarray (nx, ny)

Simulated image, including serial prescan, serial overscan, and parallel overscan regions.