Skip to content

tree_ring_validation

karpov-sv edited this page Aug 11, 2018 · 20 revisions

Effect: Tree rings

During the growing of silicon boules the doping percentage can vary over time building "tree-ring" like structure in doping concentration. Much like a n-p junction, the gradient in doping establishes a static lateral electric field causing electrons to drift laterally into adjacent pixels while traveling through the silicon bulk.

For a more thorough introduction see e.g. Okura et al. (2015).

Contact person(s) if any:

Craig Lage, Mike Jarvis, Andrei Nomerotski/SAWG

Reference Material

See recent talk by Craig Lage here

Tree rings analysis using BNL data by Sergey Karpov is here

Another review of tree rings in BNL sensors by Hye-Yun Park is here

Data Provenance:

The model is validated using the data acquired at BNL on TS3 (30 ITL, 37 E2V sensors, 106 runs in total) and on TS8 (39 ITL, 72 E2V sensors, 496 runs in total).

All data are available on ASTRO cluster in BNL at: /gpfs01/astro/workarea/ccdtest/prod

The model parameters

Model Details

The tree rings are typically seen in flat field images where they represent the effective pixel area variation (or the Jacobian of coordinate transformation). On the other hand, for efficient simulation of data the coordinate distortion function is necessary. Therefore, it is decided to build an analytical model for radial coordinate displacement, and then compute pixel area variation from it.

The following model is selected to represent the effect:

radial displacement

Polynomial term describes the increase of tree rings amplitude with moving away from the center. Corresponding area variation is then

area variation

The parameters are chosen based on data acquired by Hye-Yun Park on TS3 for 5 ITL and 1 E2V sensors, available here.

The parameters are randomly generated for all sensors using build_tree_ring_file.py script according to the following rules:

  • 15 sin + 15 cos frequencies (with random phases) normally distributed with mean 60 pix and sigma 10 pix
  • 5 sin + 5 cos frequencies (with random phases) normally distributed with mean 35 pix and sigma 10 pix
  • 60% sensors have small amplitudes, 40% - large (order of magnitude larger) amplitudes, uniformly distributed with ~2 times spread.

Actual parameters pre-generated for all sensors are stored in tree_ring_parameters_2018-04-26.txt. The code in imsim/tree_rings.py reads this file, constructs radial displacement function and passes it to galsim.SiliconSensor constructor in galsim/sensor.py. Then the low-level C++ code in Silicon.cpp uses it for actual displacement of incoming photons, applying also conversion depth correction to it (so the electrons converted deeper have smaller displacement). The latter is handled by Silicon::insidePixel method.

Validation Criteria

Area deviations and pixel shifts between the data and several simulated tree rings are compared statistically (need quantitative measure).

Validation Results

Current images (which image should we use here?) show qualitative agreement.

Relevant Project Team for input if any:

Camera

Release and approval log:

03/30/18 - Initial Version - CWW 08/11/18 - Updated version with more details on model and validation - Sergey Karpov

Important Pages:

Home

Matrix

Redesign

Clone this wiki locally