LSSTApplications  11.0-13-gbb96280,12.1+18,12.1+7,12.1-1-g14f38d3+72,12.1-1-g16c0db7+5,12.1-1-g5961e7a+84,12.1-1-ge22e12b+23,12.1-11-g06625e2+4,12.1-11-g0d7f63b+4,12.1-19-gd507bfc,12.1-2-g7dda0ab+38,12.1-2-gc0bc6ab+81,12.1-21-g6ffe579+2,12.1-21-gbdb6c2a+4,12.1-24-g941c398+5,12.1-3-g57f6835+7,12.1-3-gf0736f3,12.1-37-g3ddd237,12.1-4-gf46015e+5,12.1-5-g06c326c+20,12.1-5-g648ee80+3,12.1-5-gc2189d7+4,12.1-6-ga608fc0+1,12.1-7-g3349e2a+5,12.1-7-gfd75620+9,12.1-9-g577b946+5,12.1-9-gc4df26a+10
LSSTDataManagementBasePackage
Functions
lsst.datarel.utils Namespace Reference

Functions

def getDataset
 
def getPsf
 

Function Documentation

def lsst.datarel.utils.getDataset (   butler,
  dataset,
  dataId,
  strict,
  warn 
)
Get a dataset from a repository with an optional exception or warning if not found

@param[in] butler: data butler
@param[in] dataset: name of desired dataset
@param[in] dataId: data ID dict
@param[in] strict: if True then raise RuntimeError if dataset not found
@param[in] warn: if True and strict False then print a warning to stderr if dataset not found

@raise RuntimeError if dataset not found and strict true

Definition at line 29 of file utils.py.

29 
30 def getDataset(butler, dataset, dataId, strict, warn):
31  """Get a dataset from a repository with an optional exception or warning if not found
32 
33  @param[in] butler: data butler
34  @param[in] dataset: name of desired dataset
35  @param[in] dataId: data ID dict
36  @param[in] strict: if True then raise RuntimeError if dataset not found
37  @param[in] warn: if True and strict False then print a warning to stderr if dataset not found
38 
39  @raise RuntimeError if dataset not found and strict true
40  """
41  try:
42  ds = butler.get(dataset, dataId=dataId, immediate=True)
43  except:
44  ds = None
45  if ds is None:
46  msg = '{} : Failed to retrieve {} dataset'.format(dataId, dataset)
47  if strict:
48  raise RuntimeError(msg)
49  elif warn:
50  print('*** Skipping ' + msg, file=sys.stderr)
51  return ds
52 
def lsst.datarel.utils.getPsf (   butler,
  dataset,
  dataId,
  strict,
  warn 
)
Get the PSF from a repository without reading (very much of) the exposure

@param[in] butler: data butler
@param[in] dataset: name of desired dataset
@param[in] dataId: data ID dict of exposure containing desired PSF
@param[in] strict: if True then raise RuntimeError if psf not found
@param[in] warn: if True and strict False then print a warning to stderr if psf not found

@raise RuntimeError if exposure not found (regardless of strict)
@raise RuntimeError if exposure has no PSF and strict true

Definition at line 53 of file utils.py.

53 
54 def getPsf(butler, dataset, dataId, strict, warn):
55  """Get the PSF from a repository without reading (very much of) the exposure
56 
57  @param[in] butler: data butler
58  @param[in] dataset: name of desired dataset
59  @param[in] dataId: data ID dict of exposure containing desired PSF
60  @param[in] strict: if True then raise RuntimeError if psf not found
61  @param[in] warn: if True and strict False then print a warning to stderr if psf not found
62 
63  @raise RuntimeError if exposure not found (regardless of strict)
64  @raise RuntimeError if exposure has no PSF and strict true
65  """
66  # there is not yet a way to read just the PSF, so read a 1x1 subregion of the exposure
67  tinyBBox = afwGeom.Box2I(afwGeom.Point2I(0, 0), afwGeom.Extent2I(1, 1))
68  tinyExposure = butler.get(dataset + "_sub", dataId=dataId, bbox=tinyBBox,
69  imageOrigin="LOCAL", immediate=True)
70  psf = tinyExposure.getPsf()
71  if psf is None:
72  msg = '%s : %s exposure had no PSF' % (dataId, dataset)
73  psf = None
74  if strict:
75  raise RuntimeError(msg)
76  elif warn:
77  print('*** Skipping ' + msg, file=sys.stderr)
78  return psf
An integer coordinate rectangle.
Definition: Box.h:53