3 MATLAB绘制波束覆盖图
根据contour命令特点,在绘制波束覆盖图之前首先要进行直角坐标到极坐标转换,转换命令如下:
xrange=linspace(0,2*pi,181);
yrange=linspace(0,10,101);
[X,Y]=meshgrid(xrange,yrange);
[xx,yy]=pol2cart(X,Y);
其中(0,2*pi)为φ角的取值范围,单位为弧度,对应于FEKO far field中的方位角,181是φ在取值范围内的点数;(0,10)为θ角的取值范围,单位为度,对应于FEKO far field中的方位角,101是θ在取值范围内的点数;以上θ与φ的取值范围与点数与FEKO中far field设置的取值范围和点数严格相同。
在MATLAB中完成坐标转换后,再将*.dat文件导入MATLAB,并把该数据的存储格式转换为与上述转换后的坐标相同的存储形式。命令如下:
load*.dat
dui01=*(:,9);
dui001=reshape(dui01,101,181);
h=polar([0 2*pi],[0 10]);
delete(h);hold on;
命令dui01=*(:,9)中的9代表*.dat文件的第九列,根据*.ffe文件的头文件可知,第九列为Gaintotal值,即增益。
确保MATLAB自生成的存储形式与经reshape命令转换后的数据存储格式相同后,再调用contour命令,绘制波束覆盖图,命令格式如下:
contour(xx,yy,dui001,[G1 G2]);
contour命令中的[G1 G2]为覆盖面积的增益值,图3是多波束覆盖面积图。
图3 多波束覆盖面积图
4 结论
电磁仿真软件中,FEKO在电大尺寸方面优势明显,多波束抛物面天线一般属于电大尺寸,为了便于精确反映多波束天线中,每个波束的覆盖面积,本文采用了将FEKO生成的ffe文件经处理后,导入MATLAB中,可精确反映每个波束的覆盖面积。文中不仅描述了这种方法的流程,还给出了相关程序。通过上述处理进一步扩展了FEKO数据后处理功能。