• 大小: 0.47M
    文件类型: .pdf
    金币: 2
    下载: 2 次
    发布日期: 2021-03-28
  • 语言: Matlab
  • 标签: matlab  

资源简介


本文详细介绍了MATLAB与HFSS的联合优化方法,并介绍了基于粒子群算法的阻抗调制表面天线的副瓣优化流程
1. Tools→ Record script to file,保持类型选择(*vbs)然后起一个自己可以 记住的名字。 2.在HFSS中正常进行操作。 3. Tools Stop Script recording 此时你再步骤2中进行的操作对应的脚本就记录在你步骤1中所指定的文件 中。依照上述步骤,你可以写出任意的操作所对应的脚本文件。对于一些基本的 操作 Vijay ramasami等人编写了一些列的 MATLAB函数包,调用这个函数可以轻 松写出相应操作的脚本文件。如果有一些操作,这个函数包里面没有,也可以通 过上面的方法写自己所需要的函数。 编写完所需所有操作的函数后,仅需在 MATLAB中按步骤连续调用函数即 可。比如绘制完成一个如下所示天线模型建模 1.将各个函数包加入到木路径下 addpath(. /boundary/-) addpath(./3dmodeler/) addpath(./analysis/) 4addpath(,/general/') 2.创建脚木文件,调用新建工程函数 tmp ScriptFile leak wave. vb fid= fopen(tmpScriptFile, wt g create a new HFSS project. hfssNewProject (fid) hfssInsert Design(fid,'l 3.设置所需变量 gap=[0.55,0.6930.93,1.24,1.49,1.49,1.240.93,0.69。0.55] gap=[a1,a2,a3,a4,a5,a5,a43a3,a2,a1] 4.调用模型函数(大部分在3 modeler函数包中)进行建模 for 1=1:10 hfssRect angle(fid,rect,i, 4',[(i-1)*a/10,-1/2,0,(a/10-gal hf ssRect angle(fid, rect, 1+10, 2'3 [(i-1)*a/10+(a/10-gap(i)) end hf ssUnite(fid, I rect, rect2', rect3', rect, rect5, recti IfssMove(fid, rect,[-ax(num)/2,0, 0 hf ssDuplicateAlongLine(fid, rect 11, [a, 0, 0], num ,m hfssUnite(fid, rect y rect , rect 1 y rect 1 3. rect hfssRect angle(fid,'1,1,2,[l ar /2, -w/2, 01, 11, w,mm) Rect ang1e(fid,1,2,2,[1_ax/2,-W/2,0],-113W,mn); hfssPolygon(fid,p1,[-1ar/2+11,-w/2,0;-1ar/2+11,w/2,0;-a: hfssPolygon(fid,p2,[1ax/2-11,-w/230:1_ar/2-11,w/230:a*(r hfssUnite(fid, i rect1'11,1 2:p1:p2}) 设置边界条作和材料 hfssAssignPE(fid, PECl', t rect]) hfssAssignPE(fid, PEC2' I GND1'1 hfssAssignMaterial(fid, ai vaCLLIIL hfssAssignMaterial(fidarlon', Arlon AD600 (tm)) 6.设置端口 hfssAssignLumpedPort( hfssAssignLumpedPort(fi,: 2, Port2, [1_ar/2,0,0],[1-a/2,0,-dI, nm, 50, 0) 7.求解设置 hfssInsert Solution(fid, setup, 10, 0.1, 10) lve Setup(fid 8.脚本执行函数(该函数用于启动HFSS hissEzecutescript D: HFSS AnsysEM161T n34 ansysedt, exe,F: PS0\seconchf ssap examples eak wave. tbs, false, fa_se) 这个过程和在HFSS中完成仿真是一样的,只不过这里面用脚本函 数代替了在HFSS中的人工操作。越是复杂的模型,这种建模方法越能 体现岀优势。通常情况下, Vijay ramasami等人编写的函数包足够我们 使用,但是为了进一步挖掘HFSS的功能和降低我们的工作量,学会自 己编写函数也是很重要的 完成了建模过程,下面就是开始进行仿真优化。这里仅以PSO算法为例讲解 这个方法。天线的优化可能会涉及各种指标例如,驻波比,副瓣,增益等等。实 际工程中,这些指标通常需要综合考量。通常我们可以采用参薮扫描的办法来确 定合理的结构尺寸,但是这种办法费时费力。可以考虑使用优化算法对天线结构 进行自动的优化仿真。步骤如下 首先将上述建模程序改成一个 MATLAB数,其输入变量就是需要进行优 化的结构参数。 Function model_leak_wave(al,a2,a3,a4,a5) 2.编写数据交互函数,即将需要优化的指标比如驻波比,副瓣等从HFSS的计 算结果中导入到 MATLAB。这一步需要自己编写函数, Vijay ramasami等人 编写的函数包中没有这类函数。 hfssExport RadiationData(f 3.编写适应度函数,即优化日标函数。这驅面我只想要优化天线的副瓣,那么 适应度函数就是副瓣(主程序中默认副瓣越小越好 function sl=fitness(x) nOaE wave (A (3),x(4),x(5) pattern=csvread( F: \PSO\second\hfssapi\examples\shuju. csv, 1, 0) pk=findpeaks ( pattern(:, 2)) pk=sort(pk) M=length(pk) sl=pk(M-1) 4.编写优化第法主程序。一些常见的优化算法GA,PSO都有很多廾源的代码。 如果想要编写自己的优化算法的话,这一步就需要自己写程序了。我这里面 使川的是一份psom的开源代码。 这里我仅仅进行了3次迭代计算,副瓣就有显著的降低,下面左图是优化前 的,右图是优化后的。 □m删 这些步骤完成后,工作就基本结束了,大家只要安心等待结果就好了,再也 不用进行繁琐无聊的反复扫参过程∫,我们可以把精力更加集中在结构设计 和算法设计上面 上述教程只是一个示例性的教学,希望对大家有所帮助。 如有问题,需要帮助请联系QQ:3490486548。如果悠有更好的方法也希望能 与我交流。

资源截图

代码片段和文件信息

评论

共有 条评论