Models a set of transformations and source polarizations. More...

#include <ReceptionModel.h>

Inheritance diagram for Calibration::ReceptionModel:
Calibration::MeasurementEquation MEAL::Complex2 Evaluable< Jones< double > > MEAL::Function Reference::Able Reference::HeapTracked

Classes

class  Report
 Solve the measurement equation by non-linear least squares minimization. More...
 
class  Solver
 Solve the measurement equation by non-linear least squares minimization. More...
 

Public Member Functions

 ReceptionModel ()
 null constructor
 
 ~ReceptionModel ()
 destructor
 
virtual void add_data (CoherencyMeasurementSet &data)
 Checks that each CoherencyMeasurement has a valid source_index. More...
 
unsigned get_ndata () const
 Get the number of CoherencyMeasurementSet.
 
const CoherencyMeasurementSetget_data (unsigned idata) const
 Get the specified CoherencyMeasurementSet.
 
void delete_data ()
 Delete all data.
 
void add_prefit_report (Report *)
 Add a report to be executed before solving the measurement equation.
 
void add_postfit_report (Report *)
 Add a report to be executed after solving the measurement equation.
 
void set_solver (Solver *)
 Set the algorithm used to solve the measurement equation.
 
Solverget_solver ()
 Get the algorithm used to solve the measurement equation.
 
const Solverget_solver () const
 
void solve ()
 Solve the measurement equation using the current algorithm.
 
bool get_solved () const
 Return true when solved.
 
void copy_fit (const ReceptionModel *)
 Copy the fitted parameters from another model.
 
std::string get_name () const
 Return the name of the class.
 
- Public Member Functions inherited from Calibration::MeasurementEquation
 MeasurementEquation ()
 Default constructor.
 
 ~MeasurementEquation ()
 Destructor.
 
virtual void set_input (Complex2 *state)
 Set the input, $ \rho_j $, where $ j $ = get_input_index. More...
 
virtual void add_input (Complex2 *state=0)
 Add an input, $ \rho_N $, where $ N $ = get_num_input. More...
 
Complex2 * get_input ()
 Get the current input.
 
unsigned get_num_input () const
 Get the number of input states.
 
unsigned get_input_index () const
 Get the input index, $ j $.
 
void set_input_index (unsigned index)
 Set the input index, $ j $.
 
virtual void erase_input (unsigned index)
 Remove the specified input from the model.
 
virtual void set_transformation (Complex2 *xform)
 Set the transformation, $J_i$,where $i$=get_transformation_index. More...
 
virtual void add_transformation (Complex2 *xform=0)
 Add a transformation, $J_P$, where $P$ = get_num_transformation. More...
 
virtual void set_transformation (MEAL::Real4 *xform)
 Set the transformation, $M_i$,where $i$=get_transformation_index. More...
 
virtual void add_transformation (MEAL::Real4 *xform=0)
 Add a transformation, $M_P$, where $P$ = get_num_transformation. More...
 
MEAL::Transformation< Complex2 > * get_transformation ()
 Get the current transformation.
 
unsigned get_num_transformation () const
 Get the number of transformation states.
 
unsigned get_transformation_index () const
 Get the transformation index, $ i $.
 
void set_transformation_index (unsigned index)
 Set the transformation index, $ i $.
 
- Public Member Functions inherited from MEAL::Complex2
virtual Complex2clone () const
 
- Public Member Functions inherited from Evaluable< Jones< double > >
 Evaluable (const Evaluable &copy)
 
Evaluableoperator= (const Evaluable &copy)
 
Jones< double > evaluate (std::vector< Jones< double > > *grad=0) const
 
EstimateTraits< Jones< double > >::type estimate () const
 
- Public Member Functions inherited from MEAL::Function
 Function (const Function &model)
 
Functionoperator= (const Function &model)
 
virtual void copy (const Function *model)
 
virtual TextInterface::Parserget_interface ()
 
virtual void parse (const std::string &text)
 
virtual void print (std::string &text) const
 
virtual std::string get_description () const
 
unsigned get_nparam () const
 
std::string get_param_name (unsigned index) const
 
std::string get_param_description (unsigned index) const
 
double get_param (unsigned index) const
 
void set_param (unsigned index, double value)
 
double get_variance (unsigned index) const
 
void set_variance (unsigned index, double value)
 
bool get_infit (unsigned index) const
 
void set_infit (unsigned index, bool flag)
 
void set_argument (unsigned dimension, Argument *axis)
 
Estimate< double > get_Estimate (unsigned index) const
 
void set_Estimate (unsigned index, const Estimate< double > &param)
 
void set_verbose (bool)
 
bool get_verbose () const
 
void set_evaluation_changed (bool _changed=true)
 
