雷达公式实现(matlab)

雷达公式实现

代码来源:《雷达系统分析与设计(MATLAB版)(第三版)》

function [snr] = radar_eq(pt,freq,g,sigma,b,nf,loss,range)
% This program implements Eq.(1.63)
%% Inputs:
 % pt——峰值功率,W
 % freq——雷达中心频率,Hz
 % g——天线增益,dB
 % sigma——目标截面积,m^2
 % b——带宽,Hz
 % nf——噪声系数,dB
 % loss——雷达损耗,dB
 % range——目标距离(可以是一个单值或者一个向量),m

%% Outputs:
 % snr——SNR(单值或者向量,取决于目标距离),dB

%% 实现
c = 3.0e+8; % speed of light
lambda = c / freq; % wavelength
p_peak = 10*log10(pt); % convert peak power to dB
lambda_sqdb = 10*log10(lambda^2); % compute wavelength square in dB
sigmadb = 10*log10(sigma); % convert sigma to dB
four_pi_cub = 10*log10((4.0*pi)^3); % (4pi)^3 in dB
k_db = 10*log10(1.38e-23); % Boltzmann's constant in dB
to_db = 10*log10(290); % noise temp. in dB
b_db = 10*log10(b); % bandwidth in dB
range_pwr4_db = 10*log10(range.^4); % vector of target range^4 in dB
% implement Equation (1.63)
num = p_peak + g + g + lambda_sqdb + sigmadb; % 分子
den = four_pi_cub + k_db + to_db + b_db + nf + loss + range_pwr4_db; % 分母
snr = num - den;
return 
end

雷达公式实现(matlab)_第1张图片

你可能感兴趣的:(雷达,matlab,开发语言)