| | |
- astro.main.BaseFrame.BaseFrame(common.database.DataObject.DataObject, astro.main.ProcessTarget.ProcessTarget)
-
- ReducedScienceFrameMod(astro.main.BaseFrame.BaseFrame, ModifiedFrame)
- ModifiedFrame
-
- CoaddedRegriddedFrameMod(astro.main.RegriddedFrame.RegriddedBaseFrame, ModifiedFrame)
- ReducedScienceFrameMod(astro.main.BaseFrame.BaseFrame, ModifiedFrame)
- RegriddedFrameMod(astro.main.RegriddedFrame.RegriddedBaseFrame, ModifiedFrame)
- astro.main.RegriddedFrame.RegriddedBaseFrame(astro.main.BaseFrame.BaseFrame)
-
- CoaddedRegriddedFrameMod(astro.main.RegriddedFrame.RegriddedBaseFrame, ModifiedFrame)
- RegriddedFrameMod(astro.main.RegriddedFrame.RegriddedBaseFrame, ModifiedFrame)
class CoaddedRegriddedFrameMod(astro.main.RegriddedFrame.RegriddedBaseFrame, ModifiedFrame) |
| |
This class is intended to coadd RegriddedFrames and/or CoaddedFrames
and/or CoaddedRegriddedFrames. This process can not be done in
parallel: all pixel data needs to be available on a single machine.
However, the inputs for this class must always have been regridded to
the same grid, in which case the pixels need only be added |
| |
- Method resolution order:
- CoaddedRegriddedFrameMod
- astro.main.RegriddedFrame.RegriddedBaseFrame
- astro.main.BaseFrame.BaseFrame
- common.database.DataObject.DataObject
- common.database.DBMain.DBObject
- astro.main.ProcessTarget.ProcessTarget
- common.database.DBMeta.DBMixin
- __builtin__.object
- astro.main.OnTheFly.OnTheFly
- ModifiedFrame
Methods defined here:
- __init__(self, pathname='')
- after_set_onthefly_dependencies(self, switches, advanced)
- after the regridded frames are set in set_onthefly_dependencies
check for grid targets
- as_dict(self, seqnr=1, dependency_name='', dictionary={}, allow_lazy_typed_list=True)
- Polymorphs the DObject.as_dict method. The DBObject method skips any
lazy typed list dependencies, but for CoaddedRegriddedFrame this limit
is lifted (allow_lazy_typed_list=True) so all input RegriddedFrames'
properties are returned.
- check_preconditions(self)
- In particular: the grid targets of all input frames have to be equal.
- compare_regrid_residuals(self, detect_thresh=None, filter_stellar=True, inter_color_tol=1.0, filter_closest=False, use_coadd=False)
- Compare the residual difference between all RegriddedFrames used
to create this CoaddedRegriddedFrame and set
self.regrid_residuals_data to the output of this comparison. The
name of the residulas catalog written is set in
self.regrid_residuals.
detect_thresh: SExtractor DETECT_THRESH value (None defaults to
value in self.astrom_params.sexconf)
filter_stellar: filter out most non-stellar sources from input
catalogs prior to association
inter_color_tol: LDAC.associate INTER_COLOR_TOL value
filter_closest: toggle filtering of closest pairs when creating
residuals catalog (does not affect existing
catalogs)
use_coadd: take the residuals with respect to the average
positions as extracted from this coadd
- copy_attributes(self)
- derive_objectname(self)
- derive the object (names) from the regridded frames
- derive_psf_radii_per_ccd(self)
- get_canonical_name(self)
- Generate the unique filename for this CoaddedRegriddedFrame.
- get_canonical_name_for_swarpweight(self)
- Generate the unique filename for the associated WeightFrame produced
by Swarp.
- get_default_config(self)
- return the config parameters that differ from the default,
that are set in the constructor
- get_fixed_config(self)
- return the config parameters that are fixed by the class,
that are set in the make
- get_previous_version(self, level=0)
- Return previous version of this object. If it does not exist,
return None.
level: depth of query for previous version (0 goes as deep as
possible)
- group_regridded_frames_by_ccd(self)
- Returns a list of lists containing the input regriddedframes grouped
by CCD.
- inspect_psf(self)
- End-to-end quality control, which compares the CoaddedRegriddedFrame
with associated input ReducedScienceFrames. (Re-)Calculate the exposure
time weighted average of the psf_radius values of the
ReducedScienceFrames and compares with the psf_radii_per_ccd attribute
of the CoaddedRegriddedFrame on a per CCD basis.
This plot could be defined in a separate class
- make(self)
- Make a coadded, regridded frame.
Dependencies:
regridded_frames -- a list of RegriddedBaseFrame objects
- make_psf_end_to_end_dict(self)
- plot_regrid_residuals(self, filename='', detect_thresh=None, filter_stellar=True, inter_color_tol=1.0, filter_closest=True, use_coadd=False, kappa=3.0, range=None, domain=None, verbose=2)
- Plot the residual difference between all RegriddedFrames used to
create this CoaddedRegriddedFrame.
filename: name of file to save plot to (must end in 'png',
'ps', or 'eps')
detect_thresh: SExtractor DETECT_THRESH value (None defaults to
value in self.astrom_params.sexconf)
filter_stellar: filter out most non-stellar sources from input
catalogs prior to association
inter_color_tol: LDAC.associate INTER_COLOR_TOL value
filter_closest: toggle filtering of closest pairs when creating
residuals catalog (does not affect existing
catalogs)
use_coadd: take the residuals with respect to the average
positions as extracted from this coadd
kappa: the kappa with respect to RMS to clip outliers
from the plotted data
range: a tuple defining (xmin, xmax) of DRA,
overriding automatic width determination (does
not affect RA, DEC, Xpos, Ypos)
domain: a tuple defining (ymin, ymax) of DDEC,
overriding automatic height determination (does
not affect RA, DEC, Xpos, Ypos)
verbose: set the verbosity of the plotting routines
- run_swarp(self)
- set_weight_attribute(self)
- Besides the regridded frame, Swarp produces an associated weight frame.
This weight frame needs to be stored for future use. Therefore, the
"weight" attribute of the RegriddedFrame object is set up to receive this
associated weight frame.
- store(self, full=None)
- verify(self)
- Group the input regridded frames by CCD, then check the overlap
fraction for one CCD. Assuming this is the same for all CCDs, only
proceed if the overlap fraction is >70%.
Per CCD, for each input RegriddedFrame, calculate the region visible in
the associated ReducedScienceFrame. Average (with exposure time
weighting) the PSF of those ReducedScienceFrames and compare to the PSF
of the region in the CoaddedRegriddedFrame subtended by the
ReducedScienceFrames. This constitutes an end-to-end check of the image
pipeline.
Data descriptors defined here:
- GFID
- GalFitModel identifier of the model used to subtract
- GPID
- GalPhotModel identifier of the model used to subtract
- NAXIS1
- Length of data in axis 1 [pixel]
- NAXIS2
- Length of data in axis 2 [pixel]
- OBJECT
- Object name [None]
- ZEROPNT
- Zeropoint of this image [mag]
- ZPNTERR
- Zeropoint error [mag]
- astrom
- Information about the astrometry [None]
- ccds
- The CCD names of which input is present in the CoaddedRegriddedFrame [None]
- coadd
- Link to CoaddedRegriddedFrame that was modified
- conv
- Link to for example a PSFImage used for convolution
- creation_date
- Date this object was created [None]
- filename
- The name of the associated file [None]
- filter
- Information about the filter [None]
- globalname
- The name used to store and retrieve file to and from Storage [None]
- grid_target
- The GridTarget object for the regridding operation [None]
- imstat
- Image statistics for the frame [None]
- instrument
- Information about the instrument [None]
- is_valid
- Manual/external flag to disqualify bad data (SuperFlag) [None]
- object_id
- The object identifier
The object identifier is an attribute shared by all persistent
instances. It is the prime key, by which object identity is established
- observing_block
- Information about the observing block [None]
- process_params
- Processing parameters [None]
- process_status
- A flag indicating the processing status [None]
- psf_radii_per_ccd
- Stellar FWHM in subsections of the coadd [arcsec]
- psf_radius
- Seeing FWHM [arcsec]
- quality_flags
- Automatic/internal quality flag [None]
- regridded_frames
- A RegriddedBaseFrame object [None]
- swarpconf
- The Swarp configuration file [None]
- template
- Information about the template [None]
- weight
- The regridded WeightFrame object [None]
Data and other attributes defined here:
- PROCESS_TIME = 30
- mandatory_dependencies = (('regridded_frames', 1),)
Methods inherited from astro.main.RegriddedFrame.RegriddedBaseFrame:
- __del__(self)
- Remove intermediate result, if present
- derive_psf_radius(self)
- This method derives the median stellar FWHM, which is used in quality
control.
- derive_timestamp(self)
- get_fluxscale(self)
- Use this method to calculate the gain.
S = counts * get_fluxscale()
- get_overlap_region(self, other)
- Return a dictionary of the overlapping region of two
RegriddedBaseFrames which have the same grid target (i.e. that are
regridded to the same grid).
Returns:
overlap = {self : [xmin1, xmax1, ymin1, ymax1],
other: [xmin2, xmax2, ymin2, ymax2]}
where the keys "self" and "other" in the dictionary are
RegriddedBaseFrame instances.
- get_zeropoint(self)
- This method is used to calculate the zeropoint.
Magnitude = -2.5*log10(counts) + get_zeropoint().
- make_psf_catalog(self)
- This catalog is required to determine a median stellar FWHM from,
which is used as a quality control measure.
- make_swarp_config(self)
- Set the fixed swarp parameters
- set_astrom_attribute(self)
- write_new_image_header(self, filename='')
Data descriptors inherited from astro.main.RegriddedFrame.RegriddedBaseFrame:
- PSF_DIFFERENCE_TOO_HIGH
Methods inherited from astro.main.BaseFrame.BaseFrame:
- build_header(self)
- Fill a default header with values from descriptors
- commit_subwinstat(self)
- Conditionally commit subwindow statistics
- display(self, viewer='skycat', filename=None)
- Independent display method for all frames.
- empty_header(self)
- Initalize to a default (empty) header
- estimate_statistics(self, pixmap=None, zone=None, max_iter=5, threshold=5.0)
- Estimate the mean, median and stddev, by iteratively excluding
pixelvalues deviating too far from the median
Arguments:
pixmap -- optional map for bad pixels (default=None)
zone -- optional region (x0, y0, x1, y1) (default=None)
max_iter -- The maximum number of iterations
sig_thresh -- The threshold in number of standard deviations
- initialize_astrom_attribute(self)
- initialize_chip_attribute(self)
- initialize_filter_attribute(self)
- initialize_imstat_attribute(self)
- initialize_instrument_attribute(self)
- initialize_lamp_attribute(self)
- initialize_observingblock_attribute(self)
- initialize_template_attribute(self)
- inspect(self, pixels=None, zone=None, kappa=3.0, iterations=2, cmap=None, vmin=None, vmax=None, interpolation='lanczos', width=6, ratio=None, viewer='skycat', force_figure=False, force_viewer=False, subplot_size=50, contour_levels=20, num_bins=100, extension=None, compare=False, level=0, other=None, clip=False, color=False)
- Optional visual inspection for quality control displays image in a
PyLab (MatPlotLib) window or optionally in an external viewer.
pixels: optional list or array representing the image to be
inspected (can be MxN for greyscale, or MxNx3 for RGB)
zone: tuple of (x0, y0, x1, y1) representing the image
coordinates of the two oposing corners of the sub
image to consider
kappa: the factor by which the dynamic range is increased in
units of sigma (0 gives full range)
iterations: number of iterations in the kappa-sigma range clipping
cmap: PyLab color map instance
vmin: lower display range in native units (e.g. ADU)
vmax: upper display range in native units (e.g. ADU)
interpolation: type of interpolation the PyLab viewer uses (nearest,
bilinear, etc.)
width: width of the PyLab figure window (in inches)
ratio: ratio by which to scale the figure height (default:
x_dim/y_dim)
viewer: external viewer to use in case the image is too large
force_figure: always use the PyLab figure window (Be Careful!
Statistics calculations on large images can be very
time and memory consuming.)
force_viewer: always use the viewer
subplot_size: width and height in pixels of region of interest
contour_levels: number of contour levels for the contour plot of the
region of interest
num_bins: number of bins in the histogram plot
extension: extension of the filetype to save plot to (png, ps,
or eps) None disables saving
compare: compare this frame to its previous version using
difference imaging (current-previous), pixels is
ignored
level: depth of query for previous version (0 goes as deep
as possible) when compare is True
other: a second of the same type of Frame object to replace
previous when compare is True (if color is True,
other can be a list of two images)
clip: kappa-sigma clip each image prior to subtraction when
compare is True
color: use color combining (RGB) instead of differencing
when compare is True (kappa, vmin/vmax only honored
when clip is True), this image is R, other is B if
single, other is [G, B] if it is a list
(EXPERIMENTAL)
When force_viewer is False, inspect() displays basic image
statistics (mean, stddev) and then a representation of the image
that can be zoomed and panned. Pressing various keys will give
different results described below in a region of interest described
by subplot_size:
q - closes the most recent plot window when pressed in the
main window
[space] - displays the X and Y coordinate (FITS standard unit
indexed) and the count level
a - performs aperture photometry on brightest feature in the
region of interest (NOT YET IMPLEMENTED)
c - displays a contour plot of the region of interest (see
contour_levels)
h - displays a histogram of the pixel values of the region of
interest (see num_bins)
r - displays a radial plot of the brightest feature in the
region of interest
s - displays a surface plot of the region of interest
p - displays profile plots in both X and Y dimensions versus
intensity (count level)
NOTE: None of the commands above work in the subplots.
- is_compressed(self)
- Find out if a FITS file is compressed
- load_header(self)
- Initialize self.header
- load_image(self, readonly=0)
- Initialize self.image.
- make_background(self)
- Make a background image,
Returns a new BaseFrame object. The name of the new file is
"name.back.fits"
- make_subwinstat(self)
- Compute statistics on subwindows
- read_header(self)
- Read a header into descriptors.
The descriptor is assumed to include a number of all caps
attributes that map directly to FITS header keywords. In
addition, if any of the following attributes are present, this
routine will initialize those attributes.
Initialized attributes: instrument, chip, filter, lamp, imstat,
astrom, observing_block, template
- retrieve(self)
- Retrieve this frame from the data server and uncompress it if it has
been compressed with FITSIO.
- save(self, filename='', overwrite=1)
- statistics(self, pixmap=None, zone=None)
- Compute statistics and store in self.imstat.
Arguments:
pixmap -- optional pixelmap object (default=None)
zone -- optional region (x0, y0, x1, y1) (default=None)
- update_header(self)
- Update a header with values from descriptors
- update_history(self)
- Update a header with history
History is maintained in the instance attribute
history. History is written by appending string to the history
list.
Methods inherited from common.database.DataObject.DataObject:
- FileName(self)
- Return the pathame of the object
- Name(self)
- Return the name of the object
- check_mandatory_dependencies(self)
- check if all the mandatory dependencies are set
- commit(self)
- derive_hash(self)
- Apply hashing function to the contents of the file that is part of
this object.
The SHA hashing function is used to calculate a hash value of the
contents of this DataObject. The hash value is returned as a
hexadecimal string.
- distinct(self, param_list)
- This method returns the distinct values from an input list. The
current implementation is kinda cheesy.
- exists(self)
- Test is the file existsts
- get_pathname(self)
- Getter for pathname
- is_on_dataserver(self)
- Checks if file is accessable on the dataserver.
NOTE: A return of False does NOT imply the file is not on any
dataserver! It is simply not on any accessable
dataserver.
- is_stored(self)
- locate(self)
- See common/net/dataserver_client.py (Data_IO.locate).
Returns a list of strings describing all dataservers where the file is
located as well as a few properties of the file, i.e.
['ip=...,port=...,path=...,size=...,mdate=...,
'ip=...,port=...,path=?,size=?,mdate=?']
Question marks indicate that this dataserver is not reachable.
- name_insert_suffix(self, suffix)
- name_replace_suffix(self, suffix)
- name_with_new_suffix(self, suffix)
- release(self)
- set_filename(self, pathname=None, processlevel='')
- Specify a filename for this DataObject or use the default filename.
This method is used to set the filename attribute of a DataObject.
If called without a filename, the filename is set to the canonical name.
Classes that are derived from DataObject are expected to define a
method get_canonical_name() that returns the name for an instance
of that class. This is mandatory for CalFiles (or files that are
store()d on the data server) and optional for other files.
- set_pathname(self, pathname)
- Setter for pathname
- set_process_parameters_from_dict(self, pars={})
- pars is a dictionary of the type e.g.:
{'BiasFrame.process_params.SIGMA_CLIP':8}
- set_stored(self)
- set_user_config(self, pars={})
- store_with_hash_as_name(self, prefix='', suffix='fits')
- Name the file after the hash value of the file and store it.
First the hash value of the file is calculated. The pathname of the
dataobject is renamed to the hash value with the given suffix appended.
Then the file is stored.
Class methods inherited from common.database.DataObject.DataObject:
- is_cal(cls) from common.database.DBMeta.DBObjectMeta
- Test for being cal, derived raw classes should set _IS_CAL to 1
- is_config(cls) from common.database.DBMeta.DBObjectMeta
- Test for being config, derived raw classes should set _IS_CONFIG to 1
- is_raw(cls) from common.database.DBMeta.DBObjectMeta
- Test for being raw, derived raw classes should set _IS_RAW to 1
- is_science(cls) from common.database.DBMeta.DBObjectMeta
- Test for being science, derived raw classes should set _IS_SCIENCE to 1
- is_seq(cls) from common.database.DBMeta.DBObjectMeta
- Test for being seq, derived raw classes should set _IS_SEQ to 1
- is_support(cls) from common.database.DBMeta.DBObjectMeta
- Test for being config, derived raw classes should set _IS_SUPPORT to 1
Data descriptors inherited from common.database.DataObject.DataObject:
- pathname
Data and other attributes inherited from common.database.DataObject.DataObject:
- filepath = './'
- localname = ''
- storage = <common.net.dataserver_client.Storage at 0x11ceef0>
Methods inherited from common.database.DBMain.DBObject:
- __reduce__(self)
- Method necessary to create picklable objects
This mehod return a tuple containg a function object used for
unpickling and a picklable state tuple, to be used as argument
to the unpickle function. If necessary this object is registered
in the pickle cache
- get_creator(self)
- Returns the name of the user who created this object.
- get_persistent(self)
- get_project(self)
- Returns the name of the project to which this object belongs.
- info(self, level=0, doc=False, _indent=0, _printclass=True)
- Print the values of all persistent properties of the object.
level : level of introspection
doc : display docstrings for attributes
_indent : internal parameter used for formatting
_printclass : internal parameter used for formatting
- inverse_objects(self, max_results=100)
- Iterate through and return all objects that use the current object
max_results The maximum number of objects returned per query
- inverse_query(self)
- go through all inverse properties to see if this object is used
- persists(self)
- Returns whether an object is already made persistent or transient.
- recommit(self)
- Commits changes to an object, without following links.
Class methods inherited from common.database.DBMain.DBObject:
- get_inverse_properties(cls, props=None) from common.database.DBMeta.DBObjectMeta
- return all inverse properties
that are all the properties that point to this class
Data descriptors inherited from common.database.DBMain.DBObject:
- __dict__
- dictionary for instance variables (if defined)
- __weakref__
- list of weak references to the object (if defined)
Data and other attributes inherited from common.database.DBMain.DBObject:
- __metaclass__ = <class 'common.database.DBMeta.DBObjectMeta'>
- This is the metaclass for persistent classes
Provides:
__new__ -- manages class construction
__call__ -- manages object instantiation
- database = <common.database.DBOracle.DBProxy instance at 0xe178c0>
- pickle_id = None
Methods inherited from astro.main.ProcessTarget.ProcessTarget:
- check_observing_blocks(self, childs)
- check if all childs have the same observing_block
- check_templates(self, childs)
- check if all childs have the same template
- compare(self)
- Quality Control -- basic trend analysis
The compare() method is used for default trend analysis. This
is done by comparing with a previous version of the same
object (last weeks bias, for example). This may be as simple
as comparing attribute values, but may also involve more
complex computations (e.g., subtracting the two images, and
analysing the residuals)
- get_dependencies(self)
- Return a list of names of attributes that are required for make()
- get_qcflags_set(self)
- Return a list of names of flags that have been set.
- get_qcflags_set_dict(self)
- Return a dictionary of flags that have been set. The key is the
name, the value is a tuple of (index, docstring).
- is_compared(self)
- Return true if the object has been compared
- is_inspected(self)
- Return true if the object has been inspected
- is_made(self)
- Return true if the object has been made
- is_ok(self)
- Return true if no quality control flags have been set.
- is_verified(self)
- Return true if the object has been verified
- set_compared(self)
- Set the process status to indicate that the object has been
compared.
- set_inspected(self)
- Set the process status to indicate that the object has been
inspected.
- set_made(self)
- Set the process tatus to indicate that the object has been made
- set_verified(self)
- Set the process status to indicate that the object has been
verified.
Class methods inherited from astro.main.ProcessTarget.ProcessTarget:
- get_qcflags(cls) from common.database.DBMeta.DBObjectMeta
- Return a list of attribute names of QCflag() objects.
- select(cls, **searchterms) from common.database.DBMeta.DBObjectMeta
- Class method to select RawFrames, Calfiles and ReducedScienceFrames
from the database.
Syntax example:
q = RawScienceFrame.select(instrument='WFI', filter='#842',
chip='ccd50', time_from='2000-01-02 04:45:46',
time_to='2000-01-02 05:03:00')
Possible search terms:
----------------------
check_quality - (Default 1) Exclude invalidated data (quality_flags!=0)
check_validity - (Default 1) Exclude invalidated data (is_valid=0)
chip - select of the same CCD ('ccd50', 'ccd51', etc.)
date - select of the same date (i.e. date at the start of
observing night, in yyyy-mm-dd format)
exptime - select frames with similar exposure time
(EXPTIME-0.8sec to EXPTIME+0.8 sec)
extension - select (raw) frames for a certain extension of its
RawFitsData object
filename - select a frame(!) by its filename
filter - select of the same filter ('#842', '#843', etc.)
instrument - select of the same instrument ('WFI', 'WFC', 'OCAM')
object - select for OBJECT header keyword, uses "like"
functionality, which allows wildcards "*" and "?"
time_from - precise form of date, in yyyy-mm-dd hh:mm:ss format
time_to - required when using time_from
- select_for_raw(cls, raw, overscan=None, check_quality=1, check_validity=1) from common.database.DBMeta.DBObjectMeta
- Class method to select the most recent valid calfile for the
provided raw frame from the database.
- select_for_reduced(cls, reduced, overscan=None, check_quality=1, check_validity=1) from common.database.DBMeta.DBObjectMeta
- Synonym for the select_for_raw method; the implementation should
be identical.
Data and other attributes inherited from astro.main.ProcessTarget.ProcessTarget:
- STATUS_COMPARE = 2
- STATUS_INSPECT = 3
- STATUS_MAKE = 0
- STATUS_VERIFY = 1
Class methods inherited from common.database.DBMeta.DBMixin:
- get_persistent_attributes(cls) from common.database.DBMeta.DBObjectMeta
- return a list of persistent attributes
Methods inherited from astro.main.OnTheFly.OnTheFly:
- Flagged(self)
- Check if any flag is set
return 1 for flag is set
return 0 no flag
- after_do_make(self, switches=None)
- extra make statements, this method can be overridden by OnTheFly classes to
implement extra make statements which will be executed after the make of self
- after_uptodate_object(self, dependencies_missing, dependencies_new, dependencies_obsolete)
- The uptodate_object method determines if the object is uptodate, and will result in three listings :
dependencies_missing - missing mandatory dependencies
dependencies_new - new dependencies
dependencies_obsolete - current dependencies that are obsolete
Derived classes can override this method to tweak the listings
- check_for_mandatory(self, dep_str, dep_new)
- check if dependency is mandatory and present
dep_str is the name of the attribute, dep_new is the (attribute) object
- get_onthefly_dependencies(self, advanced=None)
- Method retrieves a list of all dependencies used for
on-the-fly processing
Return: [dependency, dependency class, dependency name]
- uptodate(self, date_time=None, template=None, switches=None, advanced=None)
- This method checks if the object is up-to-date, for the given datetime.
OnTheFly_uptodate class has the functionality for checking uptodate
Class methods inherited from astro.main.OnTheFly.OnTheFly:
- exist(cls, date_time=None, chip=None, filter=None, object_id=None, parent=None, parent_attr=None, template=None, extra=[], advanced=None, switches=None) from common.database.DBMeta.DBObjectMeta
- for the given parameters and class return the most
recent object(s), or None
- get_onthefly(cls, date_time=None, filter=None, chip=None, object_id=None, advanced=None, switches=None, template=None, parent=None, parent_attr=None) from common.database.DBMeta.DBObjectMeta
- For the given parameters and class get the object,
if the object does not exist -> make it.
This is done recursively for all dependencies.
The object can only be made if there are raws
Methods inherited from ModifiedFrame:
- copy_attributes_from_original(self, orig)
- subtract_model(self, model, orig)
- update_for_modification(self)
|
class ReducedScienceFrameMod(astro.main.BaseFrame.BaseFrame, ModifiedFrame) |
| |
A trimmed, de-biased, flat-fielded and, depending on filter, de-fringed,
science image for one CCD. An illumination correction is also applied when
given as input. |
| |
- Method resolution order:
- ReducedScienceFrameMod
- astro.main.BaseFrame.BaseFrame
- common.database.DataObject.DataObject
- common.database.DBMain.DBObject
- astro.main.ProcessTarget.ProcessTarget
- common.database.DBMeta.DBMixin
- __builtin__.object
- astro.main.OnTheFly.OnTheFly
- ModifiedFrame
Methods defined here:
- __init__(self, pathname='')
- apply_fringe_correction(self)
- apply_illumination_correction(self)
- check_preconditions(self)
- copy_attributes(self)
- correct_for_overscan_and_trim_frame(self)
- create_master_pixelmap(self)
- debias_and_flatfield_frame(self)
- derive_psf_radius(self)
- derive_timestamp(self)
- derive_weights(self)
- get_airmass(self)
- Accessor for effective airmass. This method should be used to
compute the airmass
- get_astrometry(self)
- Query the database for the most recent valid astrometric solution
for this frame.
- get_bounding_box(self)
- Get the minimum and maximum of RA and DEC spanned by the image
returns min(ra), max(ra), min(dec), max(dec)
- get_canonical_name(self)
- Generate the unique filename for this ReducedScienceFrame.
- get_canonical_name_for_weight(self)
- Generate the unique filename for the associated WeightFrame.
- get_cosmic_map(self)
- get_fringemap_scale_factor(self)
- Method for obtaining the scale factor of the fringemap.
Requires:
fringe -- The FringeFrame object
saturated -- A SaturatedPixelMap object
hot -- A HotPixelMap object
cold -- A ColdPixelMap object
This method calculates and returns the scale factor a for which
sigma(ReducedScienceFrame - a*FringeFrame) is minimal. This is done by
equating the derivative of this expression w.r.t. a to zero and solving
for a. Some pixels are excluded (by sigma thresholding) in the
determination of the necessary statistics.
Parameters:
IMAGE_THRESHOLD -- Only include pixels for which the image
data contains probably no objects
(abs(image-median(image))<IMAGE_THRESHOLD)
FRINGE_THRESHOLD_LOW -- Only include pixels that have significant
fringing
(abs(fringe)>FRINGE_THRESHOLD_LOW)
FRINGE_THRESHOLD_HIGH -- Do not include pixels with excessive
fringing
(abs(fringe)<FRINGE_THRESHOLD_HIGH)
- get_gain(self)
- Returns the value of the gain for the CCD of this
ReducedScienceFrame.
Queries the database for the most recent valid GainLinearity object.
- get_overlap_region(self, other)
- ----------------------------- NOTE -----------------------------------
This method does not work accurately (that is to say, up to 1 pixel
accuracy, which is the best one can do without resampling),
because the PV matrix present in the AstrometricParameters is not
correctly handled in the projections. Even WCSLib does not handle the
PV matrix.
---------------------------- END NOTE --------------------------------
Return a dictionary of the overlapping region of two
ReducedScienceFrames. Note that this overlap is by definition
inaccurate; cutouts are only made of integer pixels.
Returns:
overlap = {self : [xmin1, xmax1, ymin1, ymax1],
other: [xmin2, xmax2, ymin2, ymax2]}
where the keys "self" and "other" in the dictionary are
ReducedScienceFrame instances.
- get_readnoise(self)
- Returns the value of the readnoise for the CCD of this
ReducedScienceFrame.
Queries the database for the most recent valid ReadNoise object.
- get_satellite_map(self)
- get_saturatedpixel_map(self)
- get_zeropoint(self)
- Returns a tuple of (zeropoint, zeropnt_err).
Queries the database for the most recent valid PhotometricParameters
object for this ReducedScienceFrame. The zeropoint present in the
PhotometricParameters object is corrected for the observation time and
airmass of this particular ReducedScienceFrame.
- make(self)
- Reduce a raw science frame.
Requires:
raw -- a RawScienceFrame object
flat -- a MasterFlatFrame object
bias -- a BiasFrame object
hot -- a HotPixelMap object
cold -- a ColdPixelMap object
Optional:
illumination -- an IlluminationCorrectionFrame object
fringe -- a FringeFrame object
- retrieve(self, full=None)
- store(self, store_weight=True, compress_weight=True)
- update_astrometry_of_file(self, astrom_params=None, filename='')
- Updates the astrometry of this ReducedScienceFrame with either
the specified astrometric solution or the most recent one found in the
database for this frame. The result can be written to a different file
if "filename" is specified.
Class methods defined here:
- select(cls, **searchterms) from common.database.DBMeta.DBObjectMeta
- Polymorphs the standard select() found in ProcessTarget (it is
extended by adding a filter to remove older ReducedScienceFrames
derived from the same RawScienceFrame).
Data descriptors defined here:
- AIRMEND
- Airmass at end of observation [None]
- AIRMSTRT
- Airmass at start of observation [None]
- DATE
- UTC date the original data file was saved [None]
- DATE_OBS
- UTC date at the start of the observation [None]
- EXPTIME
- Total observation time [sec]
- GFID
- GalFitModel identifier of the model used to subtract
- GPID
- GalPhotModel identifier of the model used to subtract
- NAXIS1
- Length of data in axis 1 [pixel]
- NAXIS2
- Length of data in axis 2 [pixel]
- OBJECT
- Object name [None]
- astrom
- Information about the astrometry [None]
- bias
- A BiasFrame object [None]
- chip
- Information about the chip [None]
- cold
- A ColdPixelMap object [None]
- conv
- Link to for example a PSFImage used for convolution
- creation_date
- Date this object was created [None]
- filename
- The name of the associated file [None]
- filter
- Information about the filter [None]
- flat
- A MasterFlatFrame object [None]
- fringe
- A FringeFrame object [None]
- globalname
- The name used to store and retrieve file to and from Storage [None]
- hot
- A HotPixelMap object [None]
- illumination
- An IlluminationCorrection object [None]
- imstat
- Image statistics for the frame [None]
- instrument
- Information about the instrument [None]
- is_valid
- Manual/external flag to disqualify bad data (SuperFlag) [None]
- object_id
- The object identifier
The object identifier is an attribute shared by all persistent
instances. It is the prime key, by which object identity is established
- observing_block
- Information about the observing block [None]
- process_params
- Processing parameters [None]
- process_status
- A flag indicating the processing status [None]
- psf_radius
- Stellar Full Width at Half Maximum (FWHM) [arcsec]
- quality_flags
- Automatic/internal quality flag [None]
- raw
- A RawScienceFrame object [None]
- reduced
- Link to ReducedScienceFrame that was modified
- scale_factor
- The de-fringing scale-factor [None]
- template
- Information about the template [None]
- weight
- The WeightFrame associated with this frame [None]
Data and other attributes defined here:
- PROCESS_TIME = 90
- mandatory_dependencies = (('raw', 1), ('bias', 1), ('flat', 1), ('hot', 1), ('cold', 1))
Methods inherited from astro.main.BaseFrame.BaseFrame:
- build_header(self)
- Fill a default header with values from descriptors
- commit_subwinstat(self)
- Conditionally commit subwindow statistics
- display(self, viewer='skycat', filename=None)
- Independent display method for all frames.
- empty_header(self)
- Initalize to a default (empty) header
- estimate_statistics(self, pixmap=None, zone=None, max_iter=5, threshold=5.0)
- Estimate the mean, median and stddev, by iteratively excluding
pixelvalues deviating too far from the median
Arguments:
pixmap -- optional map for bad pixels (default=None)
zone -- optional region (x0, y0, x1, y1) (default=None)
max_iter -- The maximum number of iterations
sig_thresh -- The threshold in number of standard deviations
- get_previous_version(self, level=0)
- Return previous version of this object. If it does not exist,
return None.
level: depth of query for previous version (0 goes as deep as
possible)
- initialize_astrom_attribute(self)
- initialize_chip_attribute(self)
- initialize_filter_attribute(self)
- initialize_imstat_attribute(self)
- initialize_instrument_attribute(self)
- initialize_lamp_attribute(self)
- initialize_observingblock_attribute(self)
- initialize_template_attribute(self)
- inspect(self, pixels=None, zone=None, kappa=3.0, iterations=2, cmap=None, vmin=None, vmax=None, interpolation='lanczos', width=6, ratio=None, viewer='skycat', force_figure=False, force_viewer=False, subplot_size=50, contour_levels=20, num_bins=100, extension=None, compare=False, level=0, other=None, clip=False, color=False)
- Optional visual inspection for quality control displays image in a
PyLab (MatPlotLib) window or optionally in an external viewer.
pixels: optional list or array representing the image to be
inspected (can be MxN for greyscale, or MxNx3 for RGB)
zone: tuple of (x0, y0, x1, y1) representing the image
coordinates of the two oposing corners of the sub
image to consider
kappa: the factor by which the dynamic range is increased in
units of sigma (0 gives full range)
iterations: number of iterations in the kappa-sigma range clipping
cmap: PyLab color map instance
vmin: lower display range in native units (e.g. ADU)
vmax: upper display range in native units (e.g. ADU)
interpolation: type of interpolation the PyLab viewer uses (nearest,
bilinear, etc.)
width: width of the PyLab figure window (in inches)
ratio: ratio by which to scale the figure height (default:
x_dim/y_dim)
viewer: external viewer to use in case the image is too large
force_figure: always use the PyLab figure window (Be Careful!
Statistics calculations on large images can be very
time and memory consuming.)
force_viewer: always use the viewer
subplot_size: width and height in pixels of region of interest
contour_levels: number of contour levels for the contour plot of the
region of interest
num_bins: number of bins in the histogram plot
extension: extension of the filetype to save plot to (png, ps,
or eps) None disables saving
compare: compare this frame to its previous version using
difference imaging (current-previous), pixels is
ignored
level: depth of query for previous version (0 goes as deep
as possible) when compare is True
other: a second of the same type of Frame object to replace
previous when compare is True (if color is True,
other can be a list of two images)
clip: kappa-sigma clip each image prior to subtraction when
compare is True
color: use color combining (RGB) instead of differencing
when compare is True (kappa, vmin/vmax only honored
when clip is True), this image is R, other is B if
single, other is [G, B] if it is a list
(EXPERIMENTAL)
When force_viewer is False, inspect() displays basic image
statistics (mean, stddev) and then a representation of the image
that can be zoomed and panned. Pressing various keys will give
different results described below in a region of interest described
by subplot_size:
q - closes the most recent plot window when pressed in the
main window
[space] - displays the X and Y coordinate (FITS standard unit
indexed) and the count level
a - performs aperture photometry on brightest feature in the
region of interest (NOT YET IMPLEMENTED)
c - displays a contour plot of the region of interest (see
contour_levels)
h - displays a histogram of the pixel values of the region of
interest (see num_bins)
r - displays a radial plot of the brightest feature in the
region of interest
s - displays a surface plot of the region of interest
p - displays profile plots in both X and Y dimensions versus
intensity (count level)
NOTE: None of the commands above work in the subplots.
- is_compressed(self)
- Find out if a FITS file is compressed
- load_header(self)
- Initialize self.header
- load_image(self, readonly=0)
- Initialize self.image.
- make_background(self)
- Make a background image,
Returns a new BaseFrame object. The name of the new file is
"name.back.fits"
- make_subwinstat(self)
- Compute statistics on subwindows
- read_header(self)
- Read a header into descriptors.
The descriptor is assumed to include a number of all caps
attributes that map directly to FITS header keywords. In
addition, if any of the following attributes are present, this
routine will initialize those attributes.
Initialized attributes: instrument, chip, filter, lamp, imstat,
astrom, observing_block, template
- save(self, filename='', overwrite=1)
- statistics(self, pixmap=None, zone=None)
- Compute statistics and store in self.imstat.
Arguments:
pixmap -- optional pixelmap object (default=None)
zone -- optional region (x0, y0, x1, y1) (default=None)
- update_header(self)
- Update a header with values from descriptors
- update_history(self)
- Update a header with history
History is maintained in the instance attribute
history. History is written by appending string to the history
list.
Methods inherited from common.database.DataObject.DataObject:
- FileName(self)
- Return the pathame of the object
- Name(self)
- Return the name of the object
- check_mandatory_dependencies(self)
- check if all the mandatory dependencies are set
- commit(self)
- derive_hash(self)
- Apply hashing function to the contents of the file that is part of
this object.
The SHA hashing function is used to calculate a hash value of the
contents of this DataObject. The hash value is returned as a
hexadecimal string.
- distinct(self, param_list)
- This method returns the distinct values from an input list. The
current implementation is kinda cheesy.
- exists(self)
- Test is the file existsts
- get_pathname(self)
- Getter for pathname
- is_on_dataserver(self)
- Checks if file is accessable on the dataserver.
NOTE: A return of False does NOT imply the file is not on any
dataserver! It is simply not on any accessable
dataserver.
- is_stored(self)
- locate(self)
- See common/net/dataserver_client.py (Data_IO.locate).
Returns a list of strings describing all dataservers where the file is
located as well as a few properties of the file, i.e.
['ip=...,port=...,path=...,size=...,mdate=...,
'ip=...,port=...,path=?,size=?,mdate=?']
Question marks indicate that this dataserver is not reachable.
- name_insert_suffix(self, suffix)
- name_replace_suffix(self, suffix)
- name_with_new_suffix(self, suffix)
- release(self)
- set_filename(self, pathname=None, processlevel='')
- Specify a filename for this DataObject or use the default filename.
This method is used to set the filename attribute of a DataObject.
If called without a filename, the filename is set to the canonical name.
Classes that are derived from DataObject are expected to define a
method get_canonical_name() that returns the name for an instance
of that class. This is mandatory for CalFiles (or files that are
store()d on the data server) and optional for other files.
- set_pathname(self, pathname)
- Setter for pathname
- set_process_parameters_from_dict(self, pars={})
- pars is a dictionary of the type e.g.:
{'BiasFrame.process_params.SIGMA_CLIP':8}
- set_stored(self)
- set_user_config(self, pars={})
- store_with_hash_as_name(self, prefix='', suffix='fits')
- Name the file after the hash value of the file and store it.
First the hash value of the file is calculated. The pathname of the
dataobject is renamed to the hash value with the given suffix appended.
Then the file is stored.
Class methods inherited from common.database.DataObject.DataObject:
- is_cal(cls) from common.database.DBMeta.DBObjectMeta
- Test for being cal, derived raw classes should set _IS_CAL to 1
- is_config(cls) from common.database.DBMeta.DBObjectMeta
- Test for being config, derived raw classes should set _IS_CONFIG to 1
- is_raw(cls) from common.database.DBMeta.DBObjectMeta
- Test for being raw, derived raw classes should set _IS_RAW to 1
- is_science(cls) from common.database.DBMeta.DBObjectMeta
- Test for being science, derived raw classes should set _IS_SCIENCE to 1
- is_seq(cls) from common.database.DBMeta.DBObjectMeta
- Test for being seq, derived raw classes should set _IS_SEQ to 1
- is_support(cls) from common.database.DBMeta.DBObjectMeta
- Test for being config, derived raw classes should set _IS_SUPPORT to 1
Data descriptors inherited from common.database.DataObject.DataObject:
- pathname
Data and other attributes inherited from common.database.DataObject.DataObject:
- filepath = './'
- localname = ''
- storage = <common.net.dataserver_client.Storage at 0x11ceef0>
Methods inherited from common.database.DBMain.DBObject:
- __del__(self)
- Destructor for the DBObject
This destructor is called by the garbage collector for the transient
part of the DBObject. When it is called it calls the gc_transient()
method of the DBProxy implementation. The implementation of the
gc_transient() method can then decide what to do with the persistent
counterpart.
E.g. the database can be synchronized with its transient counterpart.
Another possibility is that the gc_transient() implementation checks
whether any attributes of a read-only object have changed since an
object was fetched from the database. If there are differences an
exception can be raised.
- __reduce__(self)
- Method necessary to create picklable objects
This mehod return a tuple containg a function object used for
unpickling and a picklable state tuple, to be used as argument
to the unpickle function. If necessary this object is registered
in the pickle cache
- as_dict(self, seqnr=1, dependency_name='', dictionary={}, allow_lazy_typed_list=False)
- Method much like the info method, but returns a dictionary.
Dictionary looks like:
{'<classname>.<property1_name>.<property2_name>': value,
'<classname>.<property2_name>.<property3_name>': value}
Problem: infinite loops for cold/flat dependencies. It seems a maximum
recursion depth limits the problem.
- get_creator(self)
- Returns the name of the user who created this object.
- get_persistent(self)
- get_project(self)
- Returns the name of the project to which this object belongs.
- info(self, level=0, doc=False, _indent=0, _printclass=True)
- Print the values of all persistent properties of the object.
level : level of introspection
doc : display docstrings for attributes
_indent : internal parameter used for formatting
_printclass : internal parameter used for formatting
- inverse_objects(self, max_results=100)
- Iterate through and return all objects that use the current object
max_results The maximum number of objects returned per query
- inverse_query(self)
- go through all inverse properties to see if this object is used
- persists(self)
- Returns whether an object is already made persistent or transient.
- recommit(self)
- Commits changes to an object, without following links.
Class methods inherited from common.database.DBMain.DBObject:
- get_inverse_properties(cls, props=None) from common.database.DBMeta.DBObjectMeta
- return all inverse properties
that are all the properties that point to this class
Data descriptors inherited from common.database.DBMain.DBObject:
- __dict__
- dictionary for instance variables (if defined)
- __weakref__
- list of weak references to the object (if defined)
Data and other attributes inherited from common.database.DBMain.DBObject:
- __metaclass__ = <class 'common.database.DBMeta.DBObjectMeta'>
- This is the metaclass for persistent classes
Provides:
__new__ -- manages class construction
__call__ -- manages object instantiation
- database = <common.database.DBOracle.DBProxy instance at 0xe178c0>
- pickle_id = None
Methods inherited from astro.main.ProcessTarget.ProcessTarget:
- check_observing_blocks(self, childs)
- check if all childs have the same observing_block
- check_templates(self, childs)
- check if all childs have the same template
- compare(self)
- Quality Control -- basic trend analysis
The compare() method is used for default trend analysis. This
is done by comparing with a previous version of the same
object (last weeks bias, for example). This may be as simple
as comparing attribute values, but may also involve more
complex computations (e.g., subtracting the two images, and
analysing the residuals)
- get_dependencies(self)
- Return a list of names of attributes that are required for make()
- get_qcflags_set(self)
- Return a list of names of flags that have been set.
- get_qcflags_set_dict(self)
- Return a dictionary of flags that have been set. The key is the
name, the value is a tuple of (index, docstring).
- is_compared(self)
- Return true if the object has been compared
- is_inspected(self)
- Return true if the object has been inspected
- is_made(self)
- Return true if the object has been made
- is_ok(self)
- Return true if no quality control flags have been set.
- is_verified(self)
- Return true if the object has been verified
- set_compared(self)
- Set the process status to indicate that the object has been
compared.
- set_inspected(self)
- Set the process status to indicate that the object has been
inspected.
- set_made(self)
- Set the process tatus to indicate that the object has been made
- set_verified(self)
- Set the process status to indicate that the object has been
verified.
- verify(self)
- Quality Control -- internal consistency
This method inspects the values of various attributes of the
object to see if these are within the expected range for that
object. The purpose of this method is mostly to perform
sanity-checks on measured results. It is assumed that the
required measurements (for example image statistics) are done
during data reduction (i.e. while executing make()), and stored
in persistent attributes.
Class methods inherited from astro.main.ProcessTarget.ProcessTarget:
- get_qcflags(cls) from common.database.DBMeta.DBObjectMeta
- Return a list of attribute names of QCflag() objects.
- select_for_raw(cls, raw, overscan=None, check_quality=1, check_validity=1) from common.database.DBMeta.DBObjectMeta
- Class method to select the most recent valid calfile for the
provided raw frame from the database.
- select_for_reduced(cls, reduced, overscan=None, check_quality=1, check_validity=1) from common.database.DBMeta.DBObjectMeta
- Synonym for the select_for_raw method; the implementation should
be identical.
Data and other attributes inherited from astro.main.ProcessTarget.ProcessTarget:
- STATUS_COMPARE = 2
- STATUS_INSPECT = 3
- STATUS_MAKE = 0
- STATUS_VERIFY = 1
Class methods inherited from common.database.DBMeta.DBMixin:
- get_persistent_attributes(cls) from common.database.DBMeta.DBObjectMeta
- return a list of persistent attributes
Methods inherited from astro.main.OnTheFly.OnTheFly:
- Flagged(self)
- Check if any flag is set
return 1 for flag is set
return 0 no flag
- after_do_make(self, switches=None)
- extra make statements, this method can be overridden by OnTheFly classes to
implement extra make statements which will be executed after the make of self
- after_set_onthefly_dependencies(self, switches, advanced)
- this method is called after the onthefly method set_onthefly_dependencies
derived classes can implement this method to customize the dependencies
setting after this has been done automatically by onthefly
- after_uptodate_object(self, dependencies_missing, dependencies_new, dependencies_obsolete)
- The uptodate_object method determines if the object is uptodate, and will result in three listings :
dependencies_missing - missing mandatory dependencies
dependencies_new - new dependencies
dependencies_obsolete - current dependencies that are obsolete
Derived classes can override this method to tweak the listings
- check_for_mandatory(self, dep_str, dep_new)
- check if dependency is mandatory and present
dep_str is the name of the attribute, dep_new is the (attribute) object
- get_onthefly_dependencies(self, advanced=None)
- Method retrieves a list of all dependencies used for
on-the-fly processing
Return: [dependency, dependency class, dependency name]
- uptodate(self, date_time=None, template=None, switches=None, advanced=None)
- This method checks if the object is up-to-date, for the given datetime.
OnTheFly_uptodate class has the functionality for checking uptodate
Class methods inherited from astro.main.OnTheFly.OnTheFly:
- exist(cls, date_time=None, chip=None, filter=None, object_id=None, parent=None, parent_attr=None, template=None, extra=[], advanced=None, switches=None) from common.database.DBMeta.DBObjectMeta
- for the given parameters and class return the most
recent object(s), or None
- get_onthefly(cls, date_time=None, filter=None, chip=None, object_id=None, advanced=None, switches=None, template=None, parent=None, parent_attr=None) from common.database.DBMeta.DBObjectMeta
- For the given parameters and class get the object,
if the object does not exist -> make it.
This is done recursively for all dependencies.
The object can only be made if there are raws
Methods inherited from ModifiedFrame:
- copy_attributes_from_original(self, orig)
- subtract_model(self, model, orig)
- update_for_modification(self)
|
class RegriddedFrameMod(astro.main.RegriddedFrame.RegriddedBaseFrame, ModifiedFrame) |
| |
A single regridded frame.
This class is intended to produce regridded frames which can subsequently be
coadded into a CoaddedRegriddedFrame object. |
| |
- Method resolution order:
- RegriddedFrameMod
- astro.main.RegriddedFrame.RegriddedBaseFrame
- astro.main.BaseFrame.BaseFrame
- common.database.DataObject.DataObject
- common.database.DBMain.DBObject
- astro.main.ProcessTarget.ProcessTarget
- common.database.DBMeta.DBMixin
- __builtin__.object
- astro.main.OnTheFly.OnTheFly
- ModifiedFrame
Methods defined here:
- __del__(self)
- __init__(self, pathname='')
- check_preconditions(self)
- copy_attributes(self)
- get_astrometry(self)
- get_bounding_box_of_reduced(self)
- get_canonical_name(self)
- Generate the unique filename for this RegriddedFrame.
- get_canonical_name_for_swarpweight(self)
- Generate the unique filename for the associated WeightFrame produced
by Swarp.
- get_default_config(self)
- return the config parameters that differ from the default,
that are set in the constructor
- get_fixed_config(self)
- return the config parameters that are fixed by the class,
that are set in the make
- get_gain(self)
- get_gridtarget(self)
- get_photometry(self)
- get_previous_version(self, level=0)
- Return previous version of this object. If it does not exist,
return None.
level: depth of query for previous version (0 goes as deep as
possible)
- get_readnoise(self)
- get_zeropoint(self)
- make(self)
- Make a regridded frame.
Requires:
grid_target -- a GridTarget object
reduced -- a ReducedScienceFrame object
gain -- a GainLinearity object
astrom_params -- an AstrometricParameters object
photom_params -- a PhotometricParameters object
This method regrids a frame and its associated weight. The regridded
associated weight is then assigned to the "weight" attribute of the
RegriddedFrame object.
- read_header(self)
- Extends the read_header method of BaseFrame as inherited from
RegriddedBaseFrame. The method is strictly private.
- retrieve(self, full=None)
- run_swarp(self)
- set_photometric_attributes(self)
- set_weight_attribute(self)
- Besides the regridded frame, Swarp produces an associated weight
frame. This weight frame needs to be stored for future use. Therefore,
the "weight" attribute of the RegriddedFrame object is set up to
receive this associated weight frame.
- store(self, full=1)
- subtract_background(self)
- This method applies different background subtraction methods
depending on the value of the BACKGROUND_SUBTRACTION_TYPE process
parameter:
0: don't (pre-) subtract
1: make and subtract background image
2: subtract constant (median of iteratively clipped pixel values)
- verify(self)
Class methods defined here:
- select(cls, **searchterms) from common.database.DBMeta.DBObjectMeta
- Polymorphs the standard select() found in ProcessTarget (it is
extended by adding a filter to remove older RegriddedFrames derived
from the same RawScienceFrame).
Data descriptors defined here:
- DATE_OBS
- UTC date at the start of the observation [None]
- FLXSCALE
- The flux scale applicable for this frame [None]
- GFID
- GalFitModel identifier of the model used to subtract
- GPID
- GalPhotModel identifier of the model used to subtract
- NAXIS1
- Length of data in axis 1 [pixel]
- NAXIS2
- Length of data in axis 2 [pixel]
- OBJECT
- Object name [None]
- ZEROPNT
- Zeropoint of this image [mag]
- ZPNTERR
- Zeropoint error [mag]
- astrom
- Information about the astrometry [None]
- astrom_params
- An AstrometricParameters object [None]
- chip
- Information about the chip [None]
- conv
- Link to for example a PSFImage used for convolution
- creation_date
- Date this object was created [None]
- filename
- The name of the associated file [None]
- filter
- Information about the filter [None]
- gain
- A GainLinearity object [None]
- globalname
- The name used to store and retrieve file to and from Storage [None]
- grid_target
- The GridTarget object for the regridding operation [None]
- imstat
- Image statistics for the frame [None]
- instrument
- Information about the instrument [None]
- is_valid
- Manual/external flag to disqualify bad data (SuperFlag) [None]
- object_id
- The object identifier
The object identifier is an attribute shared by all persistent
instances. It is the prime key, by which object identity is established
- observing_block
- Information about the observing block [None]
- photom_params
- A PhotometricParameters object [None]
- process_params
- Processing parameters [None]
- process_status
- A flag indicating the processing status [None]
- psf_radius
- Seeing FWHM [arcsec]
- quality_flags
- Automatic/internal quality flag [None]
- reduced
- A ReducedScienceFrame object [None]
- regridded
- Link to RegriddedFrame that was modified
- swarpconf
- The Swarp configuration file [None]
- template
- Information about the template [None]
- weight
- The regridded WeightFrame object [None]
Data and other attributes defined here:
- PROCESS_TIME = 40
- mandatory_dependencies = (('reduced', 1), ('astrom_params', 1), ('photom_params', 1), ('gain', 1))
Methods inherited from astro.main.RegriddedFrame.RegriddedBaseFrame:
- derive_psf_radius(self)
- This method derives the median stellar FWHM, which is used in quality
control.
- derive_timestamp(self)
- get_fluxscale(self)
- Use this method to calculate the gain.
S = counts * get_fluxscale()
- get_overlap_region(self, other)
- Return a dictionary of the overlapping region of two
RegriddedBaseFrames which have the same grid target (i.e. that are
regridded to the same grid).
Returns:
overlap = {self : [xmin1, xmax1, ymin1, ymax1],
other: [xmin2, xmax2, ymin2, ymax2]}
where the keys "self" and "other" in the dictionary are
RegriddedBaseFrame instances.
- make_psf_catalog(self)
- This catalog is required to determine a median stellar FWHM from,
which is used as a quality control measure.
- make_swarp_config(self)
- Set the fixed swarp parameters
- set_astrom_attribute(self)
- write_new_image_header(self, filename='')
Data descriptors inherited from astro.main.RegriddedFrame.RegriddedBaseFrame:
- PSF_DIFFERENCE_TOO_HIGH
Methods inherited from astro.main.BaseFrame.BaseFrame:
- build_header(self)
- Fill a default header with values from descriptors
- commit_subwinstat(self)
- Conditionally commit subwindow statistics
- display(self, viewer='skycat', filename=None)
- Independent display method for all frames.
- empty_header(self)
- Initalize to a default (empty) header
- estimate_statistics(self, pixmap=None, zone=None, max_iter=5, threshold=5.0)
- Estimate the mean, median and stddev, by iteratively excluding
pixelvalues deviating too far from the median
Arguments:
pixmap -- optional map for bad pixels (default=None)
zone -- optional region (x0, y0, x1, y1) (default=None)
max_iter -- The maximum number of iterations
sig_thresh -- The threshold in number of standard deviations
- initialize_astrom_attribute(self)
- initialize_chip_attribute(self)
- initialize_filter_attribute(self)
- initialize_imstat_attribute(self)
- initialize_instrument_attribute(self)
- initialize_lamp_attribute(self)
- initialize_observingblock_attribute(self)
- initialize_template_attribute(self)
- inspect(self, pixels=None, zone=None, kappa=3.0, iterations=2, cmap=None, vmin=None, vmax=None, interpolation='lanczos', width=6, ratio=None, viewer='skycat', force_figure=False, force_viewer=False, subplot_size=50, contour_levels=20, num_bins=100, extension=None, compare=False, level=0, other=None, clip=False, color=False)
- Optional visual inspection for quality control displays image in a
PyLab (MatPlotLib) window or optionally in an external viewer.
pixels: optional list or array representing the image to be
inspected (can be MxN for greyscale, or MxNx3 for RGB)
zone: tuple of (x0, y0, x1, y1) representing the image
coordinates of the two oposing corners of the sub
image to consider
kappa: the factor by which the dynamic range is increased in
units of sigma (0 gives full range)
iterations: number of iterations in the kappa-sigma range clipping
cmap: PyLab color map instance
vmin: lower display range in native units (e.g. ADU)
vmax: upper display range in native units (e.g. ADU)
interpolation: type of interpolation the PyLab viewer uses (nearest,
bilinear, etc.)
width: width of the PyLab figure window (in inches)
ratio: ratio by which to scale the figure height (default:
x_dim/y_dim)
viewer: external viewer to use in case the image is too large
force_figure: always use the PyLab figure window (Be Careful!
Statistics calculations on large images can be very
time and memory consuming.)
force_viewer: always use the viewer
subplot_size: width and height in pixels of region of interest
contour_levels: number of contour levels for the contour plot of the
region of interest
num_bins: number of bins in the histogram plot
extension: extension of the filetype to save plot to (png, ps,
or eps) None disables saving
compare: compare this frame to its previous version using
difference imaging (current-previous), pixels is
ignored
level: depth of query for previous version (0 goes as deep
as possible) when compare is True
other: a second of the same type of Frame object to replace
previous when compare is True (if color is True,
other can be a list of two images)
clip: kappa-sigma clip each image prior to subtraction when
compare is True
color: use color combining (RGB) instead of differencing
when compare is True (kappa, vmin/vmax only honored
when clip is True), this image is R, other is B if
single, other is [G, B] if it is a list
(EXPERIMENTAL)
When force_viewer is False, inspect() displays basic image
statistics (mean, stddev) and then a representation of the image
that can be zoomed and panned. Pressing various keys will give
different results described below in a region of interest described
by subplot_size:
q - closes the most recent plot window when pressed in the
main window
[space] - displays the X and Y coordinate (FITS standard unit
indexed) and the count level
a - performs aperture photometry on brightest feature in the
region of interest (NOT YET IMPLEMENTED)
c - displays a contour plot of the region of interest (see
contour_levels)
h - displays a histogram of the pixel values of the region of
interest (see num_bins)
r - displays a radial plot of the brightest feature in the
region of interest
s - displays a surface plot of the region of interest
p - displays profile plots in both X and Y dimensions versus
intensity (count level)
NOTE: None of the commands above work in the subplots.
- is_compressed(self)
- Find out if a FITS file is compressed
- load_header(self)
- Initialize self.header
- load_image(self, readonly=0)
- Initialize self.image.
- make_background(self)
- Make a background image,
Returns a new BaseFrame object. The name of the new file is
"name.back.fits"
- make_subwinstat(self)
- Compute statistics on subwindows
- save(self, filename='', overwrite=1)
- statistics(self, pixmap=None, zone=None)
- Compute statistics and store in self.imstat.
Arguments:
pixmap -- optional pixelmap object (default=None)
zone -- optional region (x0, y0, x1, y1) (default=None)
- update_header(self)
- Update a header with values from descriptors
- update_history(self)
- Update a header with history
History is maintained in the instance attribute
history. History is written by appending string to the history
list.
Methods inherited from common.database.DataObject.DataObject:
- FileName(self)
- Return the pathame of the object
- Name(self)
- Return the name of the object
- check_mandatory_dependencies(self)
- check if all the mandatory dependencies are set
- commit(self)
- derive_hash(self)
- Apply hashing function to the contents of the file that is part of
this object.
The SHA hashing function is used to calculate a hash value of the
contents of this DataObject. The hash value is returned as a
hexadecimal string.
- distinct(self, param_list)
- This method returns the distinct values from an input list. The
current implementation is kinda cheesy.
- exists(self)
- Test is the file existsts
- get_pathname(self)
- Getter for pathname
- is_on_dataserver(self)
- Checks if file is accessable on the dataserver.
NOTE: A return of False does NOT imply the file is not on any
dataserver! It is simply not on any accessable
dataserver.
- is_stored(self)
- locate(self)
- See common/net/dataserver_client.py (Data_IO.locate).
Returns a list of strings describing all dataservers where the file is
located as well as a few properties of the file, i.e.
['ip=...,port=...,path=...,size=...,mdate=...,
'ip=...,port=...,path=?,size=?,mdate=?']
Question marks indicate that this dataserver is not reachable.
- name_insert_suffix(self, suffix)
- name_replace_suffix(self, suffix)
- name_with_new_suffix(self, suffix)
- release(self)
- set_filename(self, pathname=None, processlevel='')
- Specify a filename for this DataObject or use the default filename.
This method is used to set the filename attribute of a DataObject.
If called without a filename, the filename is set to the canonical name.
Classes that are derived from DataObject are expected to define a
method get_canonical_name() that returns the name for an instance
of that class. This is mandatory for CalFiles (or files that are
store()d on the data server) and optional for other files.
- set_pathname(self, pathname)
- Setter for pathname
- set_process_parameters_from_dict(self, pars={})
- pars is a dictionary of the type e.g.:
{'BiasFrame.process_params.SIGMA_CLIP':8}
- set_stored(self)
- set_user_config(self, pars={})
- store_with_hash_as_name(self, prefix='', suffix='fits')
- Name the file after the hash value of the file and store it.
First the hash value of the file is calculated. The pathname of the
dataobject is renamed to the hash value with the given suffix appended.
Then the file is stored.
Class methods inherited from common.database.DataObject.DataObject:
- is_cal(cls) from common.database.DBMeta.DBObjectMeta
- Test for being cal, derived raw classes should set _IS_CAL to 1
- is_config(cls) from common.database.DBMeta.DBObjectMeta
- Test for being config, derived raw classes should set _IS_CONFIG to 1
- is_raw(cls) from common.database.DBMeta.DBObjectMeta
- Test for being raw, derived raw classes should set _IS_RAW to 1
- is_science(cls) from common.database.DBMeta.DBObjectMeta
- Test for being science, derived raw classes should set _IS_SCIENCE to 1
- is_seq(cls) from common.database.DBMeta.DBObjectMeta
- Test for being seq, derived raw classes should set _IS_SEQ to 1
- is_support(cls) from common.database.DBMeta.DBObjectMeta
- Test for being config, derived raw classes should set _IS_SUPPORT to 1
Data descriptors inherited from common.database.DataObject.DataObject:
- pathname
Data and other attributes inherited from common.database.DataObject.DataObject:
- filepath = './'
- localname = ''
- storage = <common.net.dataserver_client.Storage at 0x11ceef0>
Methods inherited from common.database.DBMain.DBObject:
- __reduce__(self)
- Method necessary to create picklable objects
This mehod return a tuple containg a function object used for
unpickling and a picklable state tuple, to be used as argument
to the unpickle function. If necessary this object is registered
in the pickle cache
- as_dict(self, seqnr=1, dependency_name='', dictionary={}, allow_lazy_typed_list=False)
- Method much like the info method, but returns a dictionary.
Dictionary looks like:
{'<classname>.<property1_name>.<property2_name>': value,
'<classname>.<property2_name>.<property3_name>': value}
Problem: infinite loops for cold/flat dependencies. It seems a maximum
recursion depth limits the problem.
- get_creator(self)
- Returns the name of the user who created this object.
- get_persistent(self)
- get_project(self)
- Returns the name of the project to which this object belongs.
- info(self, level=0, doc=False, _indent=0, _printclass=True)
- Print the values of all persistent properties of the object.
level : level of introspection
doc : display docstrings for attributes
_indent : internal parameter used for formatting
_printclass : internal parameter used for formatting
- inverse_objects(self, max_results=100)
- Iterate through and return all objects that use the current object
max_results The maximum number of objects returned per query
- inverse_query(self)
- go through all inverse properties to see if this object is used
- persists(self)
- Returns whether an object is already made persistent or transient.
- recommit(self)
- Commits changes to an object, without following links.
Class methods inherited from common.database.DBMain.DBObject:
- get_inverse_properties(cls, props=None) from common.database.DBMeta.DBObjectMeta
- return all inverse properties
that are all the properties that point to this class
Data descriptors inherited from common.database.DBMain.DBObject:
- __dict__
- dictionary for instance variables (if defined)
- __weakref__
- list of weak references to the object (if defined)
Data and other attributes inherited from common.database.DBMain.DBObject:
- __metaclass__ = <class 'common.database.DBMeta.DBObjectMeta'>
- This is the metaclass for persistent classes
Provides:
__new__ -- manages class construction
__call__ -- manages object instantiation
- database = <common.database.DBOracle.DBProxy instance at 0xe178c0>
- pickle_id = None
Methods inherited from astro.main.ProcessTarget.ProcessTarget:
- check_observing_blocks(self, childs)
- check if all childs have the same observing_block
- check_templates(self, childs)
- check if all childs have the same template
- compare(self)
- Quality Control -- basic trend analysis
The compare() method is used for default trend analysis. This
is done by comparing with a previous version of the same
object (last weeks bias, for example). This may be as simple
as comparing attribute values, but may also involve more
complex computations (e.g., subtracting the two images, and
analysing the residuals)
- get_dependencies(self)
- Return a list of names of attributes that are required for make()
- get_qcflags_set(self)
- Return a list of names of flags that have been set.
- get_qcflags_set_dict(self)
- Return a dictionary of flags that have been set. The key is the
name, the value is a tuple of (index, docstring).
- is_compared(self)
- Return true if the object has been compared
- is_inspected(self)
- Return true if the object has been inspected
- is_made(self)
- Return true if the object has been made
- is_ok(self)
- Return true if no quality control flags have been set.
- is_verified(self)
- Return true if the object has been verified
- set_compared(self)
- Set the process status to indicate that the object has been
compared.
- set_inspected(self)
- Set the process status to indicate that the object has been
inspected.
- set_made(self)
- Set the process tatus to indicate that the object has been made
- set_verified(self)
- Set the process status to indicate that the object has been
verified.
Class methods inherited from astro.main.ProcessTarget.ProcessTarget:
- get_qcflags(cls) from common.database.DBMeta.DBObjectMeta
- Return a list of attribute names of QCflag() objects.
- select_for_raw(cls, raw, overscan=None, check_quality=1, check_validity=1) from common.database.DBMeta.DBObjectMeta
- Class method to select the most recent valid calfile for the
provided raw frame from the database.
- select_for_reduced(cls, reduced, overscan=None, check_quality=1, check_validity=1) from common.database.DBMeta.DBObjectMeta
- Synonym for the select_for_raw method; the implementation should
be identical.
Data and other attributes inherited from astro.main.ProcessTarget.ProcessTarget:
- STATUS_COMPARE = 2
- STATUS_INSPECT = 3
- STATUS_MAKE = 0
- STATUS_VERIFY = 1
Class methods inherited from common.database.DBMeta.DBMixin:
- get_persistent_attributes(cls) from common.database.DBMeta.DBObjectMeta
- return a list of persistent attributes
Methods inherited from astro.main.OnTheFly.OnTheFly:
- Flagged(self)
- Check if any flag is set
return 1 for flag is set
return 0 no flag
- after_do_make(self, switches=None)
- extra make statements, this method can be overridden by OnTheFly classes to
implement extra make statements which will be executed after the make of self
- after_set_onthefly_dependencies(self, switches, advanced)
- this method is called after the onthefly method set_onthefly_dependencies
derived classes can implement this method to customize the dependencies
setting after this has been done automatically by onthefly
- after_uptodate_object(self, dependencies_missing, dependencies_new, dependencies_obsolete)
- The uptodate_object method determines if the object is uptodate, and will result in three listings :
dependencies_missing - missing mandatory dependencies
dependencies_new - new dependencies
dependencies_obsolete - current dependencies that are obsolete
Derived classes can override this method to tweak the listings
- check_for_mandatory(self, dep_str, dep_new)
- check if dependency is mandatory and present
dep_str is the name of the attribute, dep_new is the (attribute) object
- get_onthefly_dependencies(self, advanced=None)
- Method retrieves a list of all dependencies used for
on-the-fly processing
Return: [dependency, dependency class, dependency name]
- uptodate(self, date_time=None, template=None, switches=None, advanced=None)
- This method checks if the object is up-to-date, for the given datetime.
OnTheFly_uptodate class has the functionality for checking uptodate
Class methods inherited from astro.main.OnTheFly.OnTheFly:
- exist(cls, date_time=None, chip=None, filter=None, object_id=None, parent=None, parent_attr=None, template=None, extra=[], advanced=None, switches=None) from common.database.DBMeta.DBObjectMeta
- for the given parameters and class return the most
recent object(s), or None
- get_onthefly(cls, date_time=None, filter=None, chip=None, object_id=None, advanced=None, switches=None, template=None, parent=None, parent_attr=None) from common.database.DBMeta.DBObjectMeta
- For the given parameters and class get the object,
if the object does not exist -> make it.
This is done recursively for all dependencies.
The object can only be made if there are raws
Methods inherited from ModifiedFrame:
- copy_attributes_from_original(self, orig)
- subtract_model(self, model, orig)
- update_for_modification(self)
| |