public static double CalculateReceiverPower(double transmitterPower, double transmitterDirectionalFactor,
                                             double receiverDirectionalFactor, double transmitterEfficiency, double receiverEfficiency,
                                             double frequency, double radius)
 {
     return((transmitterEfficiency * transmitterPower * transmitterDirectionalFactor * receiverDirectionalFactor * receiverEfficiency * Math.Pow(ValuesConverter.GetWaveLength(frequency), 2)) / (Math.Pow((4 * Math.PI * radius), 2)));
 }
 public static double RetreivePoitingVectorModule(double realTransmittingPower, double radius)
 {
     return(Math.Abs(realTransmittingPower / ValuesConverter.CalculateSphereSquare(radius)));
 }
 public static double PowerFluxDensity(double transmitterPower, double transmitterEfficiency,
                                       double directionalFactor, double radius)
 {
     return((transmitterEfficiency * transmitterPower * directionalFactor) / (ValuesConverter.CalculateSphereSquare(radius)));
 }
示例#4
0
        public double GetMaximumTransmittingRange()
        {
            var transmitterTermalExtinction =
                FiderCalculation.FiderExtinction(TransmitterFiderLength, TransmitterRunningAttenuationRatio);
            var receiverTermalExtinction =
                FiderCalculation.FiderExtinction(ReceiverFiderLength, ReceiverRunningAttenuationRatio);
            var transmitterAntennaEfficiency =
                FiderCalculation.RetreiveAntennaEfficiency(transmitterTermalExtinction, TransmittingSWR);
            var receiverAntennaEfficiency =
                FiderCalculation.RetreiveAntennaEfficiency(receiverTermalExtinction, ReceiverSWR);
            var pointingVector = FiderCalculation.RetreivePoitingVectorModule(TransmittingPower, TransmittingFading,
                                                                              transmitterAntennaEfficiency, TransmittingRange);
            var powerFluxDensity = FiderCalculation.PowerFluxDensity(TransmittingPower, transmitterAntennaEfficiency,
                                                                     TransmittingFading, TransmittingRange);
            var maxEFS = FiderCalculation.CalculateElectricalFieldStrengthAmplitude(TransmittingPower,
                                                                                    transmitterAntennaEfficiency, TransmittingFading, TransmittingRange);
            var receiverPower = FiderCalculation.CalculateReceiverPower(TransmittingPower, TransmittingFading,
                                                                        ReceiverFading, receiverAntennaEfficiency, transmitterAntennaEfficiency,
                                                                        Frequency, TransmittingRange);
            var maximumTransmittingRange = FiderCalculation.CalculateTransmittingRange(receiverPower, TransmittingRange,
                                                                                       ValuesConverter.GetReceiverSensivity(ReceiverSensivity));

            return(maximumTransmittingRange);
        }