rcs_isosceles.m
上传用户:szahd2008
上传日期:2020-09-25
资源大小:1275k
文件大小:1k
源码类别:

传真(Fax)编程

开发平台:

Matlab

  1. function [rcs] = rcs_isosceles (a, b, freq, phi)
  2. % This program caculates the backscattered RCS for a perfectly
  3. % conducting triangular flat plate, using Eq.s (2.65) through (2.67)
  4. % The default case is to assume phi = pi/2. These equations are
  5. % valid for aspect angles less than 30 degrees
  6. % Users may vary wavelngth, or plate's dimensions
  7. % Enter a, b, and lambda
  8. A = a * b / 2.;
  9. lambda = 3.e+8 / freq;
  10. ka = 2. * pi / lambda;
  11. kb = 2. *pi / lambda;
  12. % Compute theta vector
  13. theta_deg = 0.01:.05:89;
  14. theta = (pi /180.) .* theta_deg;
  15. alpha = ka * cos(phi) .* sin(theta);
  16. beta =  kb * sin(phi) .* sin(theta);
  17. if (phi == pi / 2)
  18.   rcs = (4. * pi * A^2 / lambda^2) .* cos(theta).^2 .* (sin(beta ./ 2)).^4 ...
  19.      ./ (beta./2).^4 + eps;
  20. end
  21. if (phi == 0)
  22.    rcs = (4. * pi * A^2 / lambda^2) .* cos(theta).^2 .* ...
  23.       ((sin(alpha).^4 ./ alpha.^4) + (sin(2 .* alpha) - 2.*alpha).^2 ...
  24.       ./ (4 .* alpha.^4)) + eps;
  25. end
  26. if (phi ~= 0 & phi ~= pi/2)
  27.    sigmao1 = 0.25 *sin(phi)^2 .* ((2. * a / b) * cos(phi) .* ...
  28.       sin(beta) - sin(phi) .* sin(2. .* alpha)).^2;
  29.    fact1 = (alpha).^2 - (.5 .* beta).^2;
  30.    fact2 = (sin(alpha).^2 - sin(.5 .* beta).^2).^2;
  31.    sigmao = (fact2 + sigmao1) ./ fact1;
  32.    rcs = (4. * pi * A^2 / lambda^2) .* cos(theta).^2 .* sigmao + eps;
  33. end
  34. rcsdb = 10. *log10(rcs);
  35. plot(theta_deg,rcsdb,'k','linewidth', 1.)
  36. xlabel ('Aspect angle - degrees');
  37. ylabel ('RCS - dBsm')
  38. grid