model_movie_refractive_scattering< T > Class Template Reference
Inheritance diagram for model_movie_refractive_scattering< T >:

Collaboration diagram for model_movie_refractive_scattering< T >:

Public Member Functions | |
| model_movie_refractive_scattering (T &model, size_t nModes, double tstart, 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, double vs_ss_kms=50.0, double vy_ss_kms=0.0) | |
| virtual size_t | size () const |
| Returns the number of the parameters the model expects. | |
| void | set_image_resolution (size_t nray) |
| void | set_screen_size (double fov) |
| void | get_ensemble_average_frame (double t_frame, std::vector< std::vector< double > > &alpha, std::vector< std::vector< double > > &beta, std::vector< std::vector< double > > &I) const |
Public Member Functions inherited from model_movie< model_image_refractive_scattering > | |
| model_movie (std::vector< double > observation_times) | |
| virtual void | generate_model (std::vector< double > parameters) |
| A user-supplied one-time generate function that permits model construction prior to calling the closure_phase for each datum. Takes a vector of parameters. | |
| virtual std::complex< double > | visibility (datum_visibility &d, double accuracy) |
| Returns visibility in Jy, computed numerically. The accuracy parameters isn't used presently. | |
| virtual double | visibility_amplitude (datum_visibility_amplitude &d, double accuracy) |
| Returns visibility amplitude in Jy, computed numerically. The accuracy parameters isn't used presently. | |
| virtual double | closure_phase (datum_closure_phase &d, double accuracy) |
| Returns closure ampitudes, computed numerically. The accuracy parameter is not used at present. | |
| void | get_movie_frame (double t_frame, std::vector< std::vector< double > > &alpha, std::vector< std::vector< double > > &beta, std::vector< std::vector< double > > &I) const |
| Provides direct access to the constructed image. Sets a 2D grid of angles (alpha, beta) in radians and intensities in Jy per pixel. | |
| void | get_visibilities (std::vector< std::vector< double > > &u, std::vector< std::vector< double > > &v, std::vector< std::vector< std::complex< double > > > &V) const |
| Provides direct access to the complex visibilities. Sets a 2D grid of baselines (u,v) in lambda, and visibilites in Jy. | |
| void | get_visibility_amplitudes (std::vector< std::vector< double > > &u, std::vector< std::vector< double > > &v, std::vector< std::vector< double > > &V) const |
| Provides direct access to the visibility amplitudes. Sets a 2D grid of baselines (u,v) in lambda, and visibilites in Jy. | |
| void | output_movie_frame (double t_frame, std::string fname, bool rotate=false) |
| Outputs the frame of the movie at time t to the file with name fname. If rotate is true then each frame will be rotated by the position angle. | |
| void | use_spline_interp (bool use_spline) |
| Provides ability to use bicubic spline interpolator (true) instead of regular bicubic. Code defaults to false. | |
| std::vector< double > | get_frame_times () |
| Provides the ability to get frame times in the movie. | |
| 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 facilates code parallelization if the model computation is parallelized via MPI. | |
| model_image_refractive_scattering * | get_movie_model_frame (size_t i) |
| Provides access to the the individual model_image frames of the base movie. Requires the movie index. | |
Private Attributes | |
| T * | _model |
| size_t | _nModes |
| double | _tstart |
Additional Inherited Members | |
Protected Member Functions inherited from model_movie< model_image_refractive_scattering > | |
| virtual size_t | find_time_index (double tobs) const |
Protected Attributes inherited from model_movie< model_image_refractive_scattering > | |
| bool | _generated_model |
| std::vector< double > | _observation_times |
| std::vector< model_image_refractive_scattering * > | _movie_frames |
| std::vector< double > | _parameters |
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 |
Constructor & Destructor Documentation
| model_movie_refractive_scattering | ( | T & | model, |
| size_t | nModes, | ||
| double | tstart, | ||
| 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, |
||
| double | vs_ss_kms = 50.0, |
||
| double | vy_ss_kms = 0.0 |
||
| ) |
Constructor takes in a model_movie class and scatters it. Note that observation times are found from the model. For a description about what each option does see model_image_refractive_scattering
Member Function Documentation
| void set_image_resolution | ( | size_t | nray | ) |
Sets the image scattered image resolution to be used resolution of the image is nrayxnray, the default is 128,128 which is probably too much
| void set_screen_size | ( | double | fov | ) |
Sets the fov size of the image in units of radians The current default is 100uas.
The documentation for this class was generated from the following file:

Public Member Functions inherited from