首页 理论教育MATLAB与FEKO联合实现,提高仿真效果

MATLAB与FEKO联合实现,提高仿真效果

【摘要】:MATLAB调用FEKO中的几个主要命令如下。调用FEKO求解器计算会生成.out文本格式的结果文件,可以采用MATLAB读写文本的脚本来提取或遍历相关数据,得到最大增益所对应的Theta值。然后在MATLAB中编写循环:1)参数定义。7)MATLAB循环终止。8)MATLAB画图,生成瞄准误差曲线。也可以将对天线罩模型的旋转放在.pre文件中处理,这时MATLAB的循环变量iAngle会对应.pre文件中的旋转角度。在MATLAB的循环执行时,就不需要dos了。关于MATLAB针对本案例的脚本,读者可以参考链接资源…

MATLAB具有强大的数学处理和画图等功能,而且脚本语言易用性好,易于掌握,应用非常广泛,所以可以应用MATLAB来编写循环脚本,在循环中可以调用FEKO的预处理和求解器,并读取FEKO计算的结果返回需要的数据并作图。MATLAB调用FEKO中的几个主要命令如下。

1)调用FEKO的网格重构(更新.cfx文件):dos('cadfeko_batch.exe antarray_with_Radome_ BSE.cfx-#angle=???')。

2)调用FEKO的预处理器(生成.fek):dos('prefeko.exe antarray_with_Radome_BSE.pre')。

3)调用FEKO求解器(生成.bof和.out):dos('runfeko.exe antarray_with_Radome_BSE.fek')。

同样,也可以采用并行的方式来提交,参见前面章节中的说明,或直接查看runfeko所对应的命令。

调用FEKO求解器计算会生成.out文本格式的结果文件,可以采用MATLAB读写文本的脚本来提取或遍历相关数据,得到最大增益所对应的Theta值。

MATLAB调用FEKO的主要流程如下:

首先,在CADFEKO中设置天线罩的旋转并对旋转角度参数化。

然后在MATLAB中编写循环:

1)参数定义。(www.chuimin.cn)

2)MATLAB循环开始(iAngle)。

3)dos('cadfeko_batch.exe antarray_with_Radome_BSE.cfx-#angle='iAngle)。

4)dos('prefeko.exe antarray_with_Radome_BSE.pre')。

5)dos('runfeko.exe antarray_with_Radome_BSE.fek')。

6)文本读取antarray_with_Radome_BSE.out,得到最大增益对应的角度。

7)MATLAB循环终止。

8)MATLAB画图,生成瞄准误差曲线。

也可以将对天线罩模型的旋转放在.pre文件中处理,这时MATLAB的循环变量iAngle会对应.pre文件中的旋转角度。在MATLAB的循环执行时,就不需要dos('cadfeko_batch.exe antarray_with_Radome_BSE.cfx-#angle='iAngle)了。

关于MATLAB针对本案例的脚本,读者可以参考链接资源…/chapter06/app3/Include/中的BSE_Matlab_FEKO_cadfeko_batch_alt.m或BSE_Matlab_FEKO_editfeko_pre_alt.m文件(基于MATLAB 2010)。