Files
FAR_CS/0 - example/wzk - RDA/get_range_speed_val.m
T
2024-11-11 16:32:53 +08:00

35 lines
950 B
Matlab

function [distance_v, speed_v] = get_range_speed_val(PRF, fs, fc, numP, gamma_r, gamma_d)
% Calculates range and speed values for node index
%
% Usage:
% [distance_v, speed_v] = get_range_speed_val(PRF, fs, fc, numP, gamma_r, gamma_d)
%
% Inputs:
% PRF: Pulse Repetition frequency
% fs: Sampling frequency
% fc: Carrier frequency
% numP: Number of pulses
% gamma_r: Range compression ratio(0.5)
% gamma_d: Doppler compression ratio(0.5)
%
% Outputs:
% distance_v: Real distance value
% speed_v: Real speed value
% parameters
if nargin < 6
gamma_d = 0.5;
end
if nargin < 5
gamma_r = 0.5;
end
c = 3e8;
Tr = 1 / PRF;
lambda = c / fc;
% calculate
distance_v = 0: (c / fs / 2 * gamma_r) : (Tr * c / 2 - c / fs / 2 * gamma_r);
speed_v = -(-PRF / 2: PRF / numP * gamma_d: PRF / 2 - PRF / numP * gamma_d) * lambda / 2 ;
end