LSSTApplications  17.0+124,17.0+14,17.0+73,18.0.0+37,18.0.0+80,18.0.0-4-g68ffd23+4,18.1.0-1-g0001055+12,18.1.0-1-g03d53ef+5,18.1.0-1-g1349e88+55,18.1.0-1-g2505f39+44,18.1.0-1-g5315e5e+4,18.1.0-1-g5e4b7ea+14,18.1.0-1-g7e8fceb+4,18.1.0-1-g85f8cd4+48,18.1.0-1-g8ff0b9f+4,18.1.0-1-ga2c679d+1,18.1.0-1-gd55f500+35,18.1.0-10-gb58edde+2,18.1.0-11-g0997b02+4,18.1.0-13-gfe4edf0b+12,18.1.0-14-g259bd21+21,18.1.0-19-gdb69f3f+2,18.1.0-2-g5f9922c+24,18.1.0-2-gd3b74e5+11,18.1.0-2-gfbf3545+32,18.1.0-26-g728bddb4+5,18.1.0-27-g6ff7ca9+2,18.1.0-3-g52aa583+25,18.1.0-3-g8ea57af+9,18.1.0-3-gb69f684+42,18.1.0-3-gfcaddf3+6,18.1.0-32-gd8786685a,18.1.0-4-gf3f9b77+6,18.1.0-5-g1dd662b+2,18.1.0-5-g6dbcb01+41,18.1.0-6-gae77429+3,18.1.0-7-g9d75d83+9,18.1.0-7-gae09a6d+30,18.1.0-9-gc381ef5+4,w.2019.45
LSSTDataManagementBasePackage
Functions | Variables
lsst.synpipe.compareModel Namespace Reference

Functions

def getParams (record, galType='sersic')
 
def getMag (record, fluxType='cmodel')
 
def writeNumpyTable (fakeTable)
 
def main (root, visit, ccds, galType='sersic', output='outputs/')
 

Variables

 parser
 
 args
 

Detailed Description

Compare the input fake galaxy model to the output one

Function Documentation

◆ getMag()

def lsst.synpipe.compareModel.getMag (   record,
  fluxType = 'cmodel' 
)
return the magnitude and error

Definition at line 33 of file compareModel.py.

33 def getMag(record, fluxType='cmodel'):
34  """
35  return the magnitude and error
36  """
37  flux, fluxerr = record.get(fluxType), record.get(fluxType+'.err')
38  mag, magerr = -2.5 * np.log10(flux), 2.5/np.log(10.0)*fluxerr/flux
39  mag += record.get('zeropoint')
40  return mag, magerr
41 
42 
def getMag(record, fluxType='cmodel')
Definition: compareModel.py:33

◆ getParams()

def lsst.synpipe.compareModel.getParams (   record,
  galType = 'sersic' 
)
return the semi-major axis, axis ratio and position angle (in degrees)

Definition at line 17 of file compareModel.py.

