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))); }
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); }