Home

Staff
     
Consulting
               
Mathematica Tools

Customer Quotes
        
Contact

Older Mathematica Items

 

 

 

 

 

Scientific Arts

TroposphericAttenuation

•Functions and parameters contained in this package:

In[1]:=

RadarPackageFunctions[TroposphericAttenuation, 2]

Out[1]//DisplayForm=

[Graphics:HTMLFiles/index_2.gif]

•Package functions and their basic documentation along with simple examples

•AbsorptionCoefficientGasses

[Graphics:HTMLFiles/index_3.gif]

In[2]:=

AbsorptionCoefficientGasses[Pressure, WaterDensity, Temperature, Frequency]

Out[2]=

AbsorptionCoefficientGasses[Pressure, WaterDensity, Temperature, Frequency]

The absorption coefficient expressed in dB/kmis given by

1/MetersToKilometers AbsorptionCoefficientGasses[Pressure, WaterDensity, Temperature, Frequency]

To see an example of this we use the 1976 US standard atmosphere as a function of height and the Mid Latitude mean water vapor density as a funciton of height. Here is the value for a milimeter band frequency of 220 GHz:

In[3]:=

FrequencyBand[220 GHz]

Out[3]=

MillimeterBand

In[4]:=

h = 0 ; 1/MetersToKilometers AbsorptionCoefficientGasses[Pressure1976[h], WaterVaporDensityMidLatitudeMean[h], Temperature1976[h], 220 GHz]

Out[5]=

2.5087752256979106`

Of course at a higher elevation the attenuation is less:

In[6]:=

h = 5 KilometersToMeters ; 1/MetersToKilometers AbsorptionCoefficientGasses[Pressure1976[h], WaterVaporDensityMidLatitudeMean[h], Temperature1976[h], 220 GHz]

Out[7]=

0.20098721878997752`

Here is a plot of the absorption coefficient as a function of frequency at sea level

In[8]:=

LogLogPlot[1/MetersToKilometers AbsorptionCoefficientGasses[Pressure1976[0], WaterVaporDensity ... 76[0], ν GHz], {ν, .1 , 300}, PlotRange -> All, Frame -> True, Axes -> False] ;

[Graphics:HTMLFiles/index_15.gif]

For comparison, here is the same plot at a height of 20 kilometers.s

In[9]:=

LogLogPlot[1/MetersToKilometers AbsorptionCoefficientGasses[Pressure1976[20 KilometersToMeters ... ters], ν GHz], {ν, .1 , 300}, PlotRange -> All, Frame -> True, Axes -> False] ;

[Graphics:HTMLFiles/index_17.gif]

•AbsorptionCoefficientOxygen

[Graphics:HTMLFiles/index_18.gif]

•AbsorptionCoefficientRain

[Graphics:HTMLFiles/index_19.gif]

A plot for a particular rain rate as a funciton of frequency in GHz (in dB/km):

In[10]:=

acRainV = Plot[AbsorptionCoefficientRain[4, ν GHz]/MetersToKilometers, {ν, 1, 400}, Frame -> True] ;

[Graphics:HTMLFiles/index_21.gif]

Here is the corresponding plot for horizontal polarization:

In[11]:=

acRainH = Plot[AbsorptionCoefficientRain[4, ν GHz, Polarization -> HPolarization]/MetersToKilometers, {ν, 1, 400}, Frame -> True, PlotStyle -> RGBColor[.7, 0, 0]] ;

[Graphics:HTMLFiles/index_23.gif]

In[12]:=

Show[acRainV, acRainH] ;

[Graphics:HTMLFiles/index_25.gif]

In[13]:=

AbsorptionCoefficientRain[{r, f}]

Out[13]=

(2387 13/582016301^(1/2) r^(13000 + 372 (1 - (1 + (2500 Log[5]^2)/(9 Log[10]^2))^(1/2)))/10000)/2400000

•AbsorptionCoefficientWater

[Graphics:HTMLFiles/index_28.gif]

•AngleBiasError

[Graphics:HTMLFiles/index_29.gif]

In[14]:=

AngleBiasError[30, 100, 1 Degree, IndexOfRefractionModelExponential]

Out[14]=

