source: Sophya/trunk/SophyaLib/Samba/mlobe.h@ 1778

Last change on this file since 1778 was 1371, checked in by ansari, 25 years ago

MAJ documentation, Makefile, ... - Reza 5/1/2001

File size: 1.6 KB
Line 
1// Class for representing the main antenna lobe
2// R. Ansari 1998-2000
3// DAPNIA/SPP (Saclay) / CEA LAL - IN2P3/CNRS (Orsay)
4
5#ifndef MLOBE_H_SEEN
6#define MLOBE_H_SEEN
7
8#include <math.h>
9#include <iostream.h>
10
11#include "sphericalmap.h"
12
13
14namespace SOPHYA {
15
16// Classe MainLobe
17// Classe pour calcul du lobe principal
18// Les valeurs du lobe sont calcules dans des pixels
19// disposes sur "nc" couches avec pavage hexagonal autour de Teta=0, Phi=0
20// Le lobe est gaussien, de sigma = "sig" - Les couches sont construites
21// toutes les "dels" * sigma
22// NPix() renvoie le nombre total de pixels du lobe
23// SetDirection() permet d orienter le lobe dans la direction "teta, phi"
24// Value() renvoie la valeur du lobe, ainsi que les teta,phi du pixel "kpx"
25// Convol() renvoie la valeur lobe convolue avec le ciel (sphere) "sph"
26
27class MainLobe {
28public:
29 MainLobe(float sig, float dels=0.5, int nc=3);
30 ~MainLobe();
31 inline int NPix() {return mNpix; }
32 inline float Sigma() {return mSigma; }
33 inline double Integral() {return mTotVal; }
34 void SetDirection(float teta, float phi);
35 double Value(int kpx, float& teta, float& phi);
36 double Convol(SphericalMap<double>& sph);
37 friend ostream& operator << (ostream& s, MainLobe const& lob);
38 inline void Print() { cout << (*this); }
39
40float mSigma, mDels;
41int mNpix, mNC;
42double mTotVal;
43float mDirTet, mDirPhi;
44float* mT0;
45float* mP0;
46float* mTC;
47float* mPC;
48float* mDx;
49float* mDy;
50float* mDr;
51double* mVal;
52};
53
54} // namespace SOPHYA
55
56#endif
Note: See TracBrowser for help on using the repository browser.