bool get_evaluation_changed () const
 
const ParameterPolicyget_parameter_policy () const
 
bool has_parameter_policy () const
 
virtual void print_parameters (std::string &text, const std::string &separator) const
 
- Public Member Functions inherited from Reference::Able
 Able (const Able &)
 
Ableoperator= (const Able &)
 
unsigned get_reference_count () const
 
- Public Member Functions inherited from Reference::HeapTracked
 HeapTracked (const HeapTracked &)
 
HeapTrackedoperator= (const HeapTracked &)
 
bool __is_on_heap () const
 

Static Public Member Functions

static Solvernew_default_Solver ()
 Returns a new instance of the default Solver algorithm.
 
- Static Public Member Functions inherited from MEAL::Function
static Model * load (const std::string &filename)
 
static Functionload_Function (const std::string &filename)
 
static Functionfactory (const std::string &text)
 
- Static Public Member Functions inherited from Reference::Able
static size_t get_instance_count ()
 
- Static Public Member Functions inherited from Reference::HeapTracked
static void * operator new (size_t size, void *ptr=0)
 
static void operator delete (void *location, void *ptr)
 
static void operator delete (void *location)
 
static size_t get_heap_queue_size ()
 

Protected Member Functions

void range_check (unsigned idata, const char *method) const
 Ensure that idata <= get_ndata()
 
- Protected Member Functions inherited from Calibration::MeasurementEquation
void calculate (Jones< double > &result, std::vector< Jones< double > > *)
 Returns $ \rho^\prime $ and its gradient. More...
 
MEAL::Transformation< Complex2 > * new_transformation (Complex2 *)
 Construct new integrated instance of CongruenceTransformation.
 
MEAL::Transformation< Complex2 > * new_transformation (MEAL::Real4 *)
 Construct new integrated instance of MuellerTransformation.
 
- Protected Member Functions inherited from Evaluable< Jones< double > >
void calculate (Evaluable *eval, Jones< double > &result, std::vector< Jones< double > > *grad)
 
- Protected Member Functions inherited from MEAL::Function
void copy_evaluation_changed (const Function &model)
 
void copy_parameter_policy (const Function *)
 
void set_parameter_policy (ParameterPolicy *policy)
 
- Protected Member Functions inherited from Reference::Able
Handle__reference (bool active) const
 
void __dereference (bool auto_delete=true) const
 

Protected Attributes

Reference::To< Solversolver
 The algorithm used to solve the measurement equation.
 
std::vector< Reference::To< Report > > prefit_reports
 Reports to run before solving.
 
std::vector< Reference::To< Report > > postfit_reports
 Reports to run after solving.
 
- Protected Attributes inherited from Calibration::MeasurementEquation
MEAL::Composite composite
 Composite parameter policy.
 
MEAL::VectorRule< MEAL::Complex2inputs
 The inputs, $ \rho_j $.
 
MEAL::VectorRule< MEAL::Transformation< MEAL::Complex2 > > xforms
 The transformations, $ J_i $ and $ M_k $.
 
- Protected Attributes inherited from Evaluable< Jones< double > >
Reference::To< EvaluationPolicy< Jones< double > > > evaluation_policy
 
- Protected Attributes inherited from MEAL::Function
Reference::To< ParameterPolicyparameter_policy
 
Reference::To< ArgumentPolicyargument_policy
 
bool set_parameter_policy_context
 
bool this_verbose
 

Friends

class Solver
 Provide Solver class with acces to data.
 

Additional Inherited Members

- Public Types inherited from Evaluable< Jones< double > >
typedef Jones< double > Result
 
- Public Types inherited from MEAL::Function
enum  Attribute
 
- Public Attributes inherited from MEAL::Function
 ParameterCount
 
 Evaluation
 
Callback< Attributechanged
 
- Static Public Attributes inherited from MEAL::Complex2
static const char * Name
 
- Static Public Attributes inherited from Evaluable< Jones< double > >
static const char * Name
 
- Static Public Attributes inherited from MEAL::Function
static bool verbose
 
static bool very_verbose
 
static bool check_zero
 
static bool check_variance
 
static bool cache_results
 

Detailed Description

Models a set of transformations and source polarizations.

This class models the output polarization of an arbitrary number of both input polarization states and signal paths. Each signal path is represented by a MeasurementEquation.

Member Function Documentation

◆ add_data()

void Calibration::ReceptionModel::add_data ( CoherencyMeasurementSet data)
virtual

Checks that each CoherencyMeasurement has a valid source_index.

Checks that each MeasuredState has a valid source_index.

References Calibration::CoherencyMeasurementSet::get_transformation_index().


The documentation for this class was generated from the following files:

Generated using doxygen 1.8.17