CubeStats_AT — Calculates cube statistics.

This module defines the CubeStats_AT class.

class admit.at.CubeStats_AT.CubeStats_AT(**keyval)[source]

Compute image-plane based statistics for a cube.

CubeStats_AT will compute per-channel statistics, as well as a global statistics per cube. It computes minimum and maximum values, as well as an attempt to get a signal-free (“robust”) estimate of the noise, with some control how robust statistics this is done.

Plane based statistics records the channel number, frequency (in GHz), mean, sigma, min and max. If PeakPointPlot (ppp, see below) is selected, it also stores the minpos and maxpos (in pixels). See also CASA::imstat for more details on the meaning of these columns.

See also CubeStats_AT for the design document.

Keywords
robust: list

A compound list keyword describing how robust statistics is used. By default all data are used, with CASA’s “medabsdevmed” (MAD) statistic as the robust noise estimator. For normal (gaussian) noise, RMS = 1.4826 * MAD.

For more flexible noise statistics see CASA::imstat for a detailed background, but the current valid algorithms and their optional additional arguments are:

‘classic’,clmethod{‘auto’,’tiled’,’framework’}

‘chauvenet’,zscore[-1],maxiter[-1]

‘fit-half’,center{‘mean’,’median’,’zero’},lside{True,False}

‘hinges-fences’,fence[-1]

Examples:

robust=[‘classic’,’auto’]

robust=[‘fit-half’,’zero’]

robust=[‘hin’,1.5]

ppp: boolean
Add columns to create a PeakPointPlot. Currently this is somewhat expensive. Default: False.
maxvmrs: float
Clip the RMS if it varies by more than this number. This is to avoid creating artificial lines when large variations occur due to for example missing short spacings. Use -1 to skip this clipping. Default: 2.0
psample
: integer
The spatial sample rate used to examine every peak. This is an expensive option and is only used for peakstats.

Input BDPs

Image_BDP: count: 1
Spectral cube (or map) for which statistics is computed.

Output BDPs

CubeStats_BDP: count: 1
The CubeStats_BDP table containing various columns with statistics. Each row represents a slice (channel) from the image. Extension: cst.
Parameters:keyval : dictionary, optional

Attributes

_version (string)

Methods

addinput(item[, slot]) Add a BDP input to an AT.
addinputbdp(item[, slot, insert]) Add a BDP to the _bdp_in list.
addoutput(item[, slot]) Add a BDP output product to an AT.
addoutputbdp(item[, slot, insert]) Add a BDP to the _bdp_out list.
baseDir([path]) Get/set project base directory.
bestMatch(at1, at2) Determines the better match of two tasks to the current one.
checkfiles() Check if the files from all the BDP_out’s in an AT exist.
checktype(item) Check the type of an object to see if it is a BDP.
clearinput() Clear the input BDP list.
clearoutput([delete]) Clear the output BDP list.
copy() Creates an independent duplicate of the task.
delete() Method to delete the AT and underlying BDPs.
delinput(slot) Delete a specific BDP in the _bdp_in list.
deloutput(slot) Delete a specific BDP in the _bdp_out list.
dir([filename]) Absolute directory reference of the ADMIT project.
dryrun() Method to do a dry run of the AT, generally just checks input values for errors.
enabled([state]) Returns current task enabled setting, with optional reset.
execute([args]) Executes the task.
freeAlias(aliases[, alias]) Deletes alias reservation, if present.
get(attrib) Method to get the given attributes value
getProject() Retrieves project ID associated with the task.
getVersion() Return the version string.
getdtd(fl) Method to write out the dtd data.
geteffectivelevel() Method to get the effective logging level of the logging subsystem
getkey(key) Retrieval value for a key.
getloggername() Method to get the name of the logger for this AT instance
getlogginglevel() Method to get the current logging level of the AT
haskey(key) Query if a key exists for an AT.
html(inheader) Method to represent the current AT in HTML format.
id([strip]) Returns task ID number.
isAutoAlias([withEmpty, compat]) Whether the task alias appears to be auto-generated.
isequal(at) Method to determine if two ATs are the same.
isstale() Returns whether the AT is out of date.
len2() Returns the length of _bdp_in and _bdp_out in a tuple.
link() Increments the task link count.
markChanged() Mark an AT that it’s state was changed, so it would need to be rerun.
markUpToDate() Resets _stale to indicate that the AT does not need to be run.
merge(at[, aliases]) Merges attributes from another task.
mkdir(dirname) Make a directory in the ADMIT hierarchy.
mkext(filename, ext[, alias]) Return a new filename with a new extension with optional ADMIT alias.
newId(tid) Assigns the task a new ID number.
reset(a) Performs an in-place shallow copy.
run() Runs the task.
running([state]) Returns current task execution flag, with optional reset.
save() Save (write) any BDPs connected to this AT.
set(item, val) Method to set protected attributes, rather than direct access
setAlias(aliases[, alias, auto]) Sets and registers the task alias, guaranteed unique among registered aliases.
setProject(pid) Adds a project ID to task ID.
set_bdp_in([bdpin]) Validate the _valid_bdp_in list and digest it into the appropriate attributes.
set_bdp_out([bout]) Validate the _valid_bdp_out list and digest it into the appropriate attributes.
seteffectivelevel(level) Method to set the effective logging level of the logging subsystem
setkey([name, value, isinit]) Set keyword value.
setloggername(name) Method to set the name of the logger for this AT instance
setlogginglevel(level) Method to set the logging level
show() Return the AT type.
statusicons() return some html icons representing the enabled/stale status of this task
summary() Returns the summary dictionary from the AT, for merging into the ADMIT Summary object.
unlink() Decrements the task link count.
userdata() Returns the user dictionary from the AT, for merging into the ADMIT userdata object.
validateinput([describe]) Method to validate the _bdp_in’s against a dictionary of expected types.
validatekeys() Method to error check all input keys.
write(node) Method to write the AT to disk.
run()[source]

Runs the task.

Parameters:None
Returns:None
summary()[source]

Returns the summary dictionary from the AT, for merging into the ADMIT Summary object.

CubeStats_AT adds the following to ADMIT summary:

Key type Description
datamean float mean data value float
dynrange float dynamic range, equal to datamax/chanrms
chanrms float one-sigma noise in cube
rmsmethd list method and parameters used to compute RMS
spectra list the spectral plot of signal, noise, and S/N
Parameters:

None

Returns:

dict

Dictionary of SummaryEntry

admit.at.CubeStats_AT.peakstats(image, freq, sigma, nsigma, minchan, maxgap, psample, peakfit=False)[source]

Go through a cube and find peaks in the spectral dimension

It will gather a table of <peak>,<freq>,<sigma> which can be optionally used for plotting