The MIRI Sensor Chip Assembly (SCA) simulator - PowerPoint PPT Presentation

About This Presentation
Title:

The MIRI Sensor Chip Assembly (SCA) simulator

Description:

The MIRI Sensor Chip Assembly (SCA) simulator Steven Beard UK Astronomy Technology Centre Royal Observatory, Edinburgh, UK ROE Workshop Following the Photon , 10 ... – PowerPoint PPT presentation

Number of Views:90
Avg rating:3.0/5.0
Slides: 42
Provided by: Nuri153
Category:

less

Transcript and Presenter's Notes

Title: The MIRI Sensor Chip Assembly (SCA) simulator


1
The MIRI Sensor Chip Assembly (SCA) simulator
  • Steven Beard
  • UK Astronomy Technology Centre
  • Royal Observatory, Edinburgh, UK

ROE Workshop Following the Photon, 10-12
October 2011
2
JWST Instruments and Detectors
MIRI
NIRCAM
NIRSPEC
FGS-TFI
3 SiAs detectors
2 HgCdTe detectors
2 HgCdTe detectors
10 HgCdTe detectors
3
JWST Detector Readout
Each integration is made from several
non-destructive reads, divided into groups.
4
MIRI Summary
Imager Coronagraph Low Res. Spectrograph
  • Medium Res. Spectrograph
  • Short wavelength
  • Long wavelength

5
MIRI SCA Subarrays
Subarray name Rows Cols First row First col Light sensitive cols
FULL 1024 1032 1 1 1024
MASK1065 256 256 1 1 224
MASK1140 256 256 229 1 224
MASK1550 256 256 452 1 224
MASKLYOT 320 320 705 1 275
BRIGHTSKY 512 864 1 1 512
SUB256 256 608 1 1 256
SUB128 128 132 897 1 128
SUB64 64 68 897 1 64
SLITLESSPRISM 512 68 348 1 64
The detector can be read out full frame in a
variety of pre-defined subarrays (windows).
6
MIRI Modes to be Simulated
  • MIRI has a number of different modes to be
    simulated, each of which include several common
    requirements

7
MIRI Modes to be Simulated
  • MIRI has a number of different modes to be
    simulated, each of which include several common
    requirements
  • MRS mode is simulated by Specsim.

8
MIRI Modes to be Simulated
  • MIRI has a number of different modes to be
    simulated, each of which include several common
    requirements
  • MRS mode is simulated by Specsim.
  • All the imager modes are simulated by Mirim Sim
    (Rene Gastauds presentation?).

9
MIRI Modes to be Simulated
  • MIRI has a number of different modes to be
    simulated, each of which include several common
    requirements
  • MRS mode is simulated by Specsim.
  • All the imager modes are simulated by Mirim Sim
    (Rene Gastauds presentation).
  • MTS Sim simulates the telescope simulator used
    for Flight Model (FM) testing.

10
MIRI Modes to be Simulated
  • MIRI has a number of different modes to be
    simulated, each of which include several common
    requirements
  • MRS mode is simulated by Specsim.
  • All the imager modes are simulated by Mirim Sim
    (Rene Gastauds presentation).
  • MTS Sim simulates the telescope simulator used
    for Flight Model (FM) testing.
  • All the simulators share the same detector
    simulation provided by SCA Sim.

11
The MIRI Simulator Suite
  • Having a suite of simulators ensures that every
    problem is solved only once.
  • But we did miss the opportunity to share
    simulate targets and simulate background.
  • SCASim provides a common detector simulation
    service for the other simulators.
  • It converts detector illumination information
    from any MIRI simulator and generates simulated
    MIRI data in a choice of formats accepted by MIRI
    pipeline and analysis software.

12
Required SCA Simulator Steps
  • The SCA Simulator simulates
  • Quantum efficiency
  • Reference pixels and outputs
  • Bad pixels
  • Dark current and hot pixels
  • Persistence
  • Readout modes
  • Poisson noise and read noise
  • Bias, gain and non-linearity
  • Cosmic ray effects
  • Subarray (window) modes
  • The simulation is controlled by
  • Input parameters
  • e.g. Readout mode
  • Configuration information
  • e.g. Detector properties
  • Configuration measurements
  • e.g. Dark current vs temperature

X
X
X
X
13
Design Decisions
  • I used an Object-Oriented design that would make
    SCASim more flexible and reusable.
  • I also wrote the simulator in Python an
    object-oriented language with several useful
    scientific and array processing add-ons (numpy,
    scipy, matplotlib, pyfits, etc)
  • Since the JWST detector readout modes are very
    similar, I chose to make the SCASim workable with
    any JWST detector not just the MIRI detectors.
  • So ngroups ? nframes. Useful for NIRCAM and
    NIRSPEC as well?
  • I also chose to encapsulate as much of the
    detector information in parameter files, rather
    than in software constants.
  • By modifying these parameters and/or the class
    methods, SCASim could be adapted to similar kinds
    of detector.
  • The simulator modules were developed along with
    unit tests.
  • This ensured that changes didnt generate
    unwanted side effects.

