Spacecraft Control Framework 1.0
Spacecraft Control Library
sc_imager_model.h
Go to the documentation of this file.
1
2#ifndef __IMAGER_MODEL__
3#define __IMAGER_MODEL__
4
5#ifdef AS_OS_WINDOWS
6 #include "matrixlib.h"
7#else
8 #include <MatrixLib/MatrixLib.h>
9#endif
10
33{
34
35 private:
37 int n, m;
39 double fpn_mag;
41 double ndr;
43 double dark;
45 double qE;
47 double pixel;
49 double alpha;
51 double kTC;
53 double kAD;
55 double gain;
57 double bits;
59 double tau;
61 double vS;
63 double eta;
65 double a;
67 double kappa;
69 double f;
71 double lambda;
73 double rho;
75 double theta;
77 double h;
78
79 public:
80
82 imager_model( void );
84 void initialize( void );
86 ml_matrix update( double r, const ml_matrix& centroid_frame );
89 void set_rows_and_columns( int n, int m ){this->n = n; this->m = m;};
90 void set_fixed_pattern_noise( double fpn){this->fpn_mag = fpn;};
91 void set_temporal_noise( double ndr){this->ndr = ndr;};
92 void set_dark_current(double dark){this->dark = dark;};
93 void set_quantum_efficiency( double qE ){this->qE = qE;};
94 void set_pixel_dimension( double pixel ){this->pixel = pixel;};
95 void set_global_photo_response_non_uniformity( double alpha ){this->alpha = alpha;};
96 void set_temperature_noise( double kTC ){this->kTC = kTC;};
97 void set_ad_conversion ( double kAD ){this->kAD = kAD;};
98 void set_ad_gain( double gain ){this->gain = gain;};
99 void set_ad_bits( double bits ){this->bits = bits;};
100 void set_integration_time( double tau ){this->tau = tau;};
101 void set_voltage_swing ( double vS ){this->vS = vS;};
102 void set_throughput( double eta ){this->eta = eta;};
103 void set_aperture ( double a ){this->a = a;};
104 void set_stray_light_multiplier( double kappa ){this->kappa = kappa;};
105 void set_focal_length( double f ){this->f = f;};
106 void set_wavelength( double lambda ){this->lambda = lambda;};
108
109 private:
110 ml_matrix fpn;
111 ml_matrix pRNU;
112 double vMax;
113 double aDG;
114 double fov;
115
116};
117
118
119#endif
Definition: sc_imager_model.h:33
ml_matrix update(double r, const ml_matrix &centroid_frame)
Update the output.
Definition: sc_imager_model.cc:56
imager_model(void)
Constructor.
Definition: sc_imager_model.cc:8
void initialize(void)
Initialize all state matrices.
Definition: sc_imager_model.cc:35