model_symmetric_gaussian Class Reference

Defines a symmetric Gaussian model based on the model_visibility_amplitude and model_closure_phase classes. More...

#include "model/model_symmetric_gaussian.h"

Inheritance diagram for model_symmetric_gaussian:
Collaboration diagram for model_symmetric_gaussian:

Public Member Functions

virtual size_t size () const
 
virtual void generate_model (std::vector< double > parameters)
 
virtual std::complex< double > visibility (datum_visibility &d, double accuracy)
 Returns complex visibility in Jy computed from the image given a datum_visibility_amplitude object, containing all of the accoutrements. While this provides access to the actual data value, the two could be separated if necessary. Also takes an accuracy parameter with the same units as the data, indicating the accuracy with which the model must generate a comparison value. Note that this can be redefined in child classes.
 
virtual double visibility_amplitude (datum_visibility_amplitude &d, double acc)
 
virtual double closure_phase (datum_closure_phase &d, double acc)
 
virtual double closure_amplitude (datum_closure_amplitude &d, double accuracy)
 
- Public Member Functions inherited from model_visibility
virtual void set_mpi_communicator (MPI_Comm comm)
 Defines a set of processors provided to the model for parallel computation via an MPI communicator. Only facilitates code parallelization if the model computation is parallelized via MPI.
 
- Public Member Functions inherited from model_visibility_amplitude
virtual void set_mpi_communicator (MPI_Comm comm)
 Defines a set of processors provided to the model for parallel computation via an MPI communicator. Only facilitates code parallelization if the model computation is parallelized via MPI.
 
- Public Member Functions inherited from model_closure_phase
virtual void set_mpi_communicator (MPI_Comm comm)
 Defines a set of processors provided to the model for parallel computation via an MPI communicator. Only facilitates code parallelization if the model computation is parallelized via MPI.
 
- Public Member Functions inherited from model_closure_amplitude
virtual void set_mpi_communicator (MPI_Comm comm)
 Defines a set of processors provided to the model for parallel computation via an MPI communicator. Only facilitates code parallelization if the model computation is parallelized via MPI.
 

Private Attributes

double _Itotal
 Internal total intensity.
 
double _sigma
 Std. dev.
 

Additional Inherited Members

- Protected Attributes inherited from model_visibility
MPI_Comm _comm
 
- Protected Attributes inherited from model_visibility_amplitude
MPI_Comm _comm
 
- Protected Attributes inherited from model_closure_phase
MPI_Comm _comm
 
- Protected Attributes inherited from model_closure_amplitude
MPI_Comm _comm
 

Detailed Description

The Gaussian image is defined by an axis size and overall flux normalization. Note that this is not derived from model_image because there is no meaning for the position angle.

Parameter list:

  • parameters[0] ... Total, integrated flux in Jy.
  • parameters[1] ... Standard deviation in radians.
Warning

Member Function Documentation

double closure_amplitude ( datum_closure_amplitude d,
double  accuracy 
)
virtual

Returns closure amplitude computed from the image given a datum_closure_phase object, containing all of the accoutrements. While this provides access to the actual data value, the two could be separated if necessary. Also takes an accuracy parameter with the same units as the data, indicating the accuracy with which the model must generate a comparison value. Note that this can be redefined in child classes.

Implements model_closure_amplitude.

double closure_phase ( datum_closure_phase d,
double  acc 
)
virtual

Returns closure phase in degrees computed from the image given a datum_closure_phase object, containing all of the accoutrements. While this provides access to the actual data value, the two could be separated if necessary. Also takes an accuracy parameter with the same units as the data, indicating the accuracy with which the model must generate a comparison value. Note that this is redefined since the closure phase of Gaussian images is identically zero.

Implements model_closure_phase.

void generate_model ( std::vector< double >  parameters)
virtual

A one-time generate function that permits model construction prior to calling the visibility_amplitude, closure_phase, etc. for each datum. Takes a vector of parameters.

Implements model_closure_amplitude.

virtual size_t size ( ) const
inlinevirtual

A user-supplied function that returns the number of the parameters the model expects

Implements model_closure_amplitude.

double visibility_amplitude ( datum_visibility_amplitude d,
double  acc 
)
virtual

Returns visibility ampitudes in Jy computed from the image given a datum_visibility_amplitude object, containing all of the accoutrements. While this provides access to the actual data value, the two could be separated if necessary. Also takes an accuracy parameter with the same units as the data, indicating the accuracy with which the model must generate a comparison value. Note that this is redefined to accomodate the possibility of using the analytical computation.

Implements model_visibility_amplitude.


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