LSSTApplications  19.0.0-13-g16625d3,20.0.0+1,20.0.0+13,20.0.0+14,20.0.0+17,20.0.0+3,20.0.0+4,20.0.0+5,20.0.0+7,20.0.0-1-g10df615+13,20.0.0-1-g253301a+6,20.0.0-1-g596936a+15,20.0.0-1-g8a53f90+2,20.0.0-1-gc96f8cb+16,20.0.0-1-gd1c87d7+2,20.0.0-10-g1b4d8e16+2,20.0.0-10-g6931302+2,20.0.0-2-g04cfba9+7,20.0.0-2-gec03fae+4,20.0.0-20-g8c202bc,20.0.0-3-gbdbfa727+7,20.0.0-3-gd2e950e,20.0.0-4-g4a2362f,20.0.0-4-gde602ef96+5,20.0.0-4-ge48a6ca+10,20.0.0-4-ge987224+5,20.0.0-4-gf68bb90+1,w.2020.28
LSSTDataManagementBasePackage
makeCamera.py
Go to the documentation of this file.
1 
2 
3 import lsst.geom as geom
4 import lsst.afw.cameraGeom as cameraGeom
5 
6 pixelSize = 24e-3 # pixel size in mm
7 
8 
9 def makeAmp(i):
10  # TODO DM-9294: remove this exception and uncomment the rest of the code after fixing it
11  raise RuntimeError("this routine is broken because nExtended and nOverclock are not defined")
12  # height = 2048
13  # width = 4096
14  # allPixels = geom.BoxI(geom.PointI(0, 0), geom.ExtentI(width + nExtended + nOverclock, height))
15  # return cameraGeom.Amp(cameraGeom.Id(i), allPixels, None, None, None)
16 
17 
18 def makeCcd(ccdName):
19  ccd = cameraGeom.Ccd(cameraGeom.Id(ccdName), pixelSize)
20  ccd.addAmp(1, 0, makeAmp(1))
21  return ccd
22 
23 
24 def makeRaft(raftName):
25  dewar = cameraGeom.Raft(cameraGeom.Id("DECam"), 1, 1)
26  dewar.addDetector(geom.PointI(0, 0), cameraGeom.FpPoint(0.0, 0.0),
27  cameraGeom.Orientation(0), makeCcd(raftName))
28  return dewar
29 
30 
31 def makeCamera(name="DECam"):
32  camera = cameraGeom.Camera(cameraGeom.Id(name), 62, 1)
33 
34  for i in range(62):
35  if i > 31:
36  dewarName = "S%d" % (62-i+1)
37  else:
38  dewarName = "S%d" % (i+1)
39  camera.addDetector(geom.PointI(i, 0), cameraGeom.FpPoint(25.4*2.5*(2.5 - i), 0.0),
40  cameraGeom.Orientation(0), makeRaft(dewarName))
41 
42  return camera
lsst.obs.decam.makeCamera.makeCamera
def makeCamera(name="DECam")
Definition: makeCamera.py:31
lsst.obs.decam.makeCamera.makeAmp
def makeAmp(i)
Definition: makeCamera.py:9
lsst::geom
Definition: AffineTransform.h:36
lsst::afw::cameraGeom
Definition: Amplifier.h:33
lsst::geom::Point< int, 2 >
lsst.obs.decam.makeCamera.makeRaft
def makeRaft(raftName)
Definition: makeCamera.py:24
lsst.obs.decam.makeCamera.makeCcd
def makeCcd(ccdName)
Definition: makeCamera.py:18