📄 aproxantenas.m
字号:
%Programa para comparar aproximaciones
clear all
close all
a=1
mu=1
Io=1
k=2*pi/6
theta=pi/8
y=0
max=100
for n=1:max
m(n)=n;
r(n)=m(n).*a;
%aproximaci髇 1
Aphi=((a^2*mu*Io)/4)*((i*k)/r(n) + 1/(r(n)^2))*sin(theta)*exp(-i*k*r(n))
mag=abs(Aphi);
h(n)=mag;
angl= angle(Aphi);
an(n)=angl;
%aproximaci髇 2 (Bessel)
Aphi2=((i*a*mu*Io)/2)*(exp(-i*k*r(n)))/r(n)*besselj(1,(k*a*sin(theta)))
mag1=abs(Aphi2);
h1(n)=mag1;
angl1= angle(Aphi2);
an1(n)=angl1;
% aproximaci髇 3 (Regla trapezoidal de aplicaci髇 Multiple)
%
%y1=(Io*cos(0)*exp(-i*k*sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(0))))/sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(0))%
%
%for p=(pi/2): (pi/2); ((3*pi)/2)
% y2=(Io*cos(p)*exp(-i*k*sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(p))))/sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(p))
% y= y + y2
%end
%
%y3=(Io*cos(2*pi)*exp(-i*k*sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(2*pi))))/sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(2*pi))%
%
%ha= (2*pi)*(y1+2*y+y3)*(1/(2*max))
%mag2=abs(ha)
%h2(n)=mag2
%angl2=angle(ha)
%an2(n)=angl2
% aproximacion 3 (M閠odo de Simpson 1/3)
y1=(Io*cos(0)*exp(-i*k*sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(0))))/sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(0));
y2=(Io*cos(pi)*exp(-i*k*sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(pi))))/sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(pi));
y3=(Io*cos(2*pi)*exp(-i*k*sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(2*pi))))/sqrt(r(n)^2+a^2-2*a*r(n)*sin(theta)*cos(2*pi));
l=(2*pi)/6;
aprox=(l/3)*(y1+4*y2+y3)*(mu/(4*pi));
mag2=abs(aprox);
h2(n)=mag2;
angl2=angle(aprox);
an2(n)=angl2;
end
%Secci髇 para graficar
plot (r, h);
hold on
plot(r, h1, 'r');
hold on
plot(r, h2, 'g');
hold on
xlabel('ITERACIONES')
ylabel('MAGNITUD')
legend('Aproximaci髇 1', 'Aproximaci髇 (Bessel)', 'Aproximaci髇 Simpson 1/3');
figure
plot(r, an);
hold on
plot(r, an1, 'r');
hold on
plot(r, an2, 'g');
hold on
xlabel('ITERACIONES')
ylabel('FASE')
legend('Aproximaci髇 1', 'Aproximaci髇 (Bessel)', 'Aproximaci髇 Simpson 1/3')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -