source: trunk/MagicSoft/Simulation/Detector/Starfield/star.hxx@ 1686

Last change on this file since 1686 was 341, checked in by petry, 25 years ago
First version of the Starfield Generator in this repository. Fully functional version using the SKY2000 star catalog.
File size: 1.6 KB
Line 
1#ifndef _STAR_H_
2#define _STAR_H_
3
4
5#include <math.h>
6#include <string.h>
7#include <stdio.h>
8#include <iostream.h>
9#include <fstream.h>
10#include "jcmacros.h"
11
12// Speed of light in m/s and Planck's constant in joules/s definition
13
14#ifndef LIGHTSPEED_mps
15#define LIGHTSPEED_mps 3.000E8
16#endif
17
18#ifndef PLANCK_si
19#define PLANCK_si 6.626E-34
20#endif
21
22#ifndef PI
23#define PI 3.1415927
24#endif
25
26
27// Wavelengths range for U, B and V magnitude
28
29#ifndef ULMIN_nm
30#define ULMIN_nm 290.0 // the true limit is approx. 310 nm, but we extend this
31#endif // in order to cover the complete PMT sensitivity
32
33#ifndef ULMAX_nm
34#define ULMAX_nm 390.0
35#endif
36
37#ifndef BLMIN_nm
38#define BLMIN_nm 390.0
39#endif
40
41#ifndef BLMAX_nm
42#define BLMAX_nm 500.0
43#endif
44
45#ifndef VLMIN_nm
46#define VLMIN_nm 500.0
47#endif
48
49#ifndef VLMAX_nm
50#define VLMAX_nm 590.0
51#endif
52
53#ifndef RLMIN_nm
54#define RLMIN_nm 590.0
55#endif
56
57#ifndef RLMAX_nm
58#define RLMAX_nm 800.0
59#endif
60
61#ifndef SKY2000LINELENGTH
62#define SKY2000LINELENGTH 520
63#endif
64
65
66
67class star{
68
69public:
70
71 int icatnum;
72 float ra_h, dec_deg, umag, bmag, vmag, rmag;
73 float u, v;
74 float ra_rad, dec_rad;
75 int numphot;
76
77 star(); // constructor
78 int readstar(FILE *fp, int verbose); // read one star from the catalog, return TRUE
79 int printstar(); // write the parameters of one star to stdout
80 float calcmissingmags(int verbose);// calculate the magnitudes for those wavebands in which no data
81 // is available assuming a black body and using the V and B mags
82 int mag_nphot(int nph[4], float triggate_s, float radius_m, int verbose);
83 // translate the star magnitude into number of photons
84};
85
86#endif
Note: See TracBrowser for help on using the repository browser.