等效介质理论模型---利用S参数反演法提取超材料结构的等效参数
等效介质理论模型---利用S参数反演法提取超材料结构的等效参数
S参数反演法,即利用等效模型的传输矩阵和S参数求解超材料结构的等效折射率n和等效阻抗Z的过程。本文对等效介质理论模型进行了详细介绍,并提供对应代码。
超材料的传输矩阵
超材料结构的传输矩阵函数为:

其中,d 为等效光学活性材料的厚度,n 为折射率,Z 表示阻抗。
S参数和传输矩阵T
超材料结构的S参数和传输矩阵T满足下列方程:

利用以上两式,可以得到等效折射率n和相对阻抗的表达式

至此,超材料的等效介电常数与等效磁导率可通过阻抗与折射率进行表征,
其表达式为:


对应代码
clc;
clear;
S11r = importdata('real11.txt'); %导出的S11参数实部
S11i = importdata('imag11.txt'); %导出的S11参数虚部
S21r = importdata('real21.txt'); %导出的S21参数实部
S21i = importdata('imag21.txt'); %导出的S21参数虚部
real11 = S11r.data;
imag11 = S11i.data;
real21 = S21r.data;
imag21 = S21i.data;
N = 1001;
d = 5e-3; %超材料结构的厚度
c = 3e8;
for i = 1 : N
f(i) = real11(i,1);
s11(i) = real11(i,2) + j * imag11(i,2);
s21(i) = real21(i,2) + j * imag21(i,2);
end
for i = 1 : N
z1(i) = sqrt(((1+s11(i))^2 - s21(i)^2)./((1-s11(i))^2 - s21(i)^2));
if real(z1(i))>0
z(i) = z1(i);
else
z(i) = -z1(i);
end
kd(i) = d * 2 * pi * f(i) * 1e9/c;
n1(i) = acos(((1-s11(i))^2 + s21(i)^2)/2/s21(i))/kd(i);
if imag(n1(i))>0
n(i) = n1(i);
else
n(i) = -n1(i);
end
e(i) = n(i)/z(i);
miu(i) = n(i) * z(i);
end
figure %绘图
plot(f,real(z)); hold on; plot(f,imag(z),'r');
figure
plot(f,real(n)); hold on; plot(f,imag(n),'r');
figure
plot(f,real(e)); hold on; plot(f,imag(e),'r');
figure
plot(f,real(miu)); hold on; plot(f,imag(miu),'r');
[1] Chen X, Grzegorczyk T M, Wu B I, et al. Robust method to retrieve the constitutive effective parameters of metamaterials[J]. Physical Review E, 2004, 70(1): 016608.
[2]张克潜, 李德杰. 微波与光电子学中的电磁理论(第二版). 北京电子工业出版社,
2001, 110–166.
等效介质理论模型---利用S参数反演法提取超材料结构的等效参数的更多相关文章
- 【Python3爬虫】反反爬之破解同程旅游加密参数 antitoken
一.前言简介 在现在各个网站使用的反爬措施中,使用 JavaScript 加密算是很常用的了,通常会使用 JavaScript 加密某个参数,例如 token 或者 sign.在这次的例子中,就采取了 ...
- C语言利用va_list、va_start、va_end、va_arg宏定义可变参数的函数
在定义可变参数的函数之前,先来理解一下函数参数的传递原理: 1.函数参数是以栈这种数据结构来存取的,在函数参数列表中,从右至左依次入栈. 2.参数的内存存放格式:参数的内存地址存放在内存的堆栈段中,在 ...
- 利用sfntly的sfnttool.jar提取中文字体
雨忆博客中提到了sfntly(具体介绍可以看:https://code.google.com/p/sfntly/),利用其中sfnttool.jar就可以提取只包含指定字符的字体,如果想在页面中通过@ ...
- MySQL 利用frm文件和ibd文件恢复表结构和表数据
文章目录 frm文件和ibd文件简介 frm文件恢复表结构 ibd文件恢复表数据 通过脚本利用ibd文件恢复数据 通过shell脚本导出mysql所有库的所有表的表结构 frm文件和ibd文件简介 在 ...
- 【前端】提取URL中的各个GET参数
/**************************** * 有这样一个URL:http://item.taobao.com/item.htm?a=1&b=2&c=&d=xx ...
- JMeter学习-011-JMeter 后置处理器实例之 - 正则表达式提取器(三)多参数获取进阶引用篇
前两篇文章分表讲述了 后置处理器 - 正则表达式提取器概述及简单实例.多参数获取,相应博文敬请参阅 简单实例.多参数获取. 此文主要讲述如何引用正则表达式提取器获取的数据信息.其实,正则表达式提取器获 ...
- @有两个含义:1,在参数里,以表明该变量为伪参数 ,在本例中下文里将用@name变量代入当前代码中2,在字串中,@的意思就是后面的字串以它原本的含义显示,如果不
@有两个含义:1,在参数里,以表明该变量为伪参数 ,在本例中下文里将用@name变量代入当前代码中 2,在字串中,@的意思就是后面的字串以它原本的含义显示,如果不加@那么需要用一些转义符\来显示一些特 ...
- spring参数类型异常输出(二), SpringMvc参数类型转换错误输出(二)
spring参数类型异常输出(二), SpringMvc参数类型转换错误输出(二) >>>>>>>>>>>>>>&g ...
- 利用Readability解决网页正文提取问题
分享: 利用Readability解决网页正文提取问题 做数据抓取和分析的各位亲们, 有没有遇到下面的难题呢? - 如何从各式各样的网页中提取正文!? 虽然可以用SS为各种网站写脚本做解析, 但是 ...
随机推荐
- AngularJS应用访问Android手机画廊
下载angularjs.zip - 4.5 KB 介绍 本文演示了如何使用AngularJS调用Android应用程序公开的REST api来查看图库. 背景 Android和iOS都有相当多的远程访 ...
- 多测师讲解接口测试 _接口测试思路_高级讲师肖sir
- 【LWJGL3】LWJGL3的内存分配设计,第一篇,栈上分配
简介 LWJGL (Lightweight Java Game Library 3),是一个支持OpenGL,OpenAl,Opengl ES,Vulkan等的Java绑定库.<我的世界> ...
- 利用Image对象,建立Javascript前台错误日志记录
手记:摘自Javascript高级程序设计(第三版),利用Image对象发送请求,确实有很多优点,有时候这也许就是一个创意点,再次做个笔记供自己和大家参考. 原文: 开发 Web 应用程序过程中的一种 ...
- flask生产环境部署
1.安装uwsgipip install uwsgi 2.创建ini配置文件vim uwsgi.ini内容如下:[uwsgi]# 配置启动的服务地址和iphttp=0.0.0.0:5001# 项目目录 ...
- LinkageSel无限级联动下拉菜单
http://files.cnblogs.com/files/chenghu/LinkageSel-master.zip
- CSS常见标签类型
块级(block): div,ul,li,h1~h6,p 独自占据一行 可设置宽高 行内(inline): span,a 占据所设置字体大小 不可设置宽高 上下margin值不会占用空间 行内块( ...
- SLF4J :Failed to load class "org.slf4j.impl.StaticLoggerBinder".
错误提示 SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to ...
- 基于Python与命令行人脸识别项目(系列二)
接着系统一,继续开始我们face_recognition. Python 模块:face_recognition 在Python中,你可以导入face_recognition模块,调用丰富的API接口 ...
- JAVA代码实现抖音短视频去水印功能
今天有人找我帮他抖音视频去水印,发到朋友圈,然后就研究了一下.去水印功能代码如下: public class DouYinQushuiyin { public static void main(Str ...