LSSTApplications
17.0+11,17.0+34,17.0+56,17.0+57,17.0+59,17.0+7,17.0-1-g377950a+33,17.0.1-1-g114240f+2,17.0.1-1-g4d4fbc4+28,17.0.1-1-g55520dc+49,17.0.1-1-g5f4ed7e+52,17.0.1-1-g6dd7d69+17,17.0.1-1-g8de6c91+11,17.0.1-1-gb9095d2+7,17.0.1-1-ge9fec5e+5,17.0.1-1-gf4e0155+55,17.0.1-1-gfc65f5f+50,17.0.1-1-gfc6fb1f+20,17.0.1-10-g87f9f3f+1,17.0.1-11-ge9de802+16,17.0.1-16-ga14f7d5c+4,17.0.1-17-gc79d625+1,17.0.1-17-gdae4c4a+8,17.0.1-2-g26618f5+29,17.0.1-2-g54f2ebc+9,17.0.1-2-gf403422+1,17.0.1-20-g2ca2f74+6,17.0.1-23-gf3eadeb7+1,17.0.1-3-g7e86b59+39,17.0.1-3-gb5ca14a,17.0.1-3-gd08d533+40,17.0.1-30-g596af8797,17.0.1-4-g59d126d+4,17.0.1-4-gc69c472+5,17.0.1-6-g5afd9b9+4,17.0.1-7-g35889ee+1,17.0.1-7-gc7c8782+18,17.0.1-9-gc4bbfb2+3,w.2019.22
LSSTDataManagementBasePackage
|
2-dimensional polynomial function with cross terms More...
#include <FunctionLibrary.h>
Public Types | |
enum | { magicSentinel = 0xdeadbeef } |
typedef unsigned long | memId |
Type of the block's ID. More... | |
typedef memId(* | memNewCallback) (const memId cid) |
A function used to register a callback. More... | |
typedef memId(* | memCallback) (const Citizen *ptr) |
Public Member Functions | |
PolynomialFunction2 (unsigned int order) | |
Construct a polynomial function of specified order. More... | |
PolynomialFunction2 (std::vector< double > params) | |
Construct a polynomial function with specified parameters. More... | |
PolynomialFunction2 (PolynomialFunction2 const &)=default | |
PolynomialFunction2 (PolynomialFunction2 &&)=default | |
PolynomialFunction2 & | operator= (PolynomialFunction2 const &)=default |
PolynomialFunction2 & | operator= (PolynomialFunction2 &&)=default |
~PolynomialFunction2 () noexcept override=default | |
std::shared_ptr< Function2< ReturnT > > | clone () const override |
Return a pointer to a deep copy of this function. More... | |
ReturnT | operator() (double x, double y) const noexcept(IS_NOTHROW_INIT< ReturnT >) override |
std::vector< double > | getDFuncDParameters (double x, double y) const override |
Return the coefficients of the Function's parameters, evaluated at (x, y) I.e. More... | |
std::string | toString (std::string const &prefix) const override |
Return a string representation of the function. More... | |
bool | isPersistable () const noexcept override |
Return true if this particular object can be persisted using afw::table::io. More... | |
int | getOrder () const noexcept |
Get the polynomial order. More... | |
bool | isLinearCombination () const noexcept override |
Is the function a linear combination of its parameters? More... | |
unsigned int | getNParameters () const noexcept |
Return the number of function parameters. More... | |
virtual double | getParameter (unsigned int ind) const |
Get one function parameter without range checking. More... | |
std::vector< double > const & | getParameters () const noexcept |
Return all function parameters. More... | |
void | setParameter (unsigned int ind, double newValue) |
Set one function parameter without range checking. More... | |
void | setParameters (std::vector< double > const ¶ms) |
Set all function parameters. More... | |
std::string | repr () const |
Return a string representation of a Citizen. More... | |
void | markPersistent (void) |
Mark a Citizen as persistent and not destroyed until process end. More... | |
memId | getId () const |
Return the Citizen's ID. More... | |
void | writeFits (std::string const &fileName, std::string const &mode="w") const |
Write the object to a regular FITS file. More... | |
void | writeFits (fits::MemFileManager &manager, std::string const &mode="w") const |
Write the object to a FITS image in memory. More... | |
void | writeFits (fits::Fits &fitsfile) const |
Write the object to an already-open FITS object. More... | |
Static Public Member Functions | |
static int | nParametersFromOrder (int order) |
Compute number of parameters from polynomial order. More... | |
static int | orderFromNParameters (int nParameters) |
Compute polynomial order from the number of parameters. More... | |
static std::shared_ptr< Function2< ReturnT > > | readFits (fits::Fits &fitsfile) |
Read an object from an already open FITS object. More... | |
static std::shared_ptr< Function2< ReturnT > > | readFits (std::string const &fileName, int hdu=fits::DEFAULT_HDU) |
Read an object from a regular FITS file. More... | |
static std::shared_ptr< Function2< ReturnT > > | readFits (fits::MemFileManager &manager, int hdu=fits::DEFAULT_HDU) |
Read an object from a FITS file in memory. More... | |
static std::shared_ptr< Function< ReturnT > > | readFits (fits::Fits &fitsfile) |
Read an object from an already open FITS object. More... | |
static std::shared_ptr< Function< ReturnT > > | readFits (std::string const &fileName, int hdu=fits::DEFAULT_HDU) |
Read an object from a regular FITS file. More... | |
static std::shared_ptr< Function< ReturnT > > | readFits (fits::MemFileManager &manager, int hdu=fits::DEFAULT_HDU) |
Read an object from a FITS file in memory. More... | |
static std::shared_ptr< Function2< ReturnT > > | dynamicCast (std::shared_ptr< Persistable > const &ptr) |
Dynamically cast a shared_ptr. More... | |
static std::shared_ptr< Function< ReturnT > > | dynamicCast (std::shared_ptr< Persistable > const &ptr) |
Dynamically cast a shared_ptr. More... | |
static bool | hasBeenCorrupted () |
Check all allocated blocks for corruption. More... | |
static memId | getNextMemId () |
Return the memId of the next object to be allocated. More... | |
static int | init () |
Called once when the memory system is being initialised. More... | |
Census | |
Provide a list of current Citizens | |
static int | census (int, memId startingMemId=0) |
How many active Citizens are there? More... | |
static void | census (std::ostream &stream, memId startingMemId=0) |
Print a list of all active Citizens to stream, sorted by ID. More... | |
static const std::vector< const Citizen * > * | census () |
Return a (newly allocated) std::vector of active Citizens sorted by ID. More... | |
callbackIDs | |
Set callback Ids. The old Id is returned | |
static memId | setNewCallbackId (memId id) |
Call the NewCallback when block is allocated. More... | |
static memId | setDeleteCallbackId (memId id) |
Call the current DeleteCallback when block is deleted. More... | |
callbacks | |
Set the New/Delete callback functions; in each case the previously installed callback is returned. These callback functions return a value which is Added to the previously registered id. The default callback functions are called default{New,Delete}Callback; you may want to set a break point in these callbacks from your favourite debugger | |
static memNewCallback | setNewCallback (memNewCallback func) |
Set the NewCallback function. More... | |
static memCallback | setDeleteCallback (memCallback func) |
Set the DeleteCallback function. More... | |
static memCallback | setCorruptionCallback (memCallback func) |
Set the CorruptionCallback function. More... | |
Protected Types | |
typedef io::OutputArchiveHandle | OutputArchiveHandle |
Protected Member Functions | |
std::string | getPersistenceName () const override |
Return the unique name used to persist this object and look up its factory. More... | |
void | write (afw::table::io::OutputArchiveHandle &handle) const override |
Write the object to one or more catalogs. More... | |
PolynomialFunction2 () | |
std::string | getPythonModule () const override |
Return the fully-qualified Python module that should be imported to guarantee that its factory is registered. More... | |
Protected Attributes | |
int | _order |
order of polynomial More... | |
std::vector< double > | _params |
bool | _isCacheValid |
2-dimensional polynomial function with cross terms
f(x,y) = c0 (0th order)
Intermediate products for the most recent y are cached, so when computing for a set of x, y it is more efficient to change x before you change y.
Definition at line 449 of file FunctionLibrary.h.
|
inherited |
|
protectedinherited |
Definition at line 108 of file Persistable.h.
|
inlineexplicit |
Construct a polynomial function of specified order.
The polynomial will have (order + 1) * (order + 2) / 2 coefficients
The parameters are initialized to zero.
order | order of polynomial (0 for constant) |
Definition at line 458 of file FunctionLibrary.h.
|
inlineexplicit |
Construct a polynomial function with specified parameters.
The order of the polynomial is determined from the length of the params vector: order = (sqrt(1 + 8 * length) - 3) / 2 and if this is not an integer then the length is unsuitable
lsst::pex::exceptions::InvalidParameterError | if params length is unsuitable |
lsst::pex::exceptions::Exception | if an internal sanity check fails |
params | polynomial coefficients (const, x, y, x^2, xy, y^2...); length must be one of 1, 3, 6, 10, 15... |
Definition at line 471 of file FunctionLibrary.h.
|
default |
|
default |
|
overridedefaultnoexcept |
|
inlineexplicitprotected |
Definition at line 562 of file FunctionLibrary.h.
|
staticinherited |
How many active Citizens are there?
startingMemId | Don't print Citizens with lower IDs |
Definition at line 238 of file Citizen.cc.
|
staticinherited |
Print a list of all active Citizens to stream, sorted by ID.
stream | stream to print to |
startingMemId | Don't print Citizens with lower IDs |
Definition at line 259 of file Citizen.cc.
|
staticinherited |
Return a (newly allocated) std::vector of active Citizens sorted by ID.
You are responsible for deleting it; or you can say std::unique_ptr<std::vector<Citizen const*> const> leaks(Citizen::census()); and not bother (that becomes std::unique_ptr in C++11)
Definition at line 287 of file Citizen.cc.
|
inlineoverridevirtual |
Return a pointer to a deep copy of this function.
This function exists instead of a copy constructor so one can obtain a copy of an actual function instead of a useless copy of the base class.
Every non-virtual function must override this method.
Implements lsst::afw::math::Function2< ReturnT >.
Definition at line 482 of file FunctionLibrary.h.
|
staticinherited |
Dynamically cast a shared_ptr.
Dynamically cast a shared pointer and raise on failure.
You must provide an explicit template instantiation in the .cc file for each class that inherits from PersistableFacade. Designed to work around RTTI issues on macOS with hidden symbols;
lsst::pex::exceptions::LogicError | if the cast fails |
param[in] ptr The pointer to be cast.
lsst::pex::exceptions::TypeError | If the dynamic cast fails. |
Definition at line 18 of file Persistable.cc.
|
staticinherited |
Dynamically cast a shared_ptr.
Dynamically cast a shared pointer and raise on failure.
You must provide an explicit template instantiation in the .cc file for each class that inherits from PersistableFacade. Designed to work around RTTI issues on macOS with hidden symbols;
lsst::pex::exceptions::LogicError | if the cast fails |
param[in] ptr The pointer to be cast.
lsst::pex::exceptions::TypeError | If the dynamic cast fails. |
Definition at line 18 of file Persistable.cc.
|
overridevirtual |
Return the coefficients of the Function's parameters, evaluated at (x, y) I.e.
given c0, c1, c2, c3 ... return 1, x, y, x^2 ...
Reimplemented from lsst::afw::math::BasePolynomialFunction2< ReturnT >.
Definition at line 34 of file Function.cc.
|
inherited |
|
staticinherited |
Return the memId of the next object to be allocated.
Definition at line 209 of file Citizen.cc.
|
inlinenoexceptinherited |
Return the number of function parameters.
Definition at line 114 of file Function.h.
|
inlinenoexceptinherited |
Get the polynomial order.
Definition at line 362 of file Function.h.
|
inlinevirtualinherited |
Get one function parameter without range checking.
ind | index of parameter |
Definition at line 121 of file Function.h.
|
inlinenoexceptinherited |
Return all function parameters.
Definition at line 131 of file Function.h.
|
overrideprotectedvirtual |
Return the unique name used to persist this object and look up its factory.
Must be less than ArchiveIndexSchema::MAX_NAME_LENGTH characters.
Reimplemented from lsst::afw::table::io::Persistable.
Definition at line 212 of file FunctionLibrary.cc.
|
inlineoverrideprotectedvirtualinherited |
Return the fully-qualified Python module that should be imported to guarantee that its factory is registered.
Must be less than ArchiveIndexSchema::MAX_MODULE_LENGTH characters.
Will be ignored if empty.
Reimplemented from lsst::afw::table::io::Persistable.
Definition at line 190 of file Function.h.
|
staticinherited |
Check all allocated blocks for corruption.
Definition at line 316 of file Citizen.cc.
|
staticinherited |
Called once when the memory system is being initialised.
Definition at line 196 of file Citizen.cc.
|
inlineoverridevirtualnoexceptinherited |
Is the function a linear combination of its parameters?
Reimplemented from lsst::afw::math::Function< ReturnT >.
Definition at line 364 of file Function.h.
|
inlineoverridevirtualnoexcept |
Return true if this particular object can be persisted using afw::table::io.
Reimplemented from lsst::afw::table::io::Persistable.
Definition at line 549 of file FunctionLibrary.h.
|
inherited |
Mark a Citizen as persistent and not destroyed until process end.
Definition at line 225 of file Citizen.cc.
|
inlinestaticinherited |
Compute number of parameters from polynomial order.
lsst::pex::exceptions::InvalidParameterError | if order < 0 |
Definition at line 371 of file Function.h.
|
inlineoverridevirtualnoexcept |
Implements lsst::afw::math::Function2< ReturnT >.
Definition at line 486 of file FunctionLibrary.h.
|
default |
|
default |
|
inlinestaticinherited |
Compute polynomial order from the number of parameters.
Only certain values of nParameters are acceptable, including: nParameters order 1 0 3 1 6 2 10 3 15 4 ...
lsst::pex::exceptions::InvalidParameterError | if nParameters is invalid |
Definition at line 394 of file Function.h.
|
inlinestaticinherited |
Read an object from an already open FITS object.
[in] | fitsfile | FITS object to read from, already positioned at the desired HDU. |
Definition at line 183 of file Persistable.h.
|
inlinestaticinherited |
Read an object from an already open FITS object.
[in] | fitsfile | FITS object to read from, already positioned at the desired HDU. |
Definition at line 183 of file Persistable.h.
|
inlinestaticinherited |
Read an object from a regular FITS file.
[in] | fileName | Name of the file to read. |
[in] | hdu | HDU to read, where 0 is the primary. The special value of afw::fits::DEFAULT_HDU skips the primary HDU if it is empty. |
Definition at line 194 of file Persistable.h.
|
inlinestaticinherited |
Read an object from a regular FITS file.
[in] | fileName | Name of the file to read. |
[in] | hdu | HDU to read, where 0 is the primary. The special value of afw::fits::DEFAULT_HDU skips the primary HDU if it is empty. |
Definition at line 194 of file Persistable.h.
|
inlinestaticinherited |
Read an object from a FITS file in memory.
[in] | manager | Manager for the memory to read from. |
[in] | hdu | HDU to read, where 0 is the primary. The special value of afw::fits::DEFAULT_HDU skips the primary HDU if it is empty. |
Definition at line 205 of file Persistable.h.
|
inlinestaticinherited |
Read an object from a FITS file in memory.
[in] | manager | Manager for the memory to read from. |
[in] | hdu | HDU to read, where 0 is the primary. The special value of afw::fits::DEFAULT_HDU skips the primary HDU if it is empty. |
Definition at line 205 of file Persistable.h.
|
inherited |
Return a string representation of a Citizen.
Definition at line 219 of file Citizen.cc.
|
staticinherited |
Set the CorruptionCallback function.
func | function be called when block is found to be corrupted |
Definition at line 391 of file Citizen.cc.
|
staticinherited |
Set the DeleteCallback function.
func | function be called when desired block is deleted |
Definition at line 381 of file Citizen.cc.
|
staticinherited |
Call the current DeleteCallback when block is deleted.
id | Desired ID |
Definition at line 347 of file Citizen.cc.
|
staticinherited |
Set the NewCallback function.
func | The new function to be called when a designated block is allocated |
Definition at line 371 of file Citizen.cc.
|
staticinherited |
Call the NewCallback when block is allocated.
id | Desired ID |
Definition at line 337 of file Citizen.cc.
|
inlineinherited |
Set one function parameter without range checking.
ind | index of parameter |
newValue | new value for parameter |
Definition at line 145 of file Function.h.
|
inlineinherited |
Set all function parameters.
lsst::pex::exceptions::InvalidParameterError | if the wrong number of parameters is supplied. |
params | vector of function parameters |
Definition at line 158 of file Function.h.
|
inlineoverridevirtual |
Return a string representation of the function.
Reimplemented from lsst::afw::math::Function2< ReturnT >.
Definition at line 542 of file FunctionLibrary.h.
|
overrideprotectedvirtual |
Write the object to one or more catalogs.
The handle object passed to this function provides an interface for adding new catalogs and adding nested objects to the same archive (while checking for duplicates). See OutputArchiveHandle for more information.
Reimplemented from lsst::afw::table::io::Persistable.
Definition at line 244 of file FunctionLibrary.cc.
|
inherited |
Write the object to a regular FITS file.
[in] | fileName | Name of the file to write to. |
[in] | mode | If "w", any existing file with the given name will be overwritten. If "a", new HDUs will be appended to an existing file. |
Definition at line 24 of file Persistable.cc.
|
inherited |
Write the object to a FITS image in memory.
[in] | manager | Name of the file to write to. |
[in] | mode | If "w", any existing file with the given name will be overwritten. If "a", new HDUs will be appended to an existing file. |
Definition at line 29 of file Persistable.cc.
|
inherited |
Write the object to an already-open FITS object.
[in] | fitsfile | Open FITS object to write to. |
Definition at line 18 of file Persistable.cc.
|
mutableprotectedinherited |
Definition at line 188 of file Function.h.
|
protectedinherited |
order of polynomial
Definition at line 433 of file Function.h.
|
protectedinherited |
Definition at line 187 of file Function.h.