14
The Python language
  • Good things
  • Bad things
  • An OO language.
  • An interpreted language.
  • Ease of experimentation.
  • Dynamic typing
  • Functions and objects can be treated like
    variables.
  • Dictionaries and lists.
  • A good way of storing parameters.
  • Built in doc strings.
  • Built in unit tests.
  • Can be extended with many useful utilities.
  • numpy, scipy, pyfits, matplotlib, etc
  • Weak OO protection.
  • Naming convention used to denote __private
    attributes.
  • An interpreted language.
  • Performance issues.
  • C-based extensions greatly improve the
    performance.
  • Dynamic typing!
  • Variables can change type without your knowledge!
  • numpy supports fixed types.
  • Installation issues.
  • It sometimes takes several attempts to install
    properly.

15
Python Utilities Used
  • numpy
  • Array processing utilities.
  • Supports sparse addressing and slicing.
  • Written in C, so improves performance.
  • scipy
  • A collection of science-oriented data processing
    functions (rather like the Fortran NAG library).
  • pyfits
  • Reads and writes FITS files.
  • PIL (Python Imaging Library)
  • Reads and writes image files (JPEG etc).
  • matplotlib
  • Plotting utilities (mathcad).
  • Sphinx
  • Document generation

16
SCASim Design
Name of class
  • The SCA simulator has an object-oriented design.
  • The core of the simulator is a Detector Array
    class.
  • The operational interface is generic All
    detectors are illuminated, reset, integrated and
    read out, or can be hit by a cosmic ray.
  • The detailed implementation of the methods
    simulates the effects of the MIRI detector.
  • This makes the design adaptable and reusable.

Attributes
Operations
17
SCASim Design
  • The detector uses a helper class, the Poisson
    Integrator, which encapsulates the Poisson
    statistics.
  • Other associated classes are used to describe
    detector characteristics, such as bad pixels, hot
    pixels, dark current and quantum efficiency.

18
SCASim Design
  • Each detector may be read out by one or more
    amplifiers (4 in the case of MIRI ref. output).

19
SCASim Design
  • Each detector may be read out by one or more
    amplifiers (4 in the case of MIRI ref. output).
  • Each amplifier is responsible for reading a
    particular slice (or zone) on the detector
    surface.
  • Each amplifier has an associated gain, linearity
    and read noise.
  • Note that dark current and read noise are derived
    from a generic Measured Variable class, used to
    described laboratory measurements (in this case
    measuring how dark current and read noise vary
    with temperature).

20
SCASim Design
  • Each detector may be read out by one or more
    amplifiers (4 in the case of MIRI ref. output).
  • Each amplifier is responsible for reading a
    particular slice (or zone) on the detector
    surface.
  • Each amplifier has an associated gain, linearity
    and read noise.
  • Note that dark current and read noise are derived
    from a generic Measured Variable class, used to
    described laboratory measurements (in this case
    measuring how dark current and read noise vary
    with temperature).

21
JWST Detector Readout
  • MIRI detectors have 4 dark columns at the left
    and right edges.
  • Detectors are read out by 4 amplifiers.
  • Every 5th readout is interlaced with reference
    output columns.
  • These are processed as shown before the data are
    transmitted to the ground as Level 0 FITS Data.
  • Instrument metadata is added to make Level 1
    FITS Data.

22
SCASim Design
  • The detector and the amplifiers can both be hit
    by cosmic rays during an integration, depending
    on the integration time and their target area.
  • A Cosmic Ray Environment class describes the
    cosmic ray environment (solar condition etc),
    and can generate Cosmic Ray events.
  • Cosmic ray events are selected from a library of
    simulated events created by Massimo Roberto at
    STScI (for all JWST detectors).

23
SCASim Design
  • The SCA simulator also defines classes describing
    how an exposure is constructed from a series of
    integrations.
  • The Integration class sequences the
    reset/integrate/readout operations in the
    Detector Array.
  • An illumination map describes the intensity and
    wavelength of the illumination across the
    detector surface.

24
SCASim Design
  • Finally, these additional classes show how the
    contents of the input file are distributed, and
    how the data associated with each exposure is
    written to an output file.
  • The Sensor Chip Assembly class manages the
    simulation and provides a selection of interfaces
    to the outside world (not shown here).

