Simulation/Pulsar/SyntheticPolnProfile.h
1//-*-C++-*-
2/***************************************************************************
3 *
4 * Copyright (C) 2005 - 2016 by Willem van Straten
5 * Licensed under the Academic Free License version 2.1
6 *
7 ***************************************************************************/
8
9// psrchive/More/Simulation/Pulsar/SyntheticPolnProfile.h
10
11#ifndef __Pulsar_SyntheticPolnProfile_h
12#define __Pulsar_SyntheticPolnProfile_h
13
14#include "MEAL/Univariate.h"
15#include "MEAL/Scalar.h"
16
17namespace Pulsar {
18
19 class PolnProfile;
20 class Profile;
21
23
24 class SyntheticPolnProfile : public Reference::Able {
25
26 public:
27
30
33
36
39
41 void set_degree (float);
42
44 void set_noise_variance (float);
45
47 void set_noise (float);
48
50 void set_swims_variance (float);
51
53 void set_swims (float);
54
56 void set_baseline (float);
57
60
62 void set_position_angle (float);
63
66
69
71 PolnProfile* get_PolnProfile (unsigned nbin) const;
72
74 void get_PolnProfile (PolnProfile*) const;
75
76 static void set_Profile (Profile* profile, MEAL::Univariate<MEAL::Scalar>* function);
77
78 protected:
79
82
84 float noise_variance;
85
88
90 float baseline;
91
94
96 float constant_degree;
97
100
103
106
109
110 };
111
112}
113
114#endif
Polarimetric pulse profile transformations and derivations.
Definition PolnProfile.h:29
Any quantity recorded as a function of pulse phase.
Definition Profile.h:40
Simulated polarimetric pulse profile.
Definition General/Pulsar/SyntheticPolnProfile.h:23
void set_position_angle(float)
Set the constant position angle.
Reference::To< MEAL::Univariate< MEAL::Scalar > > total_intensity
The functional form of the total intensity.
Definition General/Pulsar/SyntheticPolnProfile.h:63
Reference::To< MEAL::Univariate< MEAL::Scalar > > linear
The functional form of the linear polarization.
Definition General/Pulsar/SyntheticPolnProfile.h:81
~SyntheticPolnProfile()
Destructor.
PolnProfile * get_PolnProfile(unsigned nbin) const
Get the polarimetric profile.
SyntheticPolnProfile()
Default constructor.
void set_total_intensity(MEAL::Univariate< MEAL::Scalar > *)
Set the functional form of the total intensity.
void set_circular(MEAL::Univariate< MEAL::Scalar > *)
Set the functional form of the circular polarization.
Reference::To< MEAL::Univariate< MEAL::Scalar > > position_angle
The functional form of the position angle.
Definition General/Pulsar/SyntheticPolnProfile.h:75
float constant_position_angle
The constant position angle.
Definition General/Pulsar/SyntheticPolnProfile.h:78
void set_degree(MEAL::Univariate< MEAL::Scalar > *)
Set the functional form of the degree of polarization.
float swims_variance
The peak variance of the SWIMS noise.
Definition Simulation/Pulsar/SyntheticPolnProfile.h:87
void set_baseline(float)
The the off-pulse baseline mean.
Definition SyntheticPolnProfile.C:71
Reference::To< MEAL::Univariate< MEAL::Scalar > > degree
The functional form of the degree of polarization.
Definition General/Pulsar/SyntheticPolnProfile.h:69
PolnProfile * get_PolnProfile(unsigned nbin) const
Get the polarimetric profile.
Definition SyntheticPolnProfile.C:117
void set_noise_variance(float)
Set the variance of the noise.
void set_position_angle(MEAL::Univariate< MEAL::Scalar > *)
Set the functional form of the position angle.
float baseline
The off-pulse baseline mean intensity.
Definition Simulation/Pulsar/SyntheticPolnProfile.h:90
void set_swims_variance(float)
Set the peak variance of the simulated SWIMS/jitter noise.
Definition SyntheticPolnProfile.C:60
float constant_degree
The constant degree of polarization.
Definition General/Pulsar/SyntheticPolnProfile.h:72
void set_noise(float)
Set the standard deviation of the noise.
Definition SyntheticPolnProfile.C:55
void set_swims(float)
Set the peak standard deviation of the simulated SWIMS/jitter noise.
Definition SyntheticPolnProfile.C:65
void set_linear(MEAL::Univariate< MEAL::Scalar > *)
Set the functional form of the linear polarization.
float noise_variance
The variance of the noise.
Definition General/Pulsar/SyntheticPolnProfile.h:66
void set_degree(float)
Set the constant degree of polarization.
Reference::To< MEAL::Univariate< MEAL::Scalar > > circular
The functional form of the circular polarization.
Definition General/Pulsar/SyntheticPolnProfile.h:84
Defines the PSRCHIVE library.
Definition CalSource.h:17

Generated using doxygen 1.14.0