<?php # -*- PHP -*- $OTHERURI="dish-beamwidth.php?LANG=other"; $NOCACHE=1; require("../include/head1.inc"); langfilt('FI: FI:Viestikallion työkaluja: Lautasen keilaleveys EN:Viestikallio Tools: Dish beamwidth'); require("../include/head2.inc"); langfilt('FI: FI:Viestikallion työkaluja: Lautasen keilaleveys EN:Viestikallio Tools: Dish beamwidth'); include("../include/head3.inc"); include("../include/menu.inc");
printf("<TABLE><TR><TD>\n");
if ($HTTP_GET_VARS["SOURCE"] != "" || $HTTP_GET_VARS["source"] != "") { printf("\n<FONT SIZE=1>\n"); highlight_file("dish-beamwidth.php"); printf("</FONT><P><HR><P>\n"); include("../include/sign-oh2mqk.inc"); printf("<P></TD></TR></TABLE>\n"); include("../include/base.inc"); include("../include/foot.inc"); exit; }
# - Frequency # - Diameter # - Feed form function (e.g. "1.3" for gaussian) # - Surface quality (Efficiency) # - NoiseTemp: for G/T noise temperature of feeds and supports
$FREQ = $HTTP_GET_VARS["FREQ"]; if ($FREQ == "") { $FREQ = $HTTP_POST_VARS["FREQ"]; } if ($FREQ == "") { $FREQ = 10.50; }
$DIAM = $HTTP_GET_VARS["DIAM"]; if ($DIAM == "") { $DIAM = $HTTP_POST_VARS["DIAM"]; } if ($DIAM == "" || $DIAM < 100 || $DIAM > 1000000) { $DIAM = 600.0; }
$FORM = $HTTP_GET_VARS["FORM"]; if ($FORM == "") { $FORM = $HTTP_POST_VARS["FORM"]; } if ($FORM == "" || $FORM < 1.0 || $FORM > 3.0) { $FORM = 1.3; }
$EFF = $HTTP_GET_VARS["EFF"]; if ($EFF == "") { $EFF = $HTTP_POST_VARS["EFF"]; } if ($EFF == "" || $EFF < 0.1 || $EFF > 1.0) { $EFF = 0.65; }
$TEMP = $HTTP_GET_VARS["TEMP"]; if ($TEMP == "") { $TEMP = $HTTP_POST_VARS["TEMP"]; } if ($TEMP == "" || $TEMP < 3 || $TEMP > 1000) { $TEMP = 290; }
langfilt('
<P>
FI:<H2><SUP>1</SUP>/<SUB>2</SUB>-tehon (3 dB) keilaleveydet paraboloidipeilijärjestelmille</H2> EN:<H2><SUP>1</SUP>/<SUB>2</SUB>-power (3 dB) beam widths for parabolic reflector systems</H2>
<P>
<FORM ACTION="dish-beamwidth.php" METHOD=POST> **:<TABLE><TR><TH ALIGN=LEFT> FI:Taajuus EN:Frequency **::<BR>(<I>f, [GHz]</I>) </TH><TD ALIGN=RIGHT> <INPUT TYPE="text" NAME="FREQ" SIZE=9 ALIGN=RIGHT VALUE="'.$FREQ.'"></TD> FI: <TD>Gigahertseinä</TD> EN: <TD>in GHz</TD> </TR>
**:<TR><TH ALIGN=LEFT> FI:Läpimitta EN:Diameter **::<BR>(<I>D, [mm]</I>) </TH><TD ALIGN=RIGHT> <INPUT TYPE="text" NAME="DIAM" SIZE=9 ALIGN=RIGHT VALUE="'.$DIAM.'"></TD> FI: <TD>millimetereissä</TD> EN: <TD>in millimeters</TD> </TR>
**:<TR><TH ALIGN=LEFT> FI:Syötön<BR>muotokerroin EN:Feed<BR>form-factor **::<BR>(<I>ff</I>)</TH><TD ALIGN=RIGHT> <INPUT TYPE="text" NAME="FORM" SIZE=9 ALIGN=RIGHT VALUE="'.$FORM.'"></TD> <TD>1.3 for Gaussian, 1.0 for ideal brick, range 1.0 to 3.0</TD> </TR>
**:<TR><TH ALIGN=LEFT> FI:Pinnan<BR>laatukerroin EN:Surface<BR>quality factor **::<BR>(<I>eta</I>) </TH><TD ALIGN=RIGHT> <INPUT TYPE="text" NAME="EFF" SIZE=9 ALIGN=RIGHT VALUE="'.$EFF.'"></TD> FI: <TD>arvot 0.1 - 1.0, oletus: 0.65</TD> EN: <TD>values 0.1 to 1.0, default: 0.65</TD> </TR>
**:<TR><TH ALIGN=LEFT> FI:Järjestelmän<BR>kohinalämpötila EN:System Noise<BR>Temperature **::<BR>(<I>T, [K]</I>) </TH><TD ALIGN=RIGHT> <INPUT TYPE="text" NAME="TEMP" SIZE=9 ALIGN=RIGHT VALUE="'.$TEMP.'"></TD> FI:<TD>Antennijärjestelmän kohinalämpötila.<BR> FI: Suunnattuna horisonttiin keila näkee noin 290K maan, FI: suunnattuna taivaalle se näkee 3K avaruuden + erilaiset hajakeilat. EN:<TD>Antenna System Temperature.<BR> EN: Beam to horizon, see 290K earth, EN: beam to sky and see 3K space + spillovers </TD> </TR> </TABLE> **: <INPUT TYPE="submit" NAME="doit" VALUE=" FI:Laske EN:Compute "> </FORM>
<P>
');
### ---- The business itself ----
$lambda = 299.792 / $FREQ; $rad3dB = $FORM * $lambda / $DIAM; $mrad3dB = $rad3dB * 1000.0; $deg3dB = rad2deg( $rad3dB ); $arcsec3dB = 3600.0 * $deg3dB;
$vgain = M_PI / $rad3dB; #$vgain = M_PI * $DIAM / $lambda / $FORM;
$pgain = $vgain * $vgain * $EFF;
# Gain = 4*pi*Aeff / lambda²
$gaindBi = log10($pgain) * 10.0;
$bits3dB = log(2.000 * $vgain)/log(2.0); $bitspoint = log(20.00 * $vgain)/log(2.0); $bitstrack = log(200.0 * $vgain)/log(2.0);
$tempdB = 10.0 * log10($TEMP); $GperT = $gaindBi - $tempdB;
### ---- present the results ----
echo("<A NAME=\"result\"></A><P>\n");
echo("<TABLE>\n");
echo('<TR>'); langfilt('**:<TH ALIGN=LEFT> FI:Taajuus EN:Frequency :</TH>'); printf(" <TD ALIGN=RIGHT> %.1f </TD>\n",$FREQ); echo(" <TH ALIGN=LEFT>[GHz] </TH>\n");
#echo('<TR>'); langfilt('**:<TH ALIGN=LEFT ROWSPAN=4 VALIGN=TOP> FI:3dB-<BR>keilaleveys EN:3dB<BR>beam width :</TH>'); printf(" <TD ALIGN=RIGHT> %.5f </TD>\n",$mrad3dB); echo(" <TH ALIGN=LEFT>[mRAD]</TH>\n");
# -------------
echo('<TR>'); langfilt('**:<TH ALIGN=LEFT> FI:Aallonpituus EN:Wavelength :</TH>'); printf(" <TD ALIGN=RIGHT> %.1f </TD>\n",$lambda); echo(" <TH ALIGN=LEFT>[mm]</TH>\n");
#echo('<TR>'); #langfilt('**:<TH ALIGN=LEFT> #FI:3dB-<BR>keilaleveys #EN:3dB<BR>beam width #:</TH>'); printf(" <TD ALIGN=RIGHT> %.5f </TD>\n",$deg3dB); langfilt("**: <TH ALIGN=LEFT>[ FI:astetta EN:degrees ]</TH>");
# -------------
echo('<TR>'); langfilt('**:<TH ALIGN=LEFT> FI:Läpimitta EN:Diameter :</TH>'); printf(" <TD ALIGN=RIGHT> %d </TD>\n",$DIAM); echo(" <TH ALIGN=LEFT>[mm]</TH>\n");
#echo('<TR>'); #langfilt('**:<TH ALIGN=LEFT> #FI:3dB-<BR>keilaleveys #EN:3dB<BR>beam width #:</TH>"); printf(" <TD ALIGN=RIGHT> %.2f </TD>\n",$arcsec3dB); langfilt("**: <TH ALIGN=LEFT>[ FI:kaarisekuntia EN:arc secs ]</TH>");
# -------------
echo('<TR>'); langfilt('**:<TH ALIGN=LEFT> FI:Vahvistus EN:Gain :</TH>'); printf(" <TD ALIGN=RIGHT> %.1f </TD>\n",$gaindBi); echo(" <TH ALIGN=LEFT>[dBi]</TH>\n");
#echo('<TR>'); #langfilt('**:<TH ALIGN=LEFT> #FI:3dB-<BR>keilaleveys #EN:3dB<BR>beam width #:</TH>'); printf(" <TD ALIGN=RIGHT> %.2f </TD>\n",$bits3dB); langfilt("**: <TH ALIGN=LEFT>[ FI:bitteinä EN:in bits ]</TH>");
# -------------
echo('<TR>'); echo("<TH ALIGN=LEFT>T<SUB>[dB K]</SUB>:</TH>\n"); printf(" <TD ALIGN=RIGHT> %.1f </TD>\n",$tempdB); echo(" <TH ALIGN=LEFT>[dB K]</TH>\n");
#echo('<TR>'); langfilt('**:<TH ALIGN=LEFT> FI:Suuntaus EN:Pointing :</TH>'); printf(" <TD ALIGN=RIGHT> %.2f </TD>\n",$bitspoint); langfilt("**: <TH ALIGN=LEFT>[ FI:bitteinä EN:in bits ]</TH>");
# -------------
echo('<TR>'); echo("<TH ALIGN=LEFT>G/T:</TH>\n"); printf(" <TD ALIGN=RIGHT> %.1f </TD>\n",$GperT); echo(" <TH ALIGN=LEFT>[dB/K]</TH>\n"); langfilt('**:<TH ALIGN=LEFT> FI:Seuranta EN:Tracking :</TH>'); printf(" <TD ALIGN=RIGHT> %.2f </TD>\n",$bitstrack); langfilt("**: <TH ALIGN=LEFT>[ FI:bitteinä EN:in bits ]</TH>");
# -------------
echo('<TR>'); echo('<TH></TH><TD></TD><TH></TH>'); langfilt('**:<TH ALIGN=LEFT> FI:Seuranta EN:Tracking :</TH>'); printf(" <TD ALIGN=RIGHT> %.4f </TD>\n",$arcsec3dB*0.01); langfilt("**: <TH ALIGN=LEFT>[ FI:kaarisekuntia EN:arc secs ]</TH>");
echo("</TABLE>\n");
langfilt('
<P>
FI: Yllä olevassa kulmia kuvaavat luvut eivät ole tarkempia kuin FI: suunnilleen 2-3:n numeron verran. FI: Pääasialliset syyt tähän ovat syöttöparametrien epätarkkuudet. EN: Accuracies of the angles above are limited to about 2-3 digits EN: due to the accuracy (or lack, thereof) of the input values.
<P> FI: Siis: 12.34567 ja 0.001234567 pitää ymmärtää FI: lukuina 12.3 ja 0.00123. EN: That is: 12.34567, and 0.001234567 should be considered as EN: 12.3 and 0.00123 respectively!
<P> FI: Desibeleinä ilmaistavat suhteet ovat noin yhdellä desimaalilla, FI: samaa luokkaa ovat myös bittimäärät. EN: Decibel ratios are presentable with one decimal, same order EN: of accuracy applies also on the numbers of bits.
<P>
<P><HR><P> <P>
FI: <H2>Laskentamenetelmä:</H2> EN: <H2>The computation method:</H2> <P>
FI:<A HREF="dish-beamwidth.php?source=1">Lähdekoodi tälle sivulle</A> EN:<A HREF="dish-beamwidth.php?source=1">Source for this page</A>
<P> <UL> FI: <LI> Aallonpituus: <I>Lambda<SUB>[mm]</SUB> = 299.792 / f [GHz]</I> EN: <LI> Wavelength: <I>Lambda<SUB>[mm]</SUB> = 299.792 / f [GHz]</I>
</UL><UL>
FI: <LI> Diffraktiomallin likiarvomenetelmällä:<BR> FI: <I>Puolitehon (3dB) keilaleveys<SUB>[radiaaneina]</SUB> = FI: Lambda * ff / D</I> EN: <LI> From the diffraction approximation:<BR> EN: <I>Half-power (3dB) beam-width<SUB>[radians]</SUB> = EN: Lambda * ff / D</I>
</UL><UL>
FI: <LI> Vahvistus saadaan diffraktiomallin likiarvosta seuraavasti:<BR> EN: <LI> Gain comes from diffraction approximation via:<BR> FI: <I>Jännitevahvistus = Pi * D / ( Lambda * ff )</I>, EN: <I>voltage gain = Pi * D / ( Lambda * ff )</I>,
<P> FI: sitten: EN: then: <BR>
<TABLE BORDER=0> **:<TR><TD VALIGN=BASELINE> FI: <I>Tehovahvistus</I> EN: <I>power gain</I>
**: </TD><TD VALIGN=BASELINE> FI: <I>= jännitevahvistus<SUP>2</SUP> * eta</I> EN: <I>= voltage-gain<SUP>2</SUP> * eta</I> </TD></TR> <TR><TD> </TD> <TD VALIGN=BASELINE> <I>= eta * ( Pi * D / ( Lambda * ff ))<SUP>2</SUP></I>, </TD> </TR> </TABLE> <P>
FI: ja viimein <I>[dBi]</I> muodossa: EN: and finally in <I>[dBi]</I>: <BR> FI: <I>Tehovahvistus<SUB>[dBi]</SUB> EN: <I>power gain<SUB>[dBi]</SUB>
= 10 * log<SUB>10</SUB>( ( eta * Pi * D / ( Lambda * ff ))<SUP>2</SUP>)</I>
</UL><UL>
FI: <LI> "<I>Bitteinä</I>" puolitehokeilaleveyksien määrä per ympyrä:<BR> EN: <LI> "<I>Bits</I>" for half-power beam-width per 2*Pi:<BR>
<I> = log<SUB>2</SUB>( 2 * Pi * D / ( Lambda * ff ))</I>
</UL><UL>
FI: <LI> Suuntauksen pitää olla noin kerroin 10 parempi, kuin 3dB keilaleveys. EN: <LI> Pointing needs to be circa factor 10 better than the 3dB beam-width.
</UL><UL>
FI: <LI> Seurannan pitää olla <B>vielä toisen</B> kertoimen 10 parempi kuin FI: suuntauksen! FI: <BR> Mitä enemmän bittejä, sitä parempi. EN: <LI> Tracking needs to be <B>another</B> factor 10 better than pointing! EN: <BR> The more there are bits, the merrier.
</UL><UL>
FI: <LI> Jokainen kerroin 10 tarkoittaa 3.322 "bittiä" anturien erottelukyvyssä. EN: <LI> Each factor 10 means 3.322 "bits" for encoder resolution. ( 1/log<SUB>10</SUB>(2) ) </UL><UL>
FI: <LI> Systeemin "hyvyysluku" ("<I>Figure of Merit</I>") G/T lasketaan: EN: <LI> Figure-of-Merit: G/T is computed as: <BR> <TABLE> **:<TR><TD VALIGN=BASELINE><I> FI: G/T<SUB>[dB/K]</SUB> EN: G/T<SUB>[dB/K]</SUB> = </I></TD> **: <TD VALIGN=BASELINE><I> FI: Tehovahvistus<SUB>[dBi]</SUB> EN: Power gain<SUB>[dBi]</SUB> </I></TD></TR> <TR><TD> </TD> **: <TD><I> - FI: 10 * log<SUB>10</SUB>( Systeemikohinalämpötila<SUB>[K]</SUB> ) EN: 10 * log<SUB>10</SUB>( Temp<SUB>[K]</SUB> ) </I></TD></TR> </TABLE> </UL>
<P>
FI: Puolentehon- (3dB) keilaleveydet riippuvat huomattavassa määrin FI: syötön ns. "valaisukuviosta" , joka vaikuttaa huomattavasti FI: mm. sivukeilojen muotoon. EN: The 3dB beam-width depends a lot also about the aperture illumination EN: pattern, which also defines side-lobe patterns, etc.
<P>
FI: Yllä olevissa yhtälöissä oleva "1.3" tulee FI: valaisukuviosta joka on maksimissaan keskellä ja heikkenee FI: tasaisesti nollaan reunalle tultaessa. FI: Tuo antaa hyvän likiarvon Gaussilaiselle valaisukuviolle. EN: The magic "1.3" above is for illumination pattern which is maximum at EN: the center, and falls down linearly to the edge, where it reaches zero.
<P>
FI: Yllä systeemin "hyvyysluku" G/T määritellään laskennallisesti, FI: oheinen SETI-League:n artikkeli kertoo mittausdataan perustuvan FI: määritysmenetelmän: EN: Above the Figure of Merit (G/T) is determined computationally from EN: given inputs. EN: Referred SETI-League article describes how to do it from measurement data:
<BLOCKQUOTE> <A HREF="http://www.setileague.org/articles/g-t.htm">SETI-League: Determination of G/T</A> </BLOCKQUOTE>
<P> <HR> <P> ');
include("../include/sign-oh2mqk.inc");
printf("<P></TD></TR></TABLE>\n");
include("../include/base.inc"); include("../include/foot.inc");
?>
Matti Aarnio <matti.aarnio@zmailer.org>; OH2MQK
|