Public Member Functions |
virtual bool | init (std::list< ImagesDataExtended * > &images, std::list< ImagesDataExtended * > &massScaleImages)=0 |
| Initialize this object.
|
virtual void | postInit (const std::list< ImagesDataExtended * > &images, const std::list< ImagesDataExtended * > &massScaleImages, double angularScale) |
| This function is called after the LensFitnessObject::init function, before finishing the initialization of the genetic algorithm.
|
virtual float | calculateMassScaleFitness (const ProjectedImagesInterface &interface0) const =0 |
| Given the situation described by the ProjectedImagesInterface instance, this function must calculate a single fitness value (lower is better) which will be used to find an appropriate scale of the basis functions in the GA.
|
virtual void | calculateOverallFitness (const ProjectedImagesInterface &interface0, float *pFitnessValues) const =0 |
| This function should inspect the situation described by the ProjectedImagesInterface instance, and calculate all corresponding fitness values.
|
virtual int | getNumberOfFitnessComponents () const =0 |
| The number of fitness components your lens fitness object will calculate (is 1 for a single-objective GA, 2 or more for a multi-objective GA).
|
virtual int | getImagesGroupSize () const =0 |
| The length of the images data list in the LensFitnessObject::init function must be a multiple of this number.
|
|
The following functions provide information to the BackProjectMatrixNew instances in the genetic algorithm about what information should be calculated and stored.
|
virtual void | getTotalCalcFlags (std::vector< bool > &deflectionFlags, std::vector< bool > &derivativeFlags, std::vector< bool > &potentialFlags) const =0 |
| The LensFitnessObject instance should create these arrays of flags to indicate what properties should be calculated for which source in the original (possibly modified) images data list.
|
virtual void | getTotalStoreFlags (bool *pStoreIntens, bool *pStoreTimeDelay, bool *pStoreShearInfo) const =0 |
| These flags indicate what information from the input images data should be stored in the ProjectedImagesInterface instance (you can save some memory this way, but if this isn't an issue just set everything to true , it doensn't have any other effect on the performance)
|
virtual void | getShortCalcFlags (std::vector< bool > &deflectionFlags, std::vector< bool > &derivativeFlags, std::vector< bool > &potentialFlags) const =0 |
| Same as the LensFitnessObject::getTotalCalcFlags, but this is about the massScaleImages list from the LensFitnessObject::init function.
|
virtual void | getShortStoreFlags (bool *pStoreIntens, bool *pStoreTimeDelay, bool *pStoreShearInfo) const =0 |
| Same as the LensFitnessObject::getTotalStoreFlags, but this is about the massScaleImages list from the LensFitnessObject::init function.
|
|
The following functions provide information to the BackProjectMatrixNew instances in the genetic algorithm about what information should be calculated based on the deflection angle derivatives.
You'll need to enable calculation of the derivatives of the deflection angles for a source to be able to calculate these properties.
|
virtual bool | totalNeedInverseMagnifications () const =0 |
| Should only return false if none of the sources need the inverse magnifications calculated.
|
virtual bool | totalNeedShearComponents () const =0 |
| Should only return false if none of the sources need the shear components (gamma1 and gamma2) to be calculated.
|
virtual bool | totalNeedConvergence () const =0 |
| Should only return false if none of the sources need the convergence to be calculated.
|
virtual const std::vector< bool > * | getTotalInverseMagnificationFlags () const =0 |
| If LensFitnessObject::totalNeedInverseMagnifications returns true, this function will be called and should return a list (of equal length as images from the LensFitnessObject::init function) indicating for which sources the inverse magnification calculation should be done.
|
virtual const std::vector< bool > * | getTotalShearComponentFlags () const =0 |
| If LensFitnessObject::totalNeedShearComponents returns true, this function will be called and should return a list (of equal length as images from the LensFitnessObject::init function) indicating for which sources the shear components calculation should be done.
|
virtual const std::vector< bool > * | getTotalConvergenceFlags () const =0 |
| If LensFitnessObject::totalNeedConvergence returns true, this function will be called and should return a list (of equal length as images from the LensFitnessObject::init function) indicating for which sources the convergence calculation should be done.
|
virtual bool | shortNeedInverseMagnifications () const =0 |
| Same as LensFitnessObject::totalNeedInverseMagnifications, but for the images data used in the mass scale fitness calculation (the massScaleImages from the LensFitnessObject::init function).
|
virtual bool | shortNeedShearComponents () const =0 |
| Same as LensFitnessObject::totalNeedShearComponents, but for the images data used in the mass scale fitness calculation (the massScaleImages from the LensFitnessObject::init function).
|
virtual bool | shortNeedConvergence () const =0 |
| Same as LensFitnessObject::totalNeedConvergence, but for the images data used in the mass scale fitness calculation (the massScaleImages from the LensFitnessObject::init function).
|
virtual const std::vector< bool > * | getShortInverseMagnificationFlags () const =0 |
| Same as LensFitnessObject::getTotalInverseMagnificationFlags, but for the images data used in the mass scale fitness calculation (the massScaleImages from the LensFitnessObject::init function).
|
virtual const std::vector< bool > * | getShortShearComponentFlags () const =0 |
| Same as LensFitnessObject::getTotalShearComponentFlags, but for the images data used in the mass scale fitness calculation (the massScaleImages from the LensFitnessObject::init function).
|
virtual const std::vector< bool > * | getShortConvergenceFlags () const =0 |
| Same as LensFitnessObject::getTotalConvergenceFlags, but for the images data used in the mass scale fitness calculation (the massScaleImages from the LensFitnessObject::init function).
|