% CST文件初始化
cst = actxserver('CSTStudio.application');%首先载入CST应用控件
mws = invoke(cst, 'NewMWS');%新建一个MWS项目
app = invoke(mws, 'GetApplicationName');%获取当前应用名称
ver = invoke(mws, 'GetApplicationVersion');%获取当前应用版本号
invoke(mws, 'FileNew');%新建一个CST文件
path=pwd;%获取当前m文件夹路径
filename='fuxiaoxiong.cst';%新建的CST文件名字
fullname=[path filename];
invoke(mws, 'SaveAs', fullname, 'True');%True表示保存到目前为止的结果
invoke(mws, 'DeleteResults');%删除之前的结果。注:在有结果的情况下修改模型会出现弹窗提示是否删除结果,这样运行的程序会停止,需等待手动点击弹窗使之消失
%%CST文件初始化结束
% 全局单位初始化
units = invoke(mws, 'Units');
invoke(units, 'Geometry', 'mm');
invoke(units, 'Frequency', 'ghz');
invoke(units, 'Time', 'ns');
invoke(units, 'TemperatureUnit', 'kelvin');
release(units);
%%全局单位初始化结束
% 工作频率设置
Frq=[5,15];
solver = invoke(mws, 'Solver');
invoke(solver, 'FrequencyRange', Frq(1), Frq(2));
release(solver);
%%工作频率设置结束
% 背景材料设置
background = invoke(mws, 'Background');
XminSpace=0;
XmaxSpace=0;
YminSpace=0;
YmaxSpace=0;
ZminSpace=50;
ZmaxSpace=50;
Background(background,XminSpace,XmaxSpace,YminSpace,YmaxSpace,ZminSpace,ZmaxSpace);
%%背景材料设置结束
% 边界条件设置。
boundary = invoke(mws, 'Boundary');
Xmin='electric';%常用的值:”electric””magnetic””open””expanded open””periodic”"conducting wall"等
Xmax='electric';
Ymin='magnetic';
Ymax='magnetic';
Zmin='open';
Zmax='open';
Boundary(boundary,Xmin,Xmax,Ymin,Ymax,Zmin,Zmax);
%%边界条件设置结束
% 去掉网格
%Plot.DrawWorkplane "false"
plot = invoke(mws, 'Plot');
invoke(plot, 'DrawWorkplane', 'false');
release(plot);
% 使Bounding Box显示
plot = invoke(mws, 'Plot');
invoke(plot, 'DrawBox', 'True');
%%使Bounding Box显示结束
程序代码虽然仅仅给了如何用matlab打开cst的调用函数,但是根据以上相关规则容易得到联合仿真的相关技术。欢迎讨论~