Attachment 'fra0.c'
Download 1 // fra0.c fraunhofer rings and low elevation SSPS rectenna.
2 // cc -o fra0 fra0.c -lm
3 //
4 // This computes the path from an -5° SSPS to a rectenna at 46° N
5 // and 30° west. This gives us the antenna elevation. We then
6 // assume a circular aperture, and a rectenna expanded by 1/sin(elevation)
7 // to catch diagonal beams.
8 //
9 // Skolnik says 0.7dB loss at 2.5 GHz and 25 degrees elevation,
10 // thus an 85% efficiency multiplier. If the rectenna is 85%
11 // efficient, and we have 91% beam capture efficiency and 95%
12 // electrical grid efficiency, the broadcast to load efficiency
13 // is 69% . That turns 7 GW broadcast into 4.8 GW to the customer.
14
15 #define STEP 0.001 // m q step
16 #define DMAX 2113.1000 // m rectenna diameter
17 #define APER 5000.0000 // m ssps aperture diameter
18
19 #define FREQ 2.450E+09 // hz frequency
20 #define C 2.998E+08 // m/s lightspeed
21 #define GEO 42164000 // m GEO radius
22 #define RE 6371000 // m Earth radius
23 #define SOUTH 5.00 // degrees SSPS offset latitude south
24 #define LAT 46.1920 // degrees rectenna latitude
25 #define LON 30.0000 // degrees rectenna longitude west
26
27 #include <math.h>
28 #include <stdio.h>
29
30 int main() {
31 double pi = 4.0*atan(1.0) ;// pi
32 double d2r = atan(1.0)/45.0 ;// degrees to radians
33 double r2d = 45.0/atan(1.0) ;// radians to degrees
34 double dNS = SOUTH+LAT ;// deg northsouth
35 double rNS = d2r*dNS ;// rad northsouth
36 double wl = (C/FREQ) ;// m wavelength
37 double rEW = d2r*LON ;// rad eastwest
38 double rtot = acos(cos(rNS)*cos(rEW)) ;// rad total angle
39 double dtot = r2d*rtot ;// deg total angle
40 double zz = RE*sin(rtot) ;// m Z
41 double xg = GEO-RE*cos(rtot) ;// m X to geo
42 double dist = sqrt( zz*zz + xg*xg ) ;// m distance
43 double rel = atan(xg/zz)-rtot ;// rad elevation
44 double del = r2d*rel ;// deg elevation
45 double d = APER ;// m aperture diameter
46 double xsca = pi * d / (wl*dist) ;// 1/m scaling argument
47
48 double qs = STEP ;// m integration step
49 double q ;// m center of annulus
50
51 double i0p = 2.0*qs/xsca*xsca ;// 1/m2 power scaling
52 double pow = 0.0 ;// total power
53 double bs ;// bessel function
54 double btest ;//
55 double rmax = 0.5*DMAX ;// m rectenna diameter
56
57 for( q = 0.5*qs ; q < DMAX ; q += STEP ) {
58 bs = j1(xsca*q) ;// m2 additional area
59 pow += bs * bs / q ;//
60 }
61 pow *= i0p ;//
62 double lost = 1.0 - pow ;//
63 double sin1 = 1/sin(rel) ;//
64 double sin2 = DMAX/sin(rel) ;//
65
66 printf( "%10.3e bessel\n" , bs ) ;
67 printf( "%10.7f fractional power\n" , pow ) ;
68 printf( "%10.7f lost power\n" , lost ) ;
69 printf( "%9.1f m Rectenna diameter\n" , DMAX ) ;
70 printf( "%9.1f m SSPS diameter\n" , APER ) ;
71 printf( "%9.4f° SSPS south\n" , SOUTH ) ;
72 printf( "%9.4f° Rectenna latitude\n" , LAT ) ;
73 printf( "%9.4f° Rectenna longitude\n" , LON ) ;
74 printf( "%9.4f° Rectenna total angle\n" , dtot ) ;
75 printf( "%9.4f° Rectenna elevation\n" , del ) ;
76 printf( "%9.5f Rectenna 1/sin\n" , sin1 ) ;
77 printf( "%9.1f Rectenna D/sin\n" , sin2 ) ;
78 printf( "%10.3e m distance\n" , dist ) ;
79 return(0);
80 }
Attached Files
To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.You are not allowed to attach a file to this page.