model_galactic_center_diffractive_scattering_screen Class Reference

Blurs the visibilities of the input model according to the diffractive scattering kernel with default values from Johnson 2018. More...

#include "model/model_galactic_center_diffractive_scattering_screen.h"

Inheritance diagram for model_galactic_center_diffractive_scattering_screen:
Collaboration diagram for model_galactic_center_diffractive_scattering_screen:

Classes

class  _P_phi
 Wandering magnetic field angular model. More...
 

Public Member Functions

 model_galactic_center_diffractive_scattering_screen (model_visibility_amplitude &model, double frequency=230e9, std::string scattering_model="dipole", double observer_screen_distance=2.82 *3.086e21, double source_screen_distance=5.53 *3.086e21, double theta_maj_mas_cm=1.38, double theta_min_ma_cm=0.703, double POS_ANG=81.9, double scatt_alpha=1.38, double r_in=800e5, double r_out=1e20)
 
virtual size_t size () const
 Size of the supplied model image, i.e., number of parameters expected.
 
virtual void generate_model (std::vector< double > parameters)
 Takes model parameters and generates the model with the diffractive scattering.
 
virtual double visibility_amplitude (datum_visibility_amplitude &d, double accuracy)
 Redefines the visibility amplitude function since we need to multiply by the scattering kernel.
 
virtual void set_mpi_communicator (MPI_Comm comm)
 Sets the mpi communicator for generating images.
 

Private Member Functions

double Dphi (double r, double phi) const
 < Dphi function for the ensemble averaged image. More...
 
double Q (double qx, double qy) const
 

Private Attributes

model_visibility_amplitude_model
 < Model visibility amplitudes
 
const double _wavelength
 
const std::string _scattering_model
 Which scattering model to use. Have three options, dipole, boxcar, vonMises.
 
const double _theta_maj_mas_cm
 
const double _theta_min_mas_cm
 Semi-major and minor axis length of Gaussian component of scattering screen in mas at refernce wavelength of 1 cm.
 
const double _phi0
 (90-_POS_ANG)
 
const double _M
 Magnification factor.
 
const double _scatt_alpha
 Scattering turulence and dissipation scale power law parameter. Kolmogorov scattering has alpha=5/3.
 
const double _rin
 Inner scale for the turbulence in the scattering screen.
 
double _zeta0
 
double _Qbar
 Power spectrum normalization.
 
double _C_scatt_0
 Scattering coefficent for phase structure function.
 
double _kZeta
 Scattering kernel phase structure coefficient for different wandering magnetic field models.
 
double _Bmaj
 
double _Bmin
 
_P_phi _P_phi_func
 Normalization for wandering magnetic field model.
 
double _P_phi_norm
 

Additional Inherited Members

- Protected Attributes inherited from model_visibility_amplitude
MPI_Comm _comm
 

Detailed Description

Author
Paul Tiede
Date
Aug. 2019

Unlike the refractive scattering screen this does not increase the number of parameters since this is considered a deterministic process.

Member Function Documentation

double Dphi ( double  r,
double  phi 
) const
private

Power spectrum of phase screen.

Here is the caller graph for this function:


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