首页/文章/ 详情

Matlab绘制辐射3D图

3月前浏览3062


从HFSS仿真软件中可以直接查看仿真远场3d辐射图,如下右图,本以为HFSS导出的图不能是矢量图,所以就将数据导出,利用matlab来画图,然后导出emf格式的矢量图,如下左图。但是仍旧有锯齿存在,设想是需要好的插值算法来拟合消除锯齿,目前还没尝试出来,如果哪位读者看到了,有方法,希望留言给我。


首先分析HFSS中导出的数据,3d辐射图有三列数据,分别是phi、theta、gain。我设置的phi是从0~360°,theta是从0°~180°,间隔都是2°

下面直接给出画图程序,

A=load('file.csv');

pow=A(:,3);

gain=reshape(pow,181,91);

theta=linspace(0,pi,91);

phi=linspace(0,2*pi,181);

[pp,tt]=meshgrid(theta,phi);

[x,y,z]=sph2cart(pp,pi/2-tt,gain+100); %增益不能为负值

surf(x,y,z,gain+100);

xlabel x;

ylabel y;

zlabel z;

shading interp;

axis equal;

colormap("jet");

colorbar;


画图程序使用中遇到几个问题,

1、gain数组的重构,行列根据HFSS中的设置来重构,这里是181*91的矩阵。

2、sph2cart函数中gain不能直接使用原来的值,因为gain小于零画不出原图。sph2cart的坐标变换公式与常用的公式不同,注意俯仰角的取值

3、meshgrid(m,n)设置网格,注意行列的设置,会变成n*m矩阵。


来源:灵境地平线
HFSSMATLAB
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-08-04
最近编辑:3月前
周末--电磁仿真
博士 微波电磁波
获赞 22粉丝 18文章 163课程 0
点赞
收藏
作者推荐

单片机仿真与测试

本实验目的是实现流水灯,五个led灯循环点亮,熟悉单片机开发流程51单片机,stc89c52rc,需要外部电路。淘宝购买了最小系统开发板。因电路简单,这里没有使用proteus仿真软件。重点介绍如何下载程序到板子并运行。1、下载并安装keil5(KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统)写好代码编译并生成hex文件,操作步骤如下。2、安装串口驱动,这里使用的是ch340芯片,安装驱动时板子一定要连接电脑(是一个USB总线的转接芯片,实现USB转串口通信,安装好后电脑的设备管理器中会显示如下图所示)3、STC单片机烧录软件stc-icp(宏晶科技http://www.stcmcu.com国内单片机生产厂家,主页可以下载烧录软件)主要步骤如下,板子与电脑连接好-->选择单片机型号-->串口号一般自动识别-->打开编译的hex文件-->点击下载/编程-->重新给板子加电。(其他选项默认即可)4、连接电路(电路应该是Proteus软件仿真后就连接好,然后再下载程序运行,因为本实验特别简单最后才连接电路。忽略视频里的数码管和蜂鸣器)ps:一些知识点来源:灵境地平线

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