25
SCASim External Interfaces
26
SCASim Design Process 4Class Diagram for MIRI
Exposure
Detector pixels represented by Detector Array
class with properties in Measured Variable
class. Illumination Map describes detector
illumination. Poisson Integrator is at the heart
of the simulation. It represents the potential
wells. Amplifier objects read out the
detector. Cosmic Ray objects dump energy onto
the detector. Properties of the Exposure and
Integration objects determine the structure of
the output file.
27
MIRI SCASim Class Summary
  • DataMap
  • Created from input files
  • DarkMap
  • BadPixelMap
  • IlluminationMap
  • QuantumEfficiency
  • MeasuredVariable
  • Dark current vs T
  • Read noise vs T
  • DetectorArray
  • Amplifier
  • PoissonIntegrator
  • Detector pixels.
  • CosmicRayEnvironment
  • Generates cosmic rays
  • CosmicRay
  • Hits detector or amplifier
  • ExposureData
  • Manages FITS header
  • Generates output file
  • Exposure info
  • Integration info

28
detector_properties.py
  • def _config_file(name, detector_id)
  • filename "ss.fits" (name, detector_id)
  • abspath os.path.join(_datapath, 'detector',
    filename)
  • if os.path.exists(abspath)
  • return abspath
  • _sca493
  • _sca493'SCA_ID' 493 Numerical
    SCA ID
  • _sca493'FPM_ID' "FPMSN106" Unique FPM
    ID
  • _sca493'NAME' "Sensor Chip Assembly 493 with
    Focal Plane Module 106"
  • _sca493'DETECTOR' "MIRIMAGE" ASCII SCA
    ID
  • _sca493'CHIP' 'SiAs' Type of
    detector chip
  • _sca493'ILLUMINATED_ROWS' 1024
  • _sca493'ILLUMINATED_COLUMNS' 1024
  • _sca493'LEFT_COLUMNS' 4 Reference
    columns on detector
  • _sca493'RIGHT_COLUMNS' 4 Reference
    columns on detector
  • _sca493'BOTTOM_ROWS' 0 There are no
    extra rows at the bottom
  • _sca493'TOP_ROWS' 256 Reference rows
    in level 1 FITS image
  • DETECTORS_DICT '493'_sca493,
  • '494'_sca494,
  • '495'_sca495
  • READOUT_MODE
  • READOUT_MODE'SLOW' (10, 2, 1, 0, 10,
    1, 1, 1)
  • READOUT_MODE'SLOWINTAVG' (10, 2, 1, 0, 1,
    4, 1, 4)
  • READOUT_MODE'SLOWGRPAVG' (10, 2, 1, 0, 4,
    1, 4, 1)
  • READOUT_MODE'SLOWGRPGAP' (10, 2, 4, 8, 4,
    1, 1, 1)
  • READOUT_MODE'FAST' (1, 0, 1, 0, 1,
    10, 1, 1)
  • READOUT_MODE'FASTINTAVG' (1, 0, 1, 0, 1,
    4, 1, 4)
  • READOUT_MODE'FASTGRPAVG' (1, 0, 1, 0, 4,
    1, 4, 1)
  • READOUT_MODE'FASTGRPGAP' (1, 0, 4, 8, 4,
    1, 1, 1)
  • DEFAULT_READOUT_MODE 'FAST
  • SUBARRAY
  • SUBARRAY'FULL' None

