Search Parameters#
Search parameters are set extensively via the SearchConfiguration
object. We use a custom object, instead of a standard dictionary, to both add helper functions, such as I/O and validity checking, and also to set defaults. All of the standard parameters are given default values (shown in the Table below) unless explicitly set.
Creating a SearchConfiguration#
There are several methods for setting these parameters.
First, parameters can be set one-by-one from a default SearchConfiguration
object using the set()
method:
config = SearchConfiguration()
config.set("cluster_eps", 10.0)
Second, you can provide a YAML file of the parameters using the config_file
parameter:
config = SearchConfiguration.from_file(file_path)
Third, you can pass in a dictionary mapping parameter name to parameter value:
config = SearchConfiguration.from_dict(param_dict)
The dictionary values take precedence over all other settings, allowing you to use KBMOD as part of an internal loop over parameters.
In addition SearchConfiguration
objects are automatically saved and loaded within a WorkUnit
.
Configuration Parameters#
Parameter |
Default Value |
Interpretation |
|
500000 |
The batch size to use when processing the results of the on-GPU search. |
|
False |
An option used with sigmaG filtering, remove all negative values prior to computing the percentiles. |
|
20.0 |
The threshold to use for clustering similar results. |
|
all |
Types of predicted values to use when
determining trajectories to clustered
together, including position and
velocities (if do_clustering = True).
Options include: |
|
1.0 |
The weight of differences in velocity relative to differences in distances during clustering. |
|
[] |
A list of additional coadds to create.
These are not used in filtering, but
saved to columns for analysis. Can
include: “sum”, “mean”, “median”, and
“weighted”.
The filtering coadd is controlled by
the |
|
False |
Display debugging output. |
|
True |
Cluster the resulting trajectories to remove duplicates and known objects. See Clustering for more. |
|
True |
Apply the mask to the raw pixels. |
|
-1 |
The number of bytes to use to encode
|
|
False |
Perform the filtering on the GPU. Only
|
|
None |
The configuration dictionary for the trajectory generator that will create the search candidates. |
|
10.0 |
The minimum computed likelihood for an object to be accepted. |
|
1000.0 |
A maximum likelihood threshold to apply to detected objects. Objects with a computed likelihood above this threshold are rejected. |
|
10 |
The minimum number of non-masked observations for the object to be accepted. |
|
1.4 |
The value for the standard deviation of the point spread function (PSF) in pixels |
|
None |
Full filename and path for a single tabular result saves as ecsv. |
|
8 |
The maximum number of results to to return for each pixel search. |
|
True |
Save the individual stamps for each result and timestep. |
|
[25, 75] |
The percentiles to use in sigmaG
filtering, if
|
|
10 |
Half the size of a side of a box cut around the predicted position when creating a stamp for stamp filtering (in pixels). |
|
sum |
The type of coadd to use as the main
stamp:
* |
|
False |
A Boolean indicating whether to track the filtered trajectories. Warning can use a lot of memory. |
|
None |
A length two list giving the starting and ending x pixels to use for the search. None uses the image bounds. |
|
None |
An integer length of pixels outside
the image bounds to use for starting
coordinates. If |
|
None |
A length two list giving the starting and ending y pixels to use for the search. None uses the image bounds. |
|
None |
An integer length of pixels outside
the image bounds to use for starting
coordinates. If |