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# LSST Data Management System 

3# 

4# Copyright 2008-2017 AURA/LSST. 

5# 

6# This product includes software developed by the 

7# LSST Project (http://www.lsst.org/). 

8# 

9# This program is free software: you can redistribute it and/or modify 

10# it under the terms of the GNU General Public License as published by 

11# the Free Software Foundation, either version 3 of the License, or 

12# (at your option) any later version. 

13# 

14# This program is distributed in the hope that it will be useful, 

15# but WITHOUT ANY WARRANTY; without even the implied warranty of 

16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 

17# GNU General Public License for more details. 

18# 

19# You should have received a copy of the LSST License Statement and 

20# the GNU General Public License along with this program. If not, 

21# see <https://www.lsstcorp.org/LegalNotices/>. 

22# 

23import lsst.pex.config as pexConfig 

24from .subtractBackground import SubtractBackgroundTask 

25 

26 

27class FindCosmicRaysConfig(pexConfig.Config): 

28 """Config for the findCosmicRays function 

29 """ 

30 nCrPixelMax = pexConfig.Field( 

31 dtype=int, 

32 doc="maximum number of contaminated pixels", 

33 default=10000, 

34 ) 

35 minSigma = pexConfig.Field( 

36 dtype=float, 

37 doc="CRs must be > this many sky-sig above sky", 

38 default=6.0, 

39 ) 

40 min_DN = pexConfig.Field( 

41 dtype=float, 

42 doc="CRs must have > this many DN (== electrons/gain) in initial detection", 

43 default=150.0, 

44 ) 

45 cond3_fac = pexConfig.Field( 

46 dtype=float, 

47 doc="used in condition 3 for CR; see CR.cc code", 

48 default=2.5, 

49 ) 

50 cond3_fac2 = pexConfig.Field( 

51 dtype=float, 

52 doc="used in condition 3 for CR; see CR.cc code", 

53 default=0.6, 

54 ) 

55 niteration = pexConfig.Field( 

56 dtype=int, 

57 doc="number of times to look for contaminated pixels near known CR pixels", 

58 default=3, 

59 ) 

60 keepCRs = pexConfig.Field( 

61 dtype=bool, 

62 doc="Don't interpolate over CR pixels", 

63 default=False, 

64 ) 

65 background = pexConfig.ConfigurableField( 

66 target=SubtractBackgroundTask, 

67 doc="Background estimation configuration" 

68 ) 

69 

70 def setDefaults(self): 

71 self.background.useApprox = False 

72 self.background.binSize = 100000 

73 self.background.statisticsProperty = "MEDIAN" 

74 self.background.undersampleStyle = "REDUCE_INTERP_ORDER" 

75 self.background.algorithm = "AKIMA_SPLINE"