Gateau User Manual
Atmospheric simulation of astronomical signals
structs.h
Go to the documentation of this file.
1
/*!
2
* \file
3
* \brief Data structures for receiving data from Python interface.
4
**/
5
6
#ifndef __STRUCTS_h
7
#define __STRUCTS_h
8
9
struct
Instrument
;
10
struct
Telescope
;
11
struct
atmosphere;
12
struct
Source
;
13
struct
Cascade
;
14
struct
ArrSpec
;
15
16
struct
ArrSpec
17
{
18
float
start;
19
float
step;
20
int
num;
21
};
22
23
struct
Cascade
24
{
25
float
*
eta_cascade
;
/**< Efficiency terms associated with each stage of this cascade.*/
26
float
*
psd_cascade
;
/**< Power spectral density of each parasitic source of this cascade.*/
27
float
*
psd_cmb
;
/**< Power spectral density of each parasitic source of this cascade.*/
28
int
num_stage
;
/**< Number of (grouped) stages in cascade.*/
29
int
use_rad_trans
;
/**< Enable radiative transfer cascade.*/
30
};
31
32
struct
Instrument
33
{
34
int
nf_ch
;
/**< Number of elements in freqs.*/
35
float
*
f_ch
;
/**< Array with filter frequencies.*/
36
float
f_sample
;
/**< Readout frequency of instrument in Hertz.*/
37
float
*
transmission
;
/**< Array with transmission matrix, flattened along sky frequency axis.*/
38
float
delta
;
/**< Superconducting bandgap energy in Joules.*/
39
float
eta_pb
;
/**< Pair breaking efficiency of superconductor.*/
40
float
*
az_fpa
;
/**< Array with azimuth pointings for FPA.*/
41
float
*
el_fpa
;
/**< Array with elevation pointings for FPA.*/
42
int
num_spax;
43
int
use_photon_noise;
44
int
use_pink;
45
float
*pink_level;
46
float
*pink_alpha;
47
};
48
49
struct
Telescope
50
{
51
float
*
eta_illum
;
/**< Array of illumination efficiencies.*/
52
float
*
eta_ap
;
/**< Array of aperture efficiencies.*/
53
float
*
az_scan
;
/**< Azimuth co-ordinates of scan strategy for simulation.*/
54
float
*
el_scan
;
/**< Elevation co-ordinates of scan strategy for simulation.*/
55
float
*
az_scan_center
;
/**< Azimuth center co-ordinates of scan strategy for simulation.*/
56
float
*
el_scan_center
;
/**< Elevation center co-ordinates of scan strategy for simulation.*/
57
};
58
59
60
struct
Atmosphere
61
{
62
float
T_atm
;
/**< floatemperature of atmosphere in Kelvin.*/
63
float
v_wind
;
/**< Max windspeed in meters per second.*/
64
float
h_column
;
/**< Reference column height of atmosphere, in meters.*/
65
float
dx
;
/**< Gridsize along x axis in meters.*/
66
float
dy
;
/**< Gridsize along y axis in meters.*/
67
char
*
path
;
/**< Path to prepd folder.*/
68
float
pwv0
;
/**< Average PWV at start of simulation.*/
69
float
pwv_slope
;
/**< Linear slope of average PWV.*/
70
};
71
72
73
struct
Source
74
{
75
struct
ArrSpec
az_src_spec;
76
struct
ArrSpec
el_src_spec;
77
struct
ArrSpec
f_spec;
78
79
float
*
I_nu
;
/**< Flat array of specific intensities.*/
80
int
nI_nu
;
/**< Number of source intensities.*/
81
};
82
83
#endif
Cascade
Definition:
structs.h:23
Atmosphere::pwv_slope
float pwv_slope
Definition:
structs.h:69
Cascade::psd_cascade
float * psd_cascade
Definition:
structs.h:26
Atmosphere::pwv0
float pwv0
Definition:
structs.h:68
Instrument::el_fpa
float * el_fpa
Definition:
structs.h:41
Telescope::el_scan_center
float * el_scan_center
Definition:
structs.h:56
Instrument::eta_pb
float eta_pb
Definition:
structs.h:39
Instrument::nf_ch
int nf_ch
Definition:
structs.h:34
Cascade::eta_cascade
float * eta_cascade
Definition:
structs.h:25
Source::nI_nu
int nI_nu
Definition:
structs.h:80
ArrSpec
Definition:
structs.h:16
Cascade::num_stage
int num_stage
Definition:
structs.h:28
Atmosphere::dx
float dx
Definition:
structs.h:65
Instrument::f_sample
float f_sample
Definition:
structs.h:36
Atmosphere::path
char * path
Definition:
structs.h:67
Atmosphere
Definition:
structs.h:60
Telescope::az_scan_center
float * az_scan_center
Definition:
structs.h:55
Telescope::eta_illum
float * eta_illum
Definition:
structs.h:51
Atmosphere::dy
float dy
Definition:
structs.h:66
Instrument::delta
float delta
Definition:
structs.h:38
Instrument::transmission
float * transmission
Definition:
structs.h:37
Telescope::eta_ap
float * eta_ap
Definition:
structs.h:52
Instrument::az_fpa
float * az_fpa
Definition:
structs.h:40
Atmosphere::h_column
float h_column
Definition:
structs.h:64
Instrument::f_ch
float * f_ch
Definition:
structs.h:35
Atmosphere::v_wind
float v_wind
Definition:
structs.h:63
Source::I_nu
float * I_nu
Definition:
structs.h:79
Telescope::el_scan
float * el_scan
Definition:
structs.h:54
Cascade::use_rad_trans
int use_rad_trans
Definition:
structs.h:29
Cascade::psd_cmb
float * psd_cmb
Definition:
structs.h:27
Telescope
Definition:
structs.h:49
Instrument
Definition:
structs.h:32
Telescope::az_scan
float * az_scan
Definition:
structs.h:53
Atmosphere::T_atm
float T_atm
Definition:
structs.h:62
Source
Definition:
structs.h:73
src
gateau
include
structs.h
Generated by
1.8.17