Last change
on this file since 4008 was 3489, checked in by ansari, 17 years ago |
Les differents scripts+prog de calcul P(k)/bruit, lobe, config interfero ajoute ds ce module - Reza 28/04/2008
|
-
Property svn:executable
set to
*
|
File size:
1015 bytes
|
Rev | Line | |
---|
[3489] | 1 | static double D = 4.; // Taille du reflecteur (en m)
|
---|
| 2 | static double Lambda = 0.4; // Longueur d'onde en m
|
---|
| 3 | static double PiDoL = M_PI*D/Lambda; // Pi * D / Lambda
|
---|
| 4 |
|
---|
| 5 | static double DELX = D; // Separation des reflecteurs
|
---|
| 6 |
|
---|
| 7 | // static double DELX = Lambda/2.; // Separation des reflecteurs
|
---|
| 8 |
|
---|
| 9 |
|
---|
| 10 | double LobeSquare(double tet)
|
---|
| 11 | {
|
---|
| 12 | if (fabs(tet) < 1.e-9) return 1.;
|
---|
| 13 | double x = tet*PiDoL;
|
---|
| 14 | return sin(x)/x;
|
---|
| 15 | }
|
---|
| 16 |
|
---|
| 17 | double LobeGauss(double tet)
|
---|
| 18 | {
|
---|
| 19 | double x = tet*PiDoL;
|
---|
| 20 | return exp(-x*x/10.);
|
---|
| 21 | }
|
---|
| 22 |
|
---|
| 23 |
|
---|
| 24 | double LobeDipoleDemiLambda(double tet)
|
---|
| 25 | {
|
---|
| 26 | double L = 0.5;
|
---|
| 27 | double trad = acos(sin(tet));
|
---|
| 28 | double pil = M_PI*L;
|
---|
| 29 | double st = sin(trad), ct = cos(trad);
|
---|
| 30 | // L'antenne standing-wave
|
---|
| 31 | double v = 0.;
|
---|
| 32 | if(fabs(st)<1e-3) {
|
---|
| 33 | if(ct>0.) { // theta ~= 0
|
---|
| 34 | v = pil*sin(pil)*trad/2.; /* v *= v; */
|
---|
| 35 | } else { // theta ~= 180
|
---|
| 36 | v = pil*sin(pil)*(trad-M_PI)/2.; /* v *= v; */
|
---|
| 37 | }
|
---|
| 38 | } else {
|
---|
| 39 | v = (cos(pil*ct) - cos(pil))/st; /* v *= v; */
|
---|
| 40 | }
|
---|
| 41 |
|
---|
| 42 | // cout << " teta= " << tet << " trad= " << trad << " v=" << v << endl;
|
---|
| 43 | return v;
|
---|
| 44 |
|
---|
| 45 | }
|
---|
| 46 |
|
---|
| 47 |
|
---|
Note:
See
TracBrowser
for help on using the repository browser.