ElectrostaticCcdGeom¶
- class lsst.cp.pipe.utils.ElectrostaticCcdGeom(paramDict)¶
Bases:
objectMethods Summary
averageHorizontalBoundaryShift(i, j, topOrBottom)Integrate the field transverse to the horizontal pixel boundary
averageVerticalBoundaryShift(i, j, leftOrRight)Average shift of the vertical boundary of pixel (i j).
calcEFieldCoulombChargeSheet(xv, xqv)xv = where (the last index should address x,y,z.
corner_shift_h2(i, j, topOrBottom[, zf])dxdy(iMax[, zf])corner shifts calculations.
eField(xv[, nImageChargePairs])Field at point xv from the point charge if xv is multi-dimensional, x,y,z should be represented by the last index ([0:3]).
Returns the field transverse to the horizontal pixel boundary.
Returns the field transverse to the vertical pixel boundary.
evalAreaChangeCorners(iMax[, zf])pixel area alterations computed through corner shifts
evalAreaChangeSidesFast(iMax[, zf, ...])Same as EvalAreaChangeSides, but uses direct integration.
integrateEField(xv, component, z0, zf[, ...])Integrate transverse E Field along Z at point X (2 coordinates, last index).
integrateExFieldFast(iMax, jMax, leftOrRight)Computes the integrals of Ex along z from self.zsh to zf.
integrateEyFieldFast(iMax, jMax, topOrBottom)Computes the integral of Ey along z from self.zsh to zf.
Methods Documentation
- averageHorizontalBoundaryShift(i, j, topOrBottom, zf=None)¶
Integrate the field transverse to the horizontal pixel boundary
- averageVerticalBoundaryShift(i, j, leftOrRight, zf=None)¶
Average shift of the vertical boundary of pixel (i j).
- calcEFieldCoulombChargeSheet(xv, xqv)¶
xv = where (the last index should address x,y,z. xqv = charge location Both Should be numpy arrays. if xv is multi-d, the routine assumes that the physical coordinates (x,y,z) are patrolled by the last index. Returns the electric field from a unitely charged horizontal rectangle centered at x_q of size 2a * 2b. The returned electric field assumes 4*pi*epsilon=1.
- corner_shift_h2(i, j, topOrBottom, zf=None)¶
- dxdy(iMax, zf=None)¶
corner shifts calculations. The returned array are larger by 1 than iMax, because there are more corners than pixels
- eField(xv, nImageChargePairs=11)¶
Field at point xv from the point charge if xv is multi-dimensional, x,y,z should be represented by the last index ([0:3]). The computation uses the dipole series trick. The number of dipoles is an optional argument. Odd numbers are better for what we are doing here.
- eFieldTransverseToHorizontalPixelEdgeGrid(i, j, topOrBottom, zf=None)¶
Returns the field transverse to the horizontal pixel boundary. return a 2d array of shifts at evenly spaced points in x and z. normalized in units of pixel size, for a unit charge. The returned array has 3 indices: [along the pixel side, along the drift,E-field coordinate]. The resutl is multiplied by the z- and x- steps, so that the sum is the averge over x, divided by the pixel size.
- eFieldTransverseToVerticalPixelEdgeGrid(i, j, leftOrRight, zf=None)¶
Returns the field transverse to the vertical pixel boundary. return a 3d array of shifts at evenly spaced points in y and z. Ex,y,z is indexed by the last index.
- evalAreaChangeCorners(iMax, zf=None)¶
pixel area alterations computed through corner shifts
- evalAreaChangeSidesFast(iMax, zf=None, nImageChargePairs=11)¶
Same as EvalAreaChangeSides, but uses direct integration. it evaluates the divergence of the discrete boundary displacement field. This routine groups the calls to the field computing routines.
- integrateEField(xv, component, z0, zf, nImageChargePairs=11)¶
Integrate transverse E Field along Z at point X (2 coordinates, last index). The coordinate of the field is given by component (0, or 1). at point X from the point charge The computation uses the dipole series trick. The number of dipoles is an optional argument. Odd numbers are better for what we are doing here.
- integrateExFieldFast(iMax, jMax, leftOrRight, zf=None, nImageChargePairs=11)¶
Computes the integrals of Ex along z from self.zsh to zf. The returned array is 2d of shape (iMax, jMax).
- integrateEyFieldFast(iMax, jMax, topOrBottom, zf=None, nImageChargePairs=11)¶
Computes the integral of Ey along z from self.zsh to zf. The returned array is 2d [0:iMax, 0:jMax].