° - Removed[ElevationAngleGeometric][30, 30, 3959.810814905712`, EarthRadiusScale -> 1]

•ElevationAngle

[Graphics:HTMLFiles/index_32.gif]

In[15]:=

ElevationAngle[30, 100, 1 Degree, IndexOfRefractionModelExponential] - Degree

Out[15]=

0.0004448922125395126`

•GroundRangeRayTrace

[Graphics:HTMLFiles/index_35.gif]

In[16]:=

Clear[iorModel] ;  iorModel = IndexOfRefractionModelTropospheric[Temperature1976[#], Pressure1 ... aterVaporDensityToPartialPressure[WaterVaporDensityMidLatitudeMean[#], Temperature1976[#]]] &

Out[17]=

IndexOfRefractionModelTropospheric[Temperature1976[#1], Pressure1976[#1], WaterVaporDensityToPartialPressure[WaterVaporDensityMidLatitudeMean[#1], Temperature1976[#1]]] &

In[18]:=

GroundRangeRayTrace[10, 100, 1 Degree, iorModel]

Out[18]=

5068.780536514914`

In[19]:=

GroundRangeGeometric[10, 100, {1 Degree}] // N

Out[19]=

5069.377707117105`

In[20]:=

? GroundRangeGeometric

GroundRangeGeometric[TransmitterHeight, TargetHeight, SlantRange] gives the arclength from the ... [TransmitterHeight, TargetHeight, {ElevationAngle}], uses the elevation angle in radians as input.

•LensLoss

[Graphics:HTMLFiles/index_44.gif]

In[22]:=

? IndexOfRefractionModelTropospheric

IndexOfRefractionModelTropospheric[Temperature, Pressure, PartialPressureH2O] gives the refrac ... and  partialPressureH2O is the partial pressure of the water vapor content in millibars.

IndexOfRefractionModelTropospheric[Temperature, Pressure, PartialPressureH2O] gives the refrac ... and  partialPressureH2O is the partial pressure of the water vapor content in millibars.

In[23]:=

Clear[iorModel] ;  iorModel = IndexOfRefractionModelTropospheric[TemperatureCOSPAR[July, #, 45 ... tyToPartialPressure[WaterVaporDensityMidLatitudeMean[#], TemperatureCOSPAR[July, #, 45]]] & ;

In[25]:=

.375

Out[25]=

0.375`

In[26]:=

LensLoss[1, 100000, 1    Degree, iorModel]^2 // TodB

Out[26]=

-1.0749276766583973`

In[27]:=

Options[GroundRangeRayTrace]

Out[27]=

{SphereRadius :> $AverageEarthRadius, AccuracyGoal -> ∞, Compiled -> True, Gaus ... rsion -> 0, PrecisionGoal -> Automatic, SingularityDepth -> 4, WorkingPrecision -> 16}

In[28]:=

GroundRangeRayTrace[1, 90000, 0.01 Degree, iorModel]

Out[28]=

1.1322636127395243`*^6

In[29]:=

SlantRangeRayTrace[1, 90000, 0.01 Degree, iorModel]

Out[29]=

1.1422906583130674`*^6

In[30]:=

SlantRangeGeometric[1, 90000, {0.01 Degree}]

Out[30]=

1.238326784879155`*^6

•MeasuredSlantRangeRayTrace

[Graphics:HTMLFiles/index_62.gif]

In[31]:=

MeasuredSlantRangeRayTrace[30, 100, Degree, IndexOfRefractionModelExponential]

Out[31]=

3961.697935284382`

In[32]:=

SlantRangeRayTrace[30, 100, Degree, IndexOfRefractionModelExponential]

Out[32]=

3960.469817888801`

In[33]:=

SlantRangeRayTrace[30, 100, - 2 Degree, IndexOfRefractionModelExponential]

Out[33]=

1999.3374151314242`

In[34]:=

SlantRangeRayTrace[30, 100, 2 Degree, IndexOfRefractionModelExponential]

Out[34]=

1999.3374151314242`

•RangeBiasError

[Graphics:HTMLFiles/index_71.gif]

•RayTraceGeneral

[Graphics:HTMLFiles/index_72.gif]

•SlantRangeRayTrace

[Graphics:HTMLFiles/index_73.gif]

•TroposphericAttenuation

[Graphics:HTMLFiles/index_74.gif]

•WaterPartialPressureToVaporDensity

[Graphics:HTMLFiles/index_75.gif]

In[35]:=

WaterPartialPressureToVaporDensity[p _ p, t]

Out[35]=

(216.729548704614` p _ p)/t

•WaterVaporDensityToPartialPressure

[Graphics:HTMLFiles/index_78.gif]

In[36]:=

WaterVaporDensityToPartialPressure[ρ, t]

Out[36]=

0.0046140455049944505` t ρ

Of course these two functions are inverses of each other:

In[37]:=

WaterVaporDensityToPartialPressure[WaterPartialPressureToVaporDensity[p _ p, t], t]

Out[37]=

1.` p _ p



For further information on our services send email to info@scientificarts.com .
Contents of this web site Copyright © 1999-2011, Scientific Arts, LLC.

d