source: Sophya/trunk/FrEROS/AnaLC/nbgene.h@ 3504

Last change on this file since 3504 was 3308, checked in by ansari, 18 years ago

Creation du module AnaLC (lecture suivi EROS avec SOPHYA) dans la base
SOPHYA - cmv+reza 22/08/2007

  • Property svn:executable set to *
File size: 2.1 KB
Line 
1#ifndef NBGENE_H_SEEN
2#define NBGENE_H_SEEN
3
4
5#ifdef __cplusplus
6
7#ifdef FLAG_MAIN_NBSREAD
8#define EXTERN
9#else
10#define EXTERN extern
11#endif
12
13#else
14
15#define EXTERN
16
17#endif
18
19/* structure de definition du montecarlo */
20struct montecarlo {
21 /* flag montecarlo et tailles finies */
22 int montecar,Taille_Finie,Blending;
23 /* initialisation aleatoire */
24 int_4 iseed1,iseed2,iseed3;
25 /* nbre engendre, nbre a engendrer par etoile */
26 int NGene,NGenStar;
27 /* nbre points amplifies, nombre points amplifies avec taille finie */
28 int NPoints_ampli,NPoints_ampli_tf,Net_ampli_tf;
29 /* ampli maxi ponctuelle, tf, coupure en amplification (apres=1.), blend */
30 float A0MaxPt,A0Max,Usu0_Cut,A0Max_blend[NCOULMX];
31 /* u0 initialisation, bornes min et max, simule */
32 float U0SimI,U0MinI,U0MaxI,U0Sim;
33 float (*TireU0)(float x);
34 /* t0 initialisation, bornes min et max, simule */
35 double T0SimI,T0MaxI,T0MinI,T0Sim;
36 double T0MaxI_eff,T0MinI_eff;
37 float (*TireT0)(float x);
38 /* tau initialisation, bornes min et max, simule (cas ponctuel) */
39 float TauSimI,TauMinI,TauMaxI,TauSim;
40 float (*TireTau)(float x);
41 /* U initialisation, bornes min et max, simule (cas ponctuel) */
42 float USimI,UMinI,UMaxI,USim;
43 float (*TireU)(float x);
44 /* cas du blending 1ere et 2sd etoiles */
45 /* fct de generation des parametres du blending */
46 void (*Get_Par_Blending)(void);
47 /* flux, coeff de blending et calib etoile principale */
48 float fmc1[NCOULMX],coeff_Arec1[NCOULMX];
49 STARCALU starcal1;
50 /* flux, coeff de blending et calib etoile secondaire */
51 float fmc2[NCOULMX],coeff_Arec2[NCOULMX];
52 STARCALU starcal2;
53 /* type (SP ou GR) des etoiles du couple blending */
54 int type1,type2;
55};
56typedef struct montecarlo MONTECARLO;
57
58EXTERN MONTECARLO mc;
59EXTERN int ANNEE_OBS;
60
61#ifdef __cplusplus
62extern "C" {
63#endif
64int Give_Annee_Obs(int lp);
65float Rayon_SP_Th(float magv);
66void AMPLML(int io);
67double ampli_ponct(double u);
68double ampli_tf(double u,double U,int Nseq);
69double u0_ponct(double A);
70double u0_tf(double A,double U,double prec,int *niter,double *Afinal);
71#ifdef __cplusplus
72}
73#endif
74
75#endif
Note: See TracBrowser for help on using the repository browser.