seeding#

Seeding algorithms for tricky likelihood optimizations.

Time-dependent analyses with fitted flare profiles are notoriously challenging minimizer problems. This module provides UTFSeeder, which basically works and is recommended in the tutorial notebooks. It also provides some other classes that you should ignore.

Classes:

UTFSeeder([threshold, gammas, test_gammas, ...])

Seeder for box-profile untriggered flare search.

GaussianUTFSeeder([n_flare, ...])

Seeder for Gaussian-profile untriggered flare search.

BoxUTFSeeder([n_test, threshold, gammas, ...])

Seeder for box-profile untriggered flare search.

class csky.seeding.UTFSeeder(threshold=1000, gammas=array([0]), test_gammas=array([1, 2, 3, 4]), n_test=array([1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 35, 40]), perc_best=1, reseed=True, refit=None, debug=False, ana_keys=None)[source]#

Seeder for box-profile untriggered flare search.

This class provides some heuristics for choosing reasonable seeds for Gaussian or box-profile untriggered flare searches. It’s absolutely disgusting, but it does appear to basically work - even for multi-dataset analysis. “Inspired” by some code in psLab.

Methods:

__init__([threshold, gammas, test_gammas, ...])

__call__(ML, bounds, fixed_params[, _masks])

Call self as a function.

__init__(threshold=1000, gammas=array([0]), test_gammas=array([1, 2, 3, 4]), n_test=array([1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 35, 40]), perc_best=1, reseed=True, refit=None, debug=False, ana_keys=None)[source]#
__call__(ML, bounds, fixed_params, _masks=None)[source]#

Call self as a function.

class csky.seeding.GaussianUTFSeeder(n_flare=array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 25, 50]), remove_duplicates=True, threshold=0.5)[source]#

Seeder for Gaussian-profile untriggered flare search.

NOTE: you probably want UTFSeeder.

Methods:

__init__([n_flare, remove_duplicates, threshold])

__call__(ML, bounds, fixed_params)

Call self as a function.

__init__(n_flare=array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 25, 50]), remove_duplicates=True, threshold=0.5)[source]#
__call__(ML, bounds, fixed_params)[source]#

Call self as a function.

class csky.seeding.BoxUTFSeeder(n_test=100, threshold=1, gammas=array([1., 1.5, 2., 2.5, 3., 3.5, 4.]), weight_boundary_only=True, re_fit=False, debug=False)[source]#

Seeder for box-profile untriggered flare search.

NOTE: you probably want UTFSeeder.

Methods:

__init__([n_test, threshold, gammas, ...])

__call__(ML, bounds, fixed_params)

Call self as a function.

__init__(n_test=100, threshold=1, gammas=array([1., 1.5, 2., 2.5, 3., 3.5, 4.]), weight_boundary_only=True, re_fit=False, debug=False)[source]#
__call__(ML, bounds, fixed_params)[source]#

Call self as a function.