17 def getParams(record, galType='sersic'):
18  """
19  return the semi-major axis, axis ratio and position angle (in degrees)
20  """
21  fluxType = {'dev': 'cmodel.dev',
22  'exp': 'cmodel.exp',
23  'sersic': 'cmodel',
24  'cmodel': 'cmodel'}[galType]
25 
26  e = lsst.afw.geom.ellipses.Axes(record.get(fluxType + '.ellipse'))
27  q = (e.getB() / e.getA())
28  reff = e.getA()
29  pa = (e.getTheta() * 180.0 / np.pi)
30  return reff, q, pa
31 
32 
def getParams(record, galType='sersic')
Definition: compareModel.py:17
An ellipse core for the semimajor/semiminor axis and position angle parametrization (a...
Definition: Axes.h:47

◆ main()

def lsst.synpipe.compareModel.main (   root,
  visit,
  ccds,
  galType = 'sersic',
  output = 'outputs/' 
)
main function for controlling fake source comparison
Examples:
forEachPixel.cc, image1.cc, image2.cc, imageStatistics.cc, maskedImage1.cc, maskedImage2.cc, and splineInterpolate.cc.

Definition at line 83 of file compareModel.py.

83 def main(root, visit, ccds, galType='sersic', output='outputs/'):
84  """
85  main function for controlling fake source comparison
86  """
87  butler = dafPersist.Butler(root)
88  fakeTable = None
89  for ccd in ccds:
90  dataId = {'visit': visit, 'ccd': ccd}
91  try:
92  temp = getFakeSources(butler, dataId, tol=1.0,
93  visit=True, ccd=True)
94  except Exception:
95  continue
96  if fakeTable is None:
97  fakeTable = temp.copy(True)
98  else:
99  fakeTable.extend(temp, True)
100 
101  npTable = writeNumpyTable(fakeTable)
102  rerunName = root.split('/')[-2]
103  tableFileName = output + '/' + rerunName + '_galMags.txt'
104  astropy.table.Table(npTable).write(tableFileName, format='ascii')
105 
106 
def write(self, patchRef, catalog)
Write the output.
def getFakeSources(butler, dataId, tol=1.0, extraCols=('zeropoint', 'visit', 'ccd'), includeMissing=False, footprints=False, radecMatch=None, multiband=False, reffMatch=False, pix=0.168, minRad=None, raCol='RA', decCol='Dec')
Definition: matchFakes.py:219
def writeNumpyTable(fakeTable)
Definition: compareModel.py:43
def main(root, visit, ccds, galType='sersic', output='outputs/')
Definition: compareModel.py:83

◆ writeNumpyTable()

def lsst.synpipe.compareModel.writeNumpyTable (   fakeTable)
Writes output to numpy

Definition at line 43 of file compareModel.py.

43 def writeNumpyTable(fakeTable):
44  """Writes output to numpy
45  """
46  npTable = np.recarray(len(fakeTable),
47  dtype={'names': ['id', 'fakeid', 'visit', 'ccd',
48  'cmodelMag', 'expMag',
49  'devMag',
50  'expReff', 'devReff',
51  'expBA', 'devBA',
52  'expPosAng', 'devPosAng',
53  'cmodelMagErr', 'expMagErr',
54  'devMagErr', 'nchild', 'parent'],
55  'formats': [int, int, int, int,
56  float, float,
57  float, float, float, float,
58  float, float, float, float,
59  float, float, int, int]})
60  for indFake, fake in enumerate(fakeTable):
61  npTable[indFake]['id'] = fake.get('id')
62  npTable[indFake]['fakeid'] = fake.get('fakeId')
63  npTable[indFake]['ccd'] = fake.get('ccd')
64  npTable[indFake]['visit'] = fake.get('visit')
65  nameMatch = {'sersic': 'cmodel',
66  'exp': 'cmodel.exp',
67  'cmodel': 'cmodel',
68  'dev': 'cmodel.dev'}
69  for name in ('cmodel', 'exp', 'dev'):
70  m1, m2 = getMag(fake, nameMatch[name]+'.flux')
71  npTable[indFake][name+'Mag'] = m1
72  npTable[indFake][name+'MagErr'] = m2
73  for name in ('exp', 'dev'):
74  params = getParams(fake, name)
75  npTable[indFake][name+'Reff'] = params[0]
76  npTable[indFake][name+'BA'] = params[1]
77  npTable[indFake][name+'PosAng'] = params[2]
78  npTable[indFake]['nchild'] = fake.get('deblend.nchild')
79  npTable[indFake]['parent'] = fake.get('parent')
80  return npTable
81 
82 
def getMag(record, fluxType='cmodel')
Definition: compareModel.py:33
def getParams(record, galType='sersic')
Definition: compareModel.py:17
def writeNumpyTable(fakeTable)
Definition: compareModel.py:43

Variable Documentation

◆ args

lsst.synpipe.compareModel.args

Definition at line 116 of file compareModel.py.

◆ parser

lsst.synpipe.compareModel.parser

Definition at line 108 of file compareModel.py.