公开/公告号CN103186685A
专利类型发明专利
公开/公告日2013-07-03
原文格式PDF
申请/专利权人 深圳光启高等理工研究院;
申请/专利号CN201110454482.4
申请日2011-12-30
分类号G06F17/50;
代理机构广州三环专利代理有限公司;
代理人郝传鑫
地址 518057 广东省深圳市南山区高新区中区高新中一道9号软件大厦
入库时间 2024-02-19 18:48:14
法律状态公告日
法律状态信息
法律状态
2016-04-13
授权
授权
2013-11-06
实质审查的生效 IPC(主分类):G06F17/50 申请日:20111230
实质审查的生效
2013-07-03
公开
公开
技术领域
本发明涉及人工电磁材料领域,尤其涉及一种基于CST仿真软件的超材料单元结构的构造方法及装置。
背景技术
人工电磁材料也称为超材料,是一种能够对电磁波产生响应的人工合成材料,由基板和附着在基板上的人造微结构组成,由于人造微结构通常是由导电材料排布成的具有一定几何图案的结构,因此能够对电磁波产生响应,从而使超材料整体体现出不同于基板的电磁特性。
在超材料的设计阶段,所建立的单元结构模型需要用CST仿真软件进行大量的数据仿真工作来得到所设计模型的一些物理性质,
现有CST仿真主要依赖于人工操作。首先用Matlab生成要仿真的一组数据并导出,然后人工输入这些数据到CST仿真软件相应位置,点击相应按键进行仿真操作,最后将仿真结果导出到文本文件中。如此反复操作,直到将所有数据仿真完毕。现有技术采用的人工操作方式费时费力,效率极为低下。
发明内容
本发明实施例所要解决的技术问题在于,提供一种基于CST仿真软件的超材料单元结构的构造方法及装置,其可提高CST仿真的效率,缩短仿真时间。
具体的,本发明实施例提供的基于CST仿真软件的超材料单元结构的构造方法,包括:
调用CST仿真软件中的组件对象模型;
基于所述调用的组件对象模型打开CST仿真软件中所创建的初始单元结构仿真模型;
基于所述调用的组件对象模型读取所述打开的单元结构仿真模型中需要仿真的数据,并更改所述初始单元结构仿真模型中的参数;
基于所述调用的组件对象模型根据参数的更改生成新的单元结构仿真模型;
基于所述调用的组件对象模型仿真超材料单元结构并输出仿真结果。
较佳的,所述调用CST仿真软件中的组件对象模型之前,包括:
将超材料单元结构模型仿真数据导入CST仿真软件中相应位置,创建初始单元结构仿真模型。
较佳的,所述基于所述调用的组件对象模型打开CST仿真软件中所创建的初始单元结构仿真模型,包括:
基于所述调用的组件对象模型中用于打开文件的脚本打开CST仿真软件中所创建的初始单元结构仿真模型。
较佳的,所述更改所述初始单元结构仿真模型中的参数,包括:
基于所述调用的组件对象模型中用于更改参数的脚本更改所述初始单元结构仿真模型中的参数。
较佳的,所述基于所述调用的组件对象模型根据参数的更改生成新的单元结构仿真模型,包括:
基于所述调用的组件对象模型中用于重建模型的脚本根据参数的更改生成新的单元结构仿真模型。
较佳的,所述基于所述调用的组件对象模型仿真超材料单元结构,包括:
基于所述调用的组件对象模型中用于仿真单元结构的脚本仿真超材料单元结构。
相应的,本发明实施例提供的基于CST仿真软件的超材料单元结构的构造装置,包括:
调用模块,用于调用CST仿真软件中的组件对象模型;
开启模块,用于基于所述调用的组件对象模型打开CST仿真软件中所创建的初始单元结构仿真模型;
参数更改模块,用于基于所述调用的组件对象模型读取所述打开的单元结构仿真模型中需要仿真的数据,并更改所述初始单元结构仿真模型中的参数;
新模型创建模块,用于基于所述调用的组件对象模型根据参数的更改生成新的单元结构仿真模型;
仿真模块,用于基于所述调用的组件对象模型仿真超材料单元结构并输出仿真结果。
较佳的,该装置还包括:
初始化模块,用于将超材料单元结构模型仿真数据导入CST仿真软件中相应位置,创建初始单元结构仿真模型。
较佳的,所述开启模块具体用于基于所述调用的组件对象模型中用于打开文件的脚本打开CST仿真软件中所创建的初始单元结构仿真模型。
较佳的,所述参数更改模块具体用于基于所述调用的组件对象模型中用于更改参数的脚本更改所述初始单元结构仿真模型中的参数。
较佳的,所述新模型创建模块具体用于基于所述调用的组件对象模型中用于重建模型的脚本根据参数的更改生成新的单元结构仿真模型。
较佳的,仿真模块具体用于基于所述调用的组件对象模型中用于仿真单元结构的脚本仿真超材料单元结构。
实施本发明实施例,具有如下有益效果:
本发明实施例调用CST仿真软件中的组件对象模型,自动运行CST仿真软件的相应仿真操作动作的执行,其可提高CST仿真的效率,缩短仿真时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的基于CST仿真软件的超材料单元结构的构造方法的一实施例流程示意图;
图2是本发明实施例创建的初始单元结构的仿真模型示意图;
图3是本发明的基于CST仿真软件的超材料单元结构的构造装置的一实施例的结构组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种基于CST仿真软件的超材料单元结构的构造方法。1是本发明的基于CST仿真软件的超材料单元结构的构造方法的一实施例流程示意图。如图1所示 ,本实施例的方法包括:
步骤S110,调用CST仿真软件中的组件对象模型。
具体实现中,在步骤S110可以用,NET的机制调用封装的组件对象模型(Component Object Model,COM)。
步骤S111,基于所述调用的组件对象模型打开CST仿真软件中所创建的初始单元结构仿真模型。
具体实现中,在步骤S111可基于所述调用的组件对象模型中用于打开文件的脚本打开CST仿真软件中所创建的初始单元结构仿真模型。比如,在步骤S111可打开如图2所示一个实例的初始单元结构仿真模型,在图2中该单元结构由两个‘I’型结构前后附着于基板构成。针对单个‘I’型结构,分别用S1,S2表征两个‘I’型结构的几何参数,epsilon代表基板材料的介电常数。
具体实现中,在步骤S111用于打开文件的脚本具体可如脚本1所示:
脚本1:
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim cstFile As OpenFileDialog
cstFile = New OpenFileDialog
cstFile.Filter = "CSTFile(*cst)|*.cst"
If cstFile.ShowDialog() = DialogResult.OK Then
CSTFile_TextBox.Text = cstFile.FileName
End If
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim dataFile As OpenFileDialog
dataFile = New OpenFileDialog
dataFile.Filter = "Text(*txt)|*.txt"
If dataFile.ShowDialog() = DialogResult.OK Then
DataFile_TextBox.Text = dataFile.FileName
End If
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim resultPath As FolderBrowserDialog
resultPath = New FolderBrowserDialog
If resultPath.ShowDialog() = DialogResult.OK Then
Result_TextBox.Text = resultPath.SelectedPath
End If
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
CSTFile_TextBox.Text = ""
DataFile_TextBox.Text = ""
Result_TextBox.Text = ""
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Dim app As Object
Dim mws As Object
步骤S112,基于所述调用的组件对象模型读取所述打开的单元结构仿真模型中需要仿真的数据,并更改所述初始单元结构仿真模型中的参数。
具体实现中,在步骤S112可基于所述调用的组件对象模型中用于更改参数的脚本更改所述初始单元结构仿真模型中的参数。以更改图2所示的单元结构的参数S1,S2及epsilon为例,在步骤S112读取所述打开的单元结构仿真模型中需要仿真的数据,并更改所述初始单元结构仿真模型中的参数的脚本具体可如脚本2所示:
脚本2:
If CSTFile_TextBox.Text = "" Or DataFile_TextBox.Text = "" Or Result_TextBox.Text = "" Then
MsgBox("Please fill the blank completely")
Return
End If
app = CreateObject("CSTStudio.Application")
mws = app.OpenFile(CSTFile_TextBox.Text)
Dim a, b, c As String
Dim count As Integer
FileOpen(1, DataFile_TextBox.Text, OpenMode.Input)
Dim line As String
line = LineInput(1)
FileClose(1)
If (line.Split(",").Length - 1) = 2 Then
FileOpen(1, DataFile_TextBox.Text, OpenMode.Input)
Do While Not EOF(1)
count = count + 1
Input(1, a)
Input(1, b)
Input(1, c)
If b <> "0" Then
mws.Storeparameter("S1", a)
mws.Storeparameter("S2", b)
mws.Storeparameter("epsilon", c)
mws.RebuildForParametricChange()
'i = count + 1
Me.Hide()
mws.Solver.start()
'Me.Show()
Dim cst_FieldName As String
cst_FieldName = Result_TextBox.Text + "\" + CStr(count) + ".txt"
mws.SelectTreeitem("1D Results\S polar")
With mws.ASCIIExport
.Reset()
.FileName(cst_FieldName)
.execute()
End With
End If
Loop
FileClose(1)
' i = 0
count = 0
步骤S113,基于所述调用的组件对象模型根据参数的更改生成新的单元结构仿真模型。
具体实现中,在步骤S113可基于所述调用的组件对象模型中用于重建模型的脚本根据参数的更改生成新的单元结构仿真模型。以更改图2所示的单元结构为例,在步骤S113用于重建模型的脚本具体可如脚本3所示:
脚本3:
FileOpen(2, DataFile_TextBox.Text, OpenMode.Input)
Do While Not EOF(2)
count = count + 1
Input(2, a)
Input(2, b)
Input(2, c)
If b = "0" Then
mws.Storeparameter("S1", a)
mws.Storeparameter("S2", b)
mws.Storeparameter("epsilon", c)
mws.RebuildForParametricChange()
步骤S114,基于所述调用的组件对象模型仿真超材料单元结构并输出仿真结果。
具体实现中,在步骤S114可基于所述调用的组件对象模型中用于仿真单元结构的脚本仿真超材料单元结构。具体实现中,用于仿真单元结构的脚本具体可如脚本4所示:
脚本4:
Me.Hide()
mws.Solver.start()
Me.Show()
Dim cst_FieldName As String
cst_FieldName = Result_TextBox.Text + "\" + CStr(count) + ".txt"
mws.SelectTreeitem("1D Results\S polar")
With mws.ASCIIExport
.Reset()
.FileName(cst_FieldName)
.execute()
End With
End If
Loop
FileClose(2)
Me.Show()
mws.quit()
End If
End Sub
End Class
具体实现中,在步骤S110之间,本发明实施例的方法还可包括将超材料单元结构模型仿真数据导入CST仿真软件中相应位置,创建初始单元结构仿真模型的步骤。
相应的,图3是本发明的基于CST仿真软件的超材料单元结构的构造装置的一实施例的结构组成示意图。其可用于实施图1所示的方法,具体的,如图3所示,本发明的基于CST仿真软件的超材料单元结构的构造装置包括:初始化模块30、调用模块31、开启模块32、参数更改模块33、新模型创建模块34以及仿真模块35,其中:
所述初始化模块30用于将超材料单元结构模型仿真数据导入CST仿真软件中相应位置,创建初始单元结构仿真模型。
所述调用模块31用于调用CST仿真软件中的组件对象模型。
具体实现中,调用模块31可以用,NET的机制调用封装的组件对象模型。
所述开启模块32用于基于所述调用的组件对象模型打开CST仿真软件中所创建的初始单元结构仿真模型。
具体实现中,开启模块32可基于所述调用的组件对象模型中用于打开文件的脚本打开CST仿真软件中所创建的初始单元结构仿真模型。比如,开启模块32可打开如图2所示一个实例的初始单元结构仿真模型。具体实现中,开启模块32用于打开文件的脚本具体可如脚本1所示。
所述参数更改模块33用于基于所述调用的组件对象模型读取所述打开的单元结构仿真模型中需要仿真的数据,并更改所述初始单元结构仿真模型中的参数。
具体实现中,参数更改模块33可基于所述调用的组件对象模型中用于更改参数的脚本更改所述初始单元结构仿真模型中的参数。以更改图2所示的单元结构的参数S1,S2及epsilon为例,参数更改模块33更改所述初始单元结构仿真模型中的参数的脚本具体可如脚本2所示。
所述新模型创建模块34用于基于所述调用的组件对象模型根据参数的更改生成新的单元结构仿真模型。
具体实现中,新模型创建模块34可基于所述调用的组件对象模型中用于重建模型的脚本根据参数的更改生成新的单元结构仿真模型。以更改图2所示的单元结构为例,新模型创建模块34用于重建模型的脚本具体可如脚本3所示。
所述仿真模块35用于基于所述调用的组件对象模型仿真超材料单元结构并输出仿真结果。
具体实现中,仿真模块35可基于所述调用的组件对象模型中用于仿真单元结构的脚本仿真超材料单元结构。具体实现中,仿真模块35用于仿真单元结构的脚本具体可如脚本4所示。
本发明实施例调用CST仿真软件中的组件对象模型,自动运行CST仿真软件的相应仿真操作动作的执行,其可提高CST仿真的效率,缩短仿真时间。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
机译: 使用基于以树状结构确定的编码单元为基础的预测单元的视频编码方法和视频编码装置,以及基于以确定的编码为基准的编码单元的预测单元和基于结构的编码单元的预测单元的视频编码方法和视频解码装置
机译: 基于超单元构造方法的结构功能分析方法及装置
机译: 使用基于树结构的编码单元的预测单元的预测单元的视频编码方法和视频编码装置,以及基于对记录的顺序进行编码的预测单元的预测单元的预测单元和基于结构的视频解码方法