Hide keyboard shortcuts

Hot-keys on this page

r m x p   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

 

 

import lsst.geom as geom 

import lsst.afw.cameraGeom as cameraGeom 

 

pixelSize = 24e-3 # pixel size in mm 

 

 

def makeAmp(i): 

# TODO DM-9294: remove this exception and uncomment the rest of the code after fixing it 

raise RuntimeError("this routine is broken because nExtended and nOverclock are not defined") 

# height = 2048 

# width = 4096 

# allPixels = geom.BoxI(geom.PointI(0, 0), geom.ExtentI(width + nExtended + nOverclock, height)) 

# return cameraGeom.Amp(cameraGeom.Id(i), allPixels, None, None, None) 

 

 

def makeCcd(ccdName): 

ccd = cameraGeom.Ccd(cameraGeom.Id(ccdName), pixelSize) 

ccd.addAmp(1, 0, makeAmp(1)) 

return ccd 

 

 

def makeRaft(raftName): 

dewar = cameraGeom.Raft(cameraGeom.Id("DECam"), 1, 1) 

dewar.addDetector(geom.PointI(0, 0), cameraGeom.FpPoint(0.0, 0.0), 

cameraGeom.Orientation(0), makeCcd(raftName)) 

return dewar 

 

 

def makeCamera(name="DECam"): 

camera = cameraGeom.Camera(cameraGeom.Id(name), 62, 1) 

 

for i in range(62): 

if i > 31: 

dewarName = "S%d" % (62-i+1) 

else: 

dewarName = "S%d" % (i+1) 

camera.addDetector(geom.PointI(i, 0), cameraGeom.FpPoint(25.4*2.5*(2.5 - i), 0.0), 

cameraGeom.Orientation(0), makeRaft(dewarName)) 

 

return camera