Lumerical Mode 的电场分布数据导出到 Matlab 进行处理

这篇具有很好参考价值的文章主要介绍了Lumerical Mode 的电场分布数据导出到 Matlab 进行处理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

内容介绍

本文分为两部分:

  • 首先是 Lumerical 中如何导出数据
  • 然后是 Matlab 中如何对数据进行处理

Lumerical 部分

1. 运行 Lumerical 文件计算电场分布

  • calculate mode
  • 如图 Lumerical 中选中某个模式后会显示电场图,但像素较低且只能导出 jpg
    fdtd导出mat文件,Lumerical,matlab

2. 保存 Lumerical 电场数据为 Matlab 的 mat 文件

可以采用脚本,如上图我们选择保存 mode5,脚本如下,直接在 Lumerical 中运行即可。
可以保存某个电场分量,也可以保存全部数据。

modename = 'mode5';
E = getresult(modename,'E');   # 保存全部电场数据
Ex = getresult(modename,'Ex'); # 保存x方向上的电场数据 
filename="ElectricField785";
matlabsave(filename,E,Ex); 

## 也可以先 copycard 到 d-card 之后保存
modename2 = 'mode_nir';
copydcard(modename,modename2);
Ex = getdata('::'+modename2,'Ex'); 

Matlab 部分

1. 数据读取并进行初步处理

以全部电场数据处理为例,单方向电场比较简单,可自行测试:

clear;clc;
% 读取数据
filename = 'ElectricField785.mat';  
load(filename); data = E;   Ex_dsave=Ex;
x = data.x;y = data.y;E = data.E;
% 重新排列
Nx = length(x);Ny = length(y);  
Nz = size(E, 1) / (Nx * Ny);
Ex = reshape(E(:, 1), Nx, Ny, Nz);  % x 分量
Ey = reshape(E(:, 2), Nx, Ny, Nz);  % y 分量
Ez = reshape(E(:, 3), Nx, Ny, Nz);  % z 分量 
% 总电场
E = (Ex.^2 + Ey.^2 + Ez.^2).^0.5;

% 要绘图的数据,这里我们以 Ex 为例,其实直接导出这个分量更方便
currentE = (real(Ex));  % 处理后就和直接从 Lumerical 保存的 Ex 数据一样了 
% 或者总电场 
%currentE = (real(E));

2. 绘制电场图

figure;        
f = pcolor(x*1e6,y*1e6,rot90(currentE,-1));     
set(f,'LineStyle','none');colorbar;colormap jet;axis equal;
axis([-2 2 -1 2])

fdtd导出mat文件,Lumerical,matlab

3. 进一步调整图片字体等并导出矢量图

可以直接根据建模脚本绘制截面图

fdtd导出mat文件,Lumerical,matlab


碰到的问题

1. 数据重排时出错

Ex = real( reshape(E(:, 1), Ny, Nx, Nz) );  
Ey = real( reshape(E(:, 2), Ny, Nx, Nz) );  
Ez = real( reshape(E(:, 3), Ny, Nx, Nz) );  

fdtd导出mat文件,Lumerical,matlab

fdtd导出mat文件,Lumerical,matlab文章来源地址https://www.toymoban.com/news/detail-669686.html

到了这里,关于Lumerical Mode 的电场分布数据导出到 Matlab 进行处理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)

    💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 2.1 Python 2.2 Matlab 🎉3 参考文献 🌈4 Matla

    2024年02月15日
    浏览(42)
  • 如何使用Matlab进行图像处理

    图像处理是操纵图像的数字属性以提高其质量或从图像中获得所需信息的过程。它需要在图像处理应用程序中导入图像,分析图像,然后对图像进行操作,以获得能够产生预期结果的适当输出。 在这篇文章中,我们将讨论使用Matlab进行图像处理和分析的基础知识,以确定图像

    2023年04月10日
    浏览(52)
  • matlab如何导出导入数据

    1、导出数据: 1)在工作区选择要保存的数据,右键选择另存为,保存文件名和要保存的数据名称一致! 2、导入数据: 将.mat数据文件复制到matlab程序当下文件夹,在matlab程序里输入以下语句就可以成功导入,导入之后就是double类型的数据。 load 文件名.mat; data=文件名

    2024年02月12日
    浏览(32)
  • 【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)

    💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 2.1 Python 2.2 Matlab 🎉3 参考文献 🌈4 Matla

    2024年02月14日
    浏览(42)
  • Matlab+FPGA进行灰度图像处理

    …# Matlab+FPGA进行灰度图像处理(两种方式) * MATLAB主要用于思路验证,转到FPGA的话需要对底层函数逻辑清楚才行,python也能进行matlab在这里做的所有操作,有兴趣可以深入。 1.matlab读取图片显示: 2.matlab灰度反显 3.matlab二值化,将灰度进行黑白划分 matlab把图片转到txt格式,文

    2024年02月08日
    浏览(51)
  • 使用matlab进行回声处理(三重回声)-数字信号处理课设

    1.录制一段声音信号,作为原音频信号,生成频域与时域图形,观察与分析其时域 与频域图形。 2.对该音频信号进行时域处理,并且实现对该声音信号添加第一层回声。 3.对该音频信号再继续一次进行时域处理,实现对该声音信号添加第二层回声。 4.将三段音频信号进行合成

    2024年02月03日
    浏览(46)
  • 时序预测 | Matlab+Python实现基于高斯混合模型聚类结合CNN-BiLSTM-Attention的风电场短期功率预测

    效果一览 基本介绍 基于高斯混合模型聚类结合CNN-BiLSTM-Attention的风电场短期功率预测(Matlab+Python完整源码和数据) 该方法结合数据分布特征,利用 GMM 聚类将大型风电场划分为若干机组群,借助贝叶斯信息准则指标评价,获得风电场内最优机组分组方案。最后,基于CNN-BiLSTM-

    2024年02月16日
    浏览(33)
  • 使用Apache POI数据导出及EasyExcel进行十万、百万的数据导出

    Apache POI 是基于 Office Open XML 标准( OOXML )和 Microsoft 的 OLE 2 复合⽂档 格式( OLE2 )处理各种⽂件格式的开源项⽬。 简⽽⾔之,您可以使⽤ Java 读写 MS Excel ⽂件,可以使⽤ Java 读写 MS Word 和 MS PowerPoint ⽂件。 1.HSSF - 提供读写 Microsoft Excel XLS 格式 (Microsoft Excel 97 (-2003)) 档案

    2024年02月15日
    浏览(41)
  • Matlab/simulink风储调频,多台飞轮储能调频,风电场调频,飞轮储能带有虚拟惯量和下垂控制,三机九节点系统一次调频,离散模型

     上述为不同飞轮储能容量配比,风电场容量配比,以及有无附加频率控制的飞轮储能出力分析。 飞轮储能驱动电机为永磁同步机电机PMSG  有无飞轮储能容量较小,所以对频率的改善效果有限,不过可以继续增大容量,从而增大频率的改善效果!!

    2024年01月22日
    浏览(43)
  • 如何在 MATLAB 中进行图像分割(matlab仿真与图像处理系列第7期)

    在 MATLAB 中进行图像分割有多种方法,下面介绍一些常用的方法: 基于阈值的二值化分割 这是一种最简单的分割方法,将图像分为两个部分:背景和前景。其主要思想是,选择一个阈值,将图像中的像素值与阈值进行比较,将像素值大于阈值的像素标记为前景(白色),将像

    2024年02月12日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包