Matlab - Diagrama de radiacion de un dipolo

 
Vista:

Diagrama de radiacion de un dipolo

Publicado por pili (11 intervenciones) el 11/02/2009 11:16:14
Hola a todos los programadores que andeis por aki!

Tengo que entregar en dos dias el diagrama de radiacion de un dipolo programado en matlab para aprobar una asignatura que tengo condicionada.
A parte de tener poca idea de Matlab, no me sale.

Según yo entiendo, el diagrama de radiacion deberia ser una matriz de elementos en theta y en phi,pero como para el dipolo sólo depende de theta,no se cómo hacerlo.
Y pintarlo despues en superficie, es para mi un mundo...si alguien pudiera ayudarme, le estaria eternamente agradecida!!!
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

RE:Diagrama de radiacion de un dipolo

Publicado por Jose (1 intervención) el 16/07/2009 02:20:25
Hola pili:

te escribo este mail para que tu me hagas el gran favor de enviarme el codigo del diagrama de radiacion del dipolo, ya que tambien estoy enredado con eso.

te agradezco mucho.
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

RE:Diagrama de radiacion de un dipolo

Publicado por Rosa (11 intervenciones) el 17/07/2009 00:25:20
tan sencillo como esto

function [C]=dipole_ant

theta=0:180;
phi=0:360;
c=abs(sind(theta))';
C=repmat(c,1,361)';

un saludo
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

RE:Diagrama de radiacion de un dipolo

Publicado por Kay (1 intervención) el 12/05/2010 01:57:03
Asi de sencillo con esos comandos? Y si quisiera graficar un monopolo? Como haria?
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

RE:Diagrama de radiacion de un dipolo

Publicado por Francisco Zeas (2 intervenciones) el 08/02/2013 22:26:08
Disculpa pero esto no grafica.
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

RE:Diagrama de radiacion de un dipolo

Publicado por Francisco Zeas (2 intervenciones) el 08/02/2013 22:33:40
Abajo me equivoqué XD, pero disculpa es que no grafica tu función, gracias de antemano.
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

RE:Diagrama de radiacion de un dipolo

Publicado por oso (1 intervención) el 21/09/2011 07:12:28
yo hice este ejemplo pa matlab por si a alguien le interesa
esta en matlab 2009

