Skip to content

Commit

Permalink
Rename Param to ParameterD
Browse files Browse the repository at this point in the history
  • Loading branch information
taranu committed May 1, 2024
1 parent 4b4754c commit ce5df2e
Showing 1 changed file with 29 additions and 29 deletions.
58 changes: 29 additions & 29 deletions include/parameters.h
Original file line number Diff line number Diff line change
Expand Up @@ -41,124 +41,124 @@ struct SizeYParameter : public SizeParameter {
};

template <typename T>
using Param = parameters::Parameter<double, T>;
using ParameterD = parameters::Parameter<double, T>;

struct CentroidXParameter : public Param<CentroidXParameter> {
struct CentroidXParameter : public ParameterD<CentroidXParameter> {
static inline const std::string _desc = "Centroid (x)";
static inline const std::string _name = "cen_x";
using Param<CentroidXParameter>::Parameter;
using ParameterD<CentroidXParameter>::Parameter;
};

struct CentroidYParameter : public Param<CentroidYParameter> {
struct CentroidYParameter : public ParameterD<CentroidYParameter> {
static inline const std::string _desc = "Centroid (y)";
static inline const std::string _name = "cen_y";
using Param<CentroidYParameter>::Parameter;
using ParameterD<CentroidYParameter>::Parameter;
};

struct IntegralParameter : public Param<IntegralParameter> {
struct IntegralParameter : public ParameterD<IntegralParameter> {
public:
static inline const bool _linear = true;
static inline constexpr double _min = 0.;
static inline const std::string _desc = "Gaussian integral (total integrated weight/flux)";
static inline const std::string _name = "integral";
using Param<IntegralParameter>::Parameter;
using ParameterD<IntegralParameter>::Parameter;
};

struct MeanParameter : public Param<MeanParameter> {
struct MeanParameter : public ParameterD<MeanParameter> {
static inline const std::string _desc = "Gaussian (1D normal) mean";
static inline const std::string _name = "mean";
using Param<MeanParameter>::Parameter;
using ParameterD<MeanParameter>::Parameter;
};

struct MoffatConcentrationParameter : public Param<MoffatConcentrationParameter> {
struct MoffatConcentrationParameter : public ParameterD<MoffatConcentrationParameter> {
static inline constexpr double _min = 1.;
static inline constexpr double _default = 2.5;
static inline const std::string _desc = "Moffat concentration (beta)";
static inline const std::string _name = "con_moffat";
using Param<MoffatConcentrationParameter>::Parameter;
using ParameterD<MoffatConcentrationParameter>::Parameter;
};

struct ProperFractionParameter : public Param<ProperFractionParameter> {
struct ProperFractionParameter : public ParameterD<ProperFractionParameter> {
public:
static inline constexpr double _min = 0.;
static inline constexpr double _max = 1.;
static inline const std::string _desc = "Proper fraction (0 <= x <= 1)";
static inline const std::string _name = "proper_fraction";
using Param<ProperFractionParameter>::Parameter;
using ParameterD<ProperFractionParameter>::Parameter;
};

/// A generic scale radius, for profiles without specific names like "effective radius"
struct RadiusScaleParameter : public Param<RadiusScaleParameter> {
struct RadiusScaleParameter : public ParameterD<RadiusScaleParameter> {
static inline constexpr double _min = 0.;
static inline constexpr double _default = 1.;
static inline const std::string _desc = "Scale radius";
static inline const std::string _name = "r_scale";
using Param<RadiusScaleParameter>::Parameter;
using ParameterD<RadiusScaleParameter>::Parameter;
};

struct ReffXParameter : public Param<ReffXParameter>, SizeXParameter {
struct ReffXParameter : public ParameterD<ReffXParameter>, SizeXParameter {
double get_size() const override { return this->get_value(); }
void set_size(double size) override { this->set_value(size); }

static inline constexpr double _min = 0.;
static inline const std::string _desc = "Sersic effective radius (x)";
static inline const std::string _name = "reff_x";
using Param<ReffXParameter>::Parameter;
using ParameterD<ReffXParameter>::Parameter;
};

struct ReffYParameter : public Param<ReffYParameter>, SizeYParameter {
struct ReffYParameter : public ParameterD<ReffYParameter>, SizeYParameter {
double get_size() const override { return this->get_value(); }
void set_size(double size) override { this->set_value(size); }

static inline constexpr double _min = 0.;
static inline const std::string _desc = "Sersic effective radius (y)";
static inline const std::string _name = "reff_y";
using Param<ReffYParameter>::Parameter;
using ParameterD<ReffYParameter>::Parameter;
};

struct RhoParameter : public Param<RhoParameter> {
struct RhoParameter : public ParameterD<RhoParameter> {
static inline constexpr double _min = -1.;
static inline constexpr double _default = 0.;
static inline constexpr double _max = 1.;
static inline const std::string _desc = "Gaussian correlation (rho)";
static inline const std::string _name = "rho";
using Param<RhoParameter>::Parameter;
using ParameterD<RhoParameter>::Parameter;
};

struct SersicIndexParameter : public Param<SersicIndexParameter> {
struct SersicIndexParameter : public ParameterD<SersicIndexParameter> {
static inline constexpr double _min = 0.;
static inline constexpr double _default = 0.5;
static inline const std::string _desc = "Sersic index";
static inline const std::string _name = "n_ser";
using Param<SersicIndexParameter>::Parameter;
using ParameterD<SersicIndexParameter>::Parameter;
};

struct SigmaXParameter : public Param<SigmaXParameter>, SizeXParameter {
struct SigmaXParameter : public ParameterD<SigmaXParameter>, SizeXParameter {
double get_size() const override { return this->get_value(); }
void set_size(double size) override { this->set_value(size); }

static inline constexpr double _min = 0.;
static inline const std::string _desc = "Gaussian sigma (x)";
static inline const std::string _name = "sigma_x";
using Param<SigmaXParameter>::Parameter;
using ParameterD<SigmaXParameter>::Parameter;
};

struct SigmaYParameter : public Param<SigmaYParameter>, SizeYParameter {
struct SigmaYParameter : public ParameterD<SigmaYParameter>, SizeYParameter {
double get_size() const override { return this->get_value(); }
void set_size(double size) override { this->set_value(size); }

static inline constexpr double _min = 0.;
static inline const std::string _desc = "Gaussian sigma (y)";
static inline const std::string _name = "sigma_y";
using Param<SigmaYParameter>::Parameter;
using ParameterD<SigmaYParameter>::Parameter;
};

struct StdDevParameter : public Param<StdDevParameter> {
struct StdDevParameter : public ParameterD<StdDevParameter> {
static inline constexpr double _min = 0.;
static inline constexpr double _default = 1.0;
static inline const std::string _desc = "Gaussian (1D normal) standard deviation (sigma)";
static inline const std::string _name = "stddev";
using Param<StdDevParameter>::Parameter;
using ParameterD<StdDevParameter>::Parameter;
};

} // namespace gauss2d::fit
Expand Down

0 comments on commit ce5df2e

Please sign in to comment.