在 COMSOL Multiphysics® 模型中使用 MATLAB® 函数

Fanny Littmarck | 2014年 4月 18日

您知道可以在 COMSOL Multiphysics® 模型中使用 MATLAB® 函数吗?我们将在本视频教程中向您展示如何通过 LiveLink™ for MATLAB® 实现这一功能。

视频:LiveLink™ for MATLAB® 实例

 

模型下载

视频字幕

通过本教程, 我们将学习如何在 MEMS 发热电路中仿真焦耳热和热膨胀。器件由厚玻璃层上的薄镍层图案构成。通过镍层传导电流,产生焦耳热。除了玻璃的热导率,其他材料属性假定恒定不变。

创建一个 MATLAB® 函数读取随温度变化的热导率,通过插值得到玻璃层中随温度变化的热导率值。在热导率中添加随机部分体现材料属性的非均一性效应,该随机数随着 y 轴坐标值发生变化。

为了在 COMSOL Desktop® 中设定模型,我们将创建几何,设定物理场、指定材料属性、剖分网格和求解模型。

当我们在 COMSOL Desktop® 求解基本模型后, 将启动 Livelink for MATLAB® 载入 COMSOL® 模型。然后拟合数据获得随温度变化的电导率参数,指定玻璃和镍层的厚度限制。这些参数将用来更新模型。在一个嵌套 for 循环中求解模型,研究设计空间。

首先,让我们在 COMSOL Desktop® 创建模型。

我们首先选择三维空间,然后从添加物理场中选择三个不同的物理场接口。

在”结构力学”下选择”热应力”,点击增加。然后在”低频电磁场” 选择”电流,壳”。

最后,回到”结构力学”,增加接口。

接下来直接进入几何构建环节。我将从一个文件中导入已经准备好的几何。

接下来我们增加 全局定义,并创建 MATLAB® 函数。

函数名称定义为 thermal_conductivity,这个 MATLAB 函数的参变量是温度和 y 坐标。

从结构力学的接口开始进行仿真。我们只对镍层进行壳模型的仿真。

接下来是电流,壳接口。操作基本类似,我们指定镍层为壳。

然后在这些面上增加边界热源,将热应力接口耦合到由电流,壳接口产生的表面损耗。

这就是我们要告诉模型的:在这个边界上会发热。

接下来进入材料分支。

在材料浏览器的基本材料下选择 “Silica glass”,赋值给玻璃层。

这里列出的 Silica glass 所有属性都是常数,我们将修改”热导率”。

用 MATLAB® 函数 thermal_conductivity 代替数字,它的值将由温度 T 和 y 坐标决定。

当我们设定好材料属性后,开始定制网格。

当我们设定好网格后,就可以选择 “计算”。

当我们求解完模型后就可以创建一些图来查看结果。让我们来看看通过 MATLAB® 函数 thermal_conductivity 得到的玻璃的热导率。前面提到过加入随机来表现空间非均一性效应。我们比较热导率的颜色分布图,可以看到这种随机性。

现在我们已经在 COMSOL Desktop® 求解了基本模型, 接下来启动 LiveLink for MATLAB®,进入 MATLAB® 图形化用户界面。

我们有个小脚本,第一步先使用 mphload 命令,将 COMSOL Desktop® 的模型文件导入到 MATLAB® 工作空间。

完成后可以在工作空间中看到模型的结构。

最后让我们查看这个脚本的主体部分,我们通过嵌套 循环更新玻璃层和镍层的厚度,在循环中反复求解模型。我们还定制只显示最高设计点的温度,

使用诸如 mphglobal 和 mphmean 之类的函数来获得”最大界面应力”和效率等全局物理量,以及玻璃层底面上的平均温度。

当我们获得这些值后,就可以赋给 MATLAB 变量。

我们也可以在 MATLAB® 函数中使用 LiveLink™ 函数。例如,mphinterp 是一个 LiveLink™ for MATLAB® 函数, 您可以用于 MATLAB® 的标准偏差函数获得玻璃层底面上的温度偏差,得到一组任意坐标点上的结果。

当您求解完所有的设计空间,可以创建所需绘图,例如底面的平均温度、温度的标准偏差、最大界面应力图,以及传热效率等。所有这些可以表现为玻璃层和镍层厚度的函数。

让我们来瞧瞧,第一幅图实际上包含一组子图, 显示了设计空间中几个极端条件的温度。对应于最小和最大玻璃层的厚度以及最小和最大镍层的厚度。

接下来是玻璃底面的平均温度图,表现为玻璃层和镍层厚度的函数。可以看出,改变玻璃层厚对于平均温度影响不大,但是改变镍层厚度的效果相当地明显。镍层越厚,温度越高。

下一张图显示随玻璃和镍层厚度变化的温度偏差,表现出很明显的非线性行为。

接下来是随两种厚度变化的最大界面应力,同样,我们看到了类似的非线性行为。玻璃层越厚,镍层越薄,界面应力就越大。

MATLAB 是 The MathWorks, Inc. 的注册商标。


Categories

Loading Comments...