function varargout = Dipolo_2Dy3D(varargin)
% DIPOLO_2DY3D M-file for Dipolo_2Dy3D.fig
% DIPOLO_2DY3D, by itself, creates a new DIPOLO_2DY3D or raises the existing
% singleton*.
%
% H = DIPOLO_2DY3D returns the handle to a new DIPOLO_2DY3D or the handle to
% the existing singleton*.
%
% DIPOLO_2DY3D('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in DIPOLO_2DY3D.M with the given input arguments.
%
% DIPOLO_2DY3D('Property','Value',...) creates a new DIPOLO_2DY3D or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before Dipolo_2Dy3D_OpeningFcn gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to Dipolo_2Dy3D_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help Dipolo_2Dy3D

% Last Modified by GUIDE v2.5 10-Sep-2011 00:51:00

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @Dipolo_2Dy3D_OpeningFcn, ...
'gui_OutputFcn', @Dipolo_2Dy3D_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
end
% End initialization code - DO NOT EDIT


% --- Executes just before Dipolo_2Dy3D is made visible.
function Dipolo_2Dy3D_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to Dipolo_2Dy3D (see VARARGIN)

% Choose default command line output for Dipolo_2Dy3D
handles.output = hObject;

% Update handles structure
guidata(hObject, handles);
end
% UIWAIT makes Dipolo_2Dy3D wait for user response (see UIRESUME)
% uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line.
function varargout = Dipolo_2Dy3D_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure
varargout{1} = handles.output;

end


% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

phi=(0:.01:1)*2*pi; %phi de 0 a 2pi
theta=(0:.01:1)*pi; %th de 0 a pi
thp=(0:.01:1)*2*pi;
for l=0.1:0.1:3;

% todos los valores para theta 2D


%grafica en 3D
%creación del meshgrid tipica para crear graficas 3d
[PHI,THETA]=meshgrid(phi,theta,thp);
[THP]=meshgrid(thp);
%creación del campo
E1=abs(((cos(pi.*cos(THETA).*l))-cos(pi.*l))./(sin(THETA)));

%cambio de coordenadas esfericas a rectangulares para graficar en 3D
X=E1.*sin(THETA).*cos(PHI);
Y=E1.*sin(THETA).*sin(PHI);
Z=E1.*cos(THETA);

%normalizacion para cada x,y, z
tx=max(X);
ax=tx';
ux=max(ax);% valor maximo en x e y
tz=max(Z);
az=tz';
uz=max(az); %valor maximo para z
u=max(ux, uz);

% obtencion de los ejes normalizados
X=X./u;
Y=Y./u;
Z=Z./u;

mesh(X,Y,Z,E1);
axes(handles.axes1);

polar(THETA,E1);
view([90 -90]);
axes(handles.axes2);

end
end

esta hecho con gui ademas enton tienen que hacer el gui con un boton y una grafica
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

RE:Diagrama de radiacion de un dipolo

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 21/09/2011 15:07:13
Gracias Oso...
por compartir tu programa.
Ya proble y funciona muy bien en MATLAB R2011a

%===========================================
function varargout = Dipolo_2Dy3D(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @Dipolo_2Dy3D_OpeningFcn, ...
'gui_OutputFcn', @Dipolo_2Dy3D_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function Dipolo_2Dy3D_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
function varargout = Dipolo_2Dy3D_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;


% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
phi=(0:.01:1)*2*pi; %phi de 0 a 2pi
theta=(0:.01:1)*pi; %th de 0 a pi
thp=(0:.01:1)*2*pi;
for l=0.1:0.1:3;

% todos los valores para theta 2D
%grafica en 3D
%creación del meshgrid tipica para crear graficas 3d
[PHI,THETA]=meshgrid(phi,theta,thp);
[THP]=meshgrid(thp);
%creación del campo
E1=abs(((cos(pi.*cos(THETA).*l))-cos(pi.*l))./(sin(THETA)));

%cambio de coordenadas esfericas a rectangulares para graficar en 3D
X=E1.*sin(THETA).*cos(PHI);
Y=E1.*sin(THETA).*sin(PHI);
Z=E1.*cos(THETA);

%normalizacion para cada x,y, z
tx=max(X);
ax=tx';
ux=max(ax);% valor maximo en x e y
tz=max(Z);
az=tz';
uz=max(az); %valor maximo para z
u=max(ux, uz);

% obtencion de los ejes normalizados
X=X./u;
Y=Y./u;
Z=Z./u;

mesh(X,Y,Z,E1);
axes(handles.axes1);

polar(THETA,E1);
view([90 -90]);
axes(handles.axes2);
end

%====================================
saludos
JOSE JEREMIAS CABALLERO
ASESOR DE PROYECTOS CON MATLAB
PROFESOR DE METODOS NUMERICOS CON MATLAB
PROGRAMADOR MATLAB
[email protected]
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

RE:Diagrama de radiacion de un dipolo

Publicado por Carlos (4 intervenciones) el 20/03/2016 22:28:34
el codigo me da un error al correrlo:

Error using '
Transpose on ND array is not defined.

el error es en donde se hace la normalizacion de las coordenadas ax=tx'; tengo la version 2013.

por favor me podrian ayudar ?
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

RE:Diagrama de radiacion de un dipolo

Publicado por Carlos (4 intervenciones) el 20/03/2016 23:05:18
El código que usted sabio anteriormente, no le cambie nada y me da ese error.
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

RE:Diagrama de radiacion de un dipolo

Publicado por Carlos (4 intervenciones) el 21/03/2016 00:02:08
No soy un experto pero si me cree la guide el axis y el boton para editar el codigo.. el error me da en la parte final:
%normalizacion para cada x,y, z
tx=max(X);
ax=tx';

con este error en ax=tx';

Error using '
Transpose on ND array is not defined.
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

codigo en matlab en coordenadas polar y rectangular, en el plano theta de la antena en v

Publicado por carlos m (1 intervención) el 10/10/2016 16:34:41
Bunas, sera tan amable y si me puede colaborar con el codigo en matlab de una antena en v, graficadas en coordenada polares y rectangular en el plano theta,,, gracias quedo atento
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