28#include <boost/any.hpp>
31#include "AlexandriaKernel/memory_tools.h"
35#include "ElementsKernel/PathSearch.h"
128 manager.registerParameter(moffat_i0);
129 manager.registerParameter(moffat_index);
130 manager.registerParameter(minkowski_exponent);
131 manager.registerParameter(flat_top_offset);
133 manager.registerParameter(moffat_x_scale);
134 manager.registerParameter(moffat_y_scale);
135 manager.registerParameter(moffat_rotation);
142 auto moff = Euclid::make_unique<FlattenedMoffatComponent>(moffat_i0, moffat_index, minkowski_exponent, flat_top_offset);
212 std::fill(weight->getData().begin(), weight->getData().end(), 1);
232 if (saturation > 0 &&
source_stamp.getValue(
x,
y) >= saturation) {
233 weight->at(
x,
y) = 0;
234 }
else if (weight->at(
x,
y)>0) {
256 size_t iterations =
solution.iteration_no;
std::shared_ptr< EngineParameter > moffat_i0
std::shared_ptr< EngineParameter > dx
std::shared_ptr< EngineParameter > moffat_rotation
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > x
std::shared_ptr< EngineParameter > moffat_y_scale
std::shared_ptr< EngineParameter > moffat_x_scale
std::shared_ptr< EngineParameter > moffat_index
std::shared_ptr< EngineParameter > minkowski_exponent
std::shared_ptr< EngineParameter > flat_top_offset
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > y
std::shared_ptr< EngineParameter > dy
Data vs model comparator which computes a modified residual, using asinh.
Class responsible for managing the parameters the least square engine minimizes.
EngineParameter are those derived from the minimization process.
static std::shared_ptr< LeastSquareEngine > create(const std::string &name, unsigned max_iterations=1000)
Provides to the LeastSquareEngine the residual values.
CoordinateConverter implementation using the sigmoid function.
std::unique_ptr< T > make_unique(Args &&... args)
std::shared_ptr< DependentParameter< Parameters... > > createDependentParameter(typename DependentParameter< Parameters... >::ValueCalculator value_calculator, Parameters... parameters)
std::unique_ptr< DataVsModelResiduals< typename std::remove_reference< DataType >::type, typename std::remove_reference< ModelType >::type, typename std::remove_reference< WeightType >::type, typename std::remove_reference< Comparator >::type > > createDataVsModelResiduals(DataType &&data, ModelType &&model, WeightType &&weight, Comparator &&comparator)