⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lpdasimulate.m

📁 天线设计方面的资料
💻 M
字号:
function LPDASimulate(handles)
% this function will export the final design to 
% superNEC for further simulation

% USAGE: 
%   asmb = snlpda (modelFreq, obj, editParms) 
% DESCRIPTION: 
%   Generates the segments for an LPDA assembly. location : xy plane with longest element at x = 0 , facing down x-axis.  
% INPUTS: 
%   modelFreq: The frequency at which the SNEC structure is designed
%   obj.location: The location of the assembly 
%   obj.segLength: The segment length in wavelengths 
%   obj.orientation: The orientation of the assembly 
%   obj.freqScale: The factor by which the model freq. is scaled 
%   obj.maxLen: Longest element length in meters 
%   obj.minLen: Shortest element length in meters 
%   obj.tau: Antenna scaling factor 
%   obj.sigma: Antenna spacing factor 
%   obj.type: Checked implies use constant radius otherwise vary them 
%   obj.ratio: Either the length to diameter radio or element radius depending on type 
%   obj.zo: The characteristic impedance of the transmission line 


FF = (get(handles.Parameter1,'Value'));
FreqMax = (get(handles.Frequency,'Value'));
BWR  = [1.5 3 5 10];
BWR = BWR(get(handles.BWRVal,'Value'));
FreqMin = FreqMax/BWR;
NoElements = (get(handles.Parameter2,'Value'));
%modelFreq = FreqMax;

LamMax = (300/FreqMin);
LamMin = (300/FreqMax);

snecin
clear snres;
strdll ('New');

clear snres;


if ~get(handles.Units,'Value')
    lambda  = 300/FreqMax; 
else
    lambda = 1;
end

%Calculation of longest element length and shortest element length
%Longest Element
L1 = (0.5 * LamMax);
%Shortest Element
Ln = (0.25 * LamMin);
% Calculation of Tau
LenRatio = Ln/L1;

ta = (LenRatio^(1/(NoElements - 1)));
ta = str2num(sprintf('%0.4f',ta));

BoomLength = FF * LamMax;

sig_ma = (((1 - ta)*FF)/(1 - LenRatio));
sig_ma = str2num(sprintf('%1.3g',sig_ma));

strdll ('SetModelFreq', FreqMax);

obj.location = [0.000, 0.000, 0.000]; 
obj.segLength = 0.100; 
obj.orientation = [0.000, 0.000, 0.000]; 
obj.freqScale = 1.000; 
obj.maxLen = L1; 
obj.minLen = Ln; 
obj.tau = ta; 
obj.sigma = sig_ma; 
obj.type = 0; 
obj.ratio = 100.000; 
obj.zo = 50.000; 
     
% Segment the LPDa using the LPDA assembly
LPDA = snlpda(FreqMax, obj, 0);

% Add it to the structure.
strdll ('AddAssembly', LPDA);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -