Matlab - Calcular SLL de patrón de radiación

 
Vista:
sin imagen de perfil
Val: 55
Ha aumentado su posición en 2 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Calcular SLL de patrón de radiación

Publicado por Alondra (35 intervenciones) el 23/03/2017 22:58:23
Solicito de su ayuda para poder resolver un problema de codificación, se trata de obtener el SLL de un patrón de radiación de una antena. Ya lo he codificado y todo funciona correctamente y hasta allí no tengo ningún problema pero cuando anexo ese código como una función a otro que lo estará iterando más de 100 veces, el código me presenta error y falla en diferentes iteraciones, no siempre en la misma. Lo que me gustaría saber es si ustedes saben de una manera optima en la que se pueda codificar la obtención del SLL que se pueda iterar muchas veces y no tenga algún problema al hacerlo.
Esta es la sección donde ejecuto el calculo del SLL para que se den una idea como lo hago.
1
2
3
4
5
6
7
8
9
10
puntos=540;
... %cuerpo del resto del código
 fx=AF_norm1; % FACTOR DE ARREGLO NORMALIZADO
        for i=puntos/2+1:puntos        % ENCUENTRA PRIMER NULO O BIEN EL PUNTO A PARTIR DONDE
            if (fx(i)<fx(i+1)) % SE EVALUA LA FUNCION PARA ENCONTRAR EL MAXIMO PUNTO
            break;
            end
        end
SLL(s)=max(fx(i:puntos)); % MAXIMO DE LOS LOBULOS LATERALES
SLL_ndB=20*log10(SLL);
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JESUS DAVID ARIZA ROYETH
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Calcular SLL de patrón de radiación

Publicado por JESUS DAVID ARIZA ROYETH (1818 intervenciones) el 24/03/2017 06:18:16
debes investigar por qué se presentan fallas , qué tipo de errores te da , igual puedes hacer try end para que el algoritmo en caso de error no se detenga

try
funcion a ejecutar
end

trata de anexar toda la información posible para que se te pueda ayudar completamente

saludos
https://www.facebook.com/royethmatlab/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 55
Ha aumentado su posición en 2 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Calcular SLL de patrón de radiación

Publicado por Pilar (35 intervenciones) el 13/04/2017 18:40:48
Este es el código completo que utilizo para obtener la función y la gráfica de donde trato de obtener el segundo pico mayor con el código antes anexado.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
clc; clear;
N=10;
x=[0.5 1 1.5 2 2.5 3 3.5 4 4.5 5];  %localizacion de las antenas en X uniformemente espaciadas en 05 lambda
y=1;                                %localizacion de las antenas en Y
points=540;
teta=linspace(-pi/2,pi/2,points);   %-90 a 90 
phi=linspace(0,pi,points);          %0 a 180
I=[0.1 0.6 0.9 0.2 0.7 0.5 0.6 0.9 0.9 0.1];
%-------------------- Obtiene el Array Factor ----------------------------
for arm=1:4
AF_sum=0;
AF_sum1=0;
for b=1:N
    AF_complex1=I(b).*exp(1i.*((2*pi.*x(b).*sin(teta)))); %AF 
    AF_sum1=AF_sum1+AF_complex1;
end
AF_abs1=abs(AF_sum1); %AF absoluto 
AF_norm1=AF_abs1/max(max(AF_abs1)); %AF normalizado 
end
linea=linspace(-90,90,points);
xlabel('\theta')
ylabel('P energy (dB)')
grid on; hold on;
plot(linea,20*log10(AF_norm1),'r')
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar