| 1 | #ifndef ptsrcinbandcalctools_H
 | 
|---|
| 2 | #define ptsrcinbandcalctools_H
 | 
|---|
| 3 | 
 | 
|---|
| 4 | #include "abscalctool.h"
 | 
|---|
| 5 | 
 | 
|---|
| 6 | #include "lightptsrclevsinband.h"
 | 
|---|
| 7 | #include "meanlobe.h"
 | 
|---|
| 8 | 
 | 
|---|
| 9 | 
 | 
|---|
| 10 | class PtSrcInBandCalTools:public AbsCalcTool {
 | 
|---|
| 11 |  public:
 | 
|---|
| 12 |         PtSrcInBandCalTools(LightPtSrcLevSInBand* pLightSource,MeanFreqLobe* pLob, LevSPanckBand thisBand);
 | 
|---|
| 13 |         ~PtSrcInBandCalTools() {        }
 | 
|---|
| 14 |         virtual double compPixel(UnitVector& VP, UnitVector& VY);
 | 
|---|
| 15 |         // Return power on detector (Watt/m2) for this Lobe and band
 | 
|---|
| 16 |    // Pointing at these ccordinates. with this telescope orientation
 | 
|---|
| 17 |    // Exact
 | 
|---|
| 18 |         virtual void print(ostream& ReadMe)
 | 
|---|
| 19 |         {       ReadMe<<" La source physique: "<<endl;
 | 
|---|
| 20 |                 pLightSrc->print(ReadMe);
 | 
|---|
| 21 |                 ReadMe<<" Le Lobe : "<<endl;
 | 
|---|
| 22 |                 pLobe->print(ReadMe);
 | 
|---|
| 23 |                 ReadMe<<" Le Filtre: "<<endl;
 | 
|---|
| 24 |                 pFilter->Print(ReadMe); 
 | 
|---|
| 25 |                 ReadMe<<endl;
 | 
|---|
| 26 |         }
 | 
|---|
| 27 |         
 | 
|---|
| 28 | 
 | 
|---|
| 29 |         virtual double CalcLobeSize(double frequency);
 | 
|---|
| 30 |         // Calcule l'extension spatiale du lobe de cet outil
 | 
|---|
| 31 |         // par integration numerique, calquee sur 
 | 
|---|
| 32 |         // L'integration spatiale ddu signal physique;
 | 
|---|
| 33 |         // VALEUR RETOUR EN STERADIAN
 | 
|---|
| 34 |         // Doit EVOLUER SI l'integration spatiale du signal physique CHANGE;
 | 
|---|
| 35 |  protected:
 | 
|---|
| 36 |         LightPtSrcLevSInBand* pLightSrc;
 | 
|---|
| 37 |         LevSPanckBand Band;
 | 
|---|
| 38 |  /*     
 | 
|---|
| 39 |                 inline double powerInteg(double TMin, double TMax, double PMin, 
 | 
|---|
| 40 |                 double PMax, UnitVector& VP, UnitVector& VY, bool InvLog=false);
 | 
|---|
| 41 | */
 | 
|---|
| 42 |  };
 | 
|---|
| 43 |  
 | 
|---|
| 44 | #endif
 | 
|---|