29
amplifier_properties.py
  • _amp493_1
  • _amp493_1'ID' 'SCA493_1'
  • _amp493_1'NAME' "Amplifier 1"
  • _amp493_1'COMMENTS' "Reads every 4th detector
    column starting at column 0"
  • _amp493_1'TYPE' "illuminated"
  • _amp493_1'REGION' "0" Starting column
  • _amp493_1'AREA' 5.0e5 Area of amplifier
    surface in square microns
  • _amp493_1'BIAS' 2 Bias in electrons
  • _amp493_1'GAINTYPE' 'POLYNOMIAL'
    Type of gain function
  • _amp493_1'GAIN' (-6.6e-8, 0.1683, 0.0)
    Coefficients for gain function
  • _amp493_1'MAX_DN' 65535.0 Maximum DN output
    by this amplifier
  • _amp493_1'READ_NOISE_FILE' _config_file('read_
    noise', '493', '1')
  • _amp493_1'READ_NOISE_COL' 1 Column number
    where to find read noise
  • _amplist494 (_amp494_1, _amp494_2, _amp494_3,
    _amp494_4, _amp494_5)
  • _amplist495 (_amp495_1, _amp495_2, _amp495_3,
    _amp495_4, _amp495_5)
  • _amplist493 (_amp493_1, _amp493_2, _amp493_3,
    _amp493_4, _amp493_5)
  • AMPLIFIERS_DICT '494'_amplist494,
  • '495'_amplist495,
  • '493'_amplist493

30
cosmic_ray_properties.py
  • CR_FLUX
  • CR_FLUX'NONE' 0.0
  • CR_FLUX'SOLAR_MIN' 4.8983E-8
  • CR_FLUX'SOLAR_MAX' 1.7783E-8
  • CR_FLUX'SOLAR_FLARE' 3.04683E-5
  • CR_LIBRARY_FILES
  • CR_LIBRARY_FILES'NONE' None
  • CR_LIBRARY_FILES'SOLAR_MIN'
    _config_file('CRs_SiAs', 'SUNMIN', 0, 9)
  • CR_LIBRARY_FILES'SOLAR_MAX'
    _config_file('CRs_SiAs', 'SUNMAX', 0, 9)
  • CR_LIBRARY_FILES'SOLAR_FLARE'
    _config_file('CRs_SiAs', 'FLARES', 0, 9)
  • CR_LIBRARY_FILES'MIN' 0
  • CR_LIBRARY_FILES'MAX' 9
  • CR_NUCLEONS ('H', 'He', 'C', 'N', 'O', 'Fe',
    '??')
  • CR_COUPLING ((0.0,0.015,0.0),(0.015,0.94,0.015),
    (0.0,0.015,0.0))
  • CR_ELECTRONS'SOLAR_MIN' \
  • (
  • (1.0e1, 0.0),
  • (1.8e1, 0.0),
  • (3.2e1, 0.0),
  • (5.6e1, 0.02),
  • (1.0e2, 0.05),
  • (1.8e2, 0.05),
  • (3.2e2, 0.05),
  • (5.6e2, 0.07),
  • (1.0e3, 0.08),
  • (1.8e3, 0.10),
  • (3.2e3, 0.20),
  • (5.6e3, 0.3),
  • (1.0e4, 0.5),
  • (1.8e4, 1.0),
  • (3.2e4, 0.6),
  • (5.6e4, 0.15),
  • (1.0e5, 0.08),

31
SCASim Demonstration.Start with some test
illumination data.
Intensity data
Wavelength data
32
Add Reference Pixels and Outputs
33
Apply Quantum Efficiency
34
Add Bad Pixels
35
Add Dark Current Hot Pixels
36
Apply Gain and Non-linearity
37
Add Poisson Noise (frame 2/18 shown)
38
Add Read Noise (frame 2/18 shown)
39
Add Cosmic Ray Events(frame 8/18 shown)
40
Build up of signal with group
41
Build up of signal with group
42
Build up of signal with group
43
Build up of signal with group
44
Build up of signal with group
45
Build up of signal with group
46
Build up of signal with group
47
Build up of signal with group
48
SCASim Experience
  • Good
  • Bad
  • Too many inputs.
  • Nobody has yet edited the configuration files or
    provided their own calibration files.
  • But the simulation is only as good as the
    calibration and configuration info. given to it.
  • Only known effects can be simulated.
  • The underlying causes of the first and last
    integration effect and the pixel lag effect
    are not yet known.
  • Perhaps caused by leaving detectors too long
    without flushing?
  • Subarray vs full frame.
  • But the simulator can help investigate such
    effects by trying out ideas.
  • OO design made SCASim highly flexible and
    reusable.
  • Rapid development time.
  • Additional effects (such as variable dark current
    and persistence) were easy to add.
  • Now a useful tool adaptable for other detectors.
  • SCASim made successful predictions for MIRI FM
    testing.
  • Expected S/N and exposure times.
  • Effect of cosmic ray hits.
  • It also helped development and testing of
    analysis software.
  • DHAS cosmic ray detection

49
The MIRI Sensor Chip Assembly(SCA) Simulator -
Summary
  • What does it do?
  • It simulates the behaviour of the MIRI detector
    chips and focal plane electronics.
  • This simulation is common to all MIRI simulators,
    so it saves duplication of effort.
  • What is it for?
  • MIRI observation planning.
  • MIRI Flight Model test planning.
  • JWST Pipeline development and testing.
  • Design Features
  • OO design, written in Python.
  • Highly adaptable and reusable.
  • Valid for all JWST detectors could be adapted
    for other instruments.

50
SCA Simulator Documentation
  1. Online documentation athttp//miri.ster.kuleuven
    .be/bin/view/Internal/ScaSim
  2. Source code at http//svn6.assembla.com/svn/jwst/t
    runk/teams/miri/
  3. MIRI Sensor Chip Assembly (SCA) Simulator User
    Manual, Steven Beard.
  4. MIRI Software Installation Instructions, Julien
    Morin.
  5. MIRI Sensor Chip Assembly (SCA) Simulator
    Software Design Document, Steven Beard.
  6. MIRI SCAsim Software Reference Manual, Steven
    Beard.

51
Questions?
  • ?
Write a Comment
User Comments (0)
About PowerShow.com