每页:
搜索

带标签的博客文章 技术资料

借助变形网格接口模拟平移运动

2015年 9月 4日

COMSOL Multiphysics 包含两个可用于手动定义有限元网格变形的接口,变形几何 接口和移动网格 接口。本篇博客中,我们将介绍应何时使用这些接口,以及如何通过它们来高效模拟平移运动。

借助扫掠网格改进网格划分

2015年 9月 2日

对有限元分析人员而言,模拟高纵横比的几何结构是更具挑战的一项任务。我们希望网格能精确表征几何与解,但又不希望网格单元过多,否则求解模型时将占据大量的计算资源。本文,我们将通过一些常见的仿真案例,分析如何借助扫掠网格生成精确有效的有限元网格。

如何利用子表单来组织仿真 App

2015年 9月 1日

组织布局是所有仿真 App 设计中的重要步骤。整齐有序的结构可以让 App 的开发过程变得更为流畅,同时也能提升用户的使用体验。今天,我们将介绍如何在 COMSOL Multiphysics 中利用子表单和表单集合来创建结构有序的 App。

网球拍“甜区”中的物理学

2015年 8月 27日

每年,来自全球各地的网球运动员都会齐聚美国网球公开赛,这也是网球界历史最悠久、规模最大的网球锦标赛之一。随着 2015 网球锦标赛的临近,我又想起了自己打网球的一些经历,每次击球的体验都不太一样。这只是我自己的主观感觉?还是这背后也存在相应的物理解释?在本篇博客中,我将通过建模与仿真来说明如何用所谓的“甜区”来解释这种感觉。

如何在仿真 App 的文件菜单中添加保存选项

2015年 8月 25日

当用户在运行您开发的 COMSOL App 时,得到了一组十分有意思的结果,他们也许想要保存 App 以便后续查看。然而如果没有保存选项的话,就不得不再次输入参数来重新运行仿真。这种低效的做法完全不符合仿真 App 的开发初衷。所以今天,我们将为您介绍如何在 App 中添加具有保存选项的文件菜单。

如何基于 COMSOL Multiphysics 模型开发 App

2015年 8月 18日

学习如何使用编辑器工具和记录代码功能,以简化您的应用程序构建过程,更直观的应用程序。观看视频。

使用广义拉伸算子模拟周期性结构

2015年 8月 11日

在建立多物理场模型的过程中,我们经常会遇到这样的情况:一个物理场的解是周期性的,或者非常接近周期性的,而其他感兴趣的物理场的解是非周期性的。如果我们提前知道这一点,就有可能利用这种周期性来减少计算。这篇博客,我们将演示如何利用COMSOL Multiphysics中的广义拉伸组件耦合来实现这一目标。 在微流体设备的多物理场仿真中利用周期性 首先我们来了解一下微流体设备,如下图所示。这类设备内具有很多微小的通道,其中充满了携带不同化学物质的流体。设计这些设备的一个共同目标就是要在一个小表面区域内实现最佳混合,因此通常会被设计为蛇形通道。 一个典型的微流体设备。图片源自 IX-factory STK 。在CC BY-SA 3.0下获得许可,通过Wikimedia Commons.共享。 下图是微流体设备的示意图,包括两个流体入口,两种流体中的溶剂(水)相同但溶质不同。在出口处,我们希望这些物质能够充分混合。为了模拟这种情况,需要求解流动的纳维-斯托克斯方程。计算出的流场可以作为控制物质浓度的对流-扩散方程的输入。COMSOL案例下载页面中的微混合器教程就是这种模型的一个示例。 现在,如果需要的话,我们可以对上图所示的整个装置进行建模。但是,如果我们忽略入口和出口附近的结构,就可以合理地假设通道弯曲处的流动在基本单元之间是相同的。因此,可以通过只求解一个单元内的流体流动,并在对流扩散问题的整个建模域中对该流动解进行建模,从而大大简化模型。 微混合器的示意图,描述了重复的单元以及入口和出口区域。 对于这样一个基本单元模型,将通道的壁设置为壁,无滑移条件。使用周期性流动条件设置速度,以使入口和出口边界处的速度是相同的,这样我们就能指定基本单元上的压降。使用单个点上的压力约束来测量固定压力场。本例中的流体是水,在室温和压力下定义其属性。绘制这个基本单元的流动解,如下图所示。 周期性的建模域和流体流动的解。 现在我们得到基本单元的解,就可以使用广义拉伸组件耦合,将解从这个基本单元映射到重复的域上,从而能够定义整个蛇形截面上的流场。 使用广义拉伸组件耦合模仿和重复使用解 COMSOL软件模型树中的组件>定义>组件耦合提供了广义拉伸功能。该功能的设置如下图所示。为了将解从一个域映射到其他域,这些域沿x轴偏移了一个已知的位移,目标映射使用表达式“x-Disp”作为x表达式。因此,原域中的每一个点都会沿着正x方向被指定的位移所映射。由于在y方向上没有位移,y表达式被设置为默认的“y”。 如下图所示,变量Disp是在三个域中的每一个域中单独定义的。因此,只需要一个算子就可以将速度场映射到所有域中。在原域内,使用的是零位移。 广义拉伸算子的设置和三个域中的变量定义。 定义了广义拉伸算子后,我们就可以在整个模型中使用它。在这个例子中,该算子通过稀物质传递接口定义速度场(如下图所示)。速度场由u和v给出,分别是x方向和y方向的流体速度。现在这个速度场的分量已经通过广义拉伸算子genext1(u)和genext1(v),在所有的重复域中分别被定义。 广义拉伸算子用于定义所有周期域的速度场。 现在,整个建模域的速度场已经确定,通过流入边界条件确定入口处的物质浓度。在入口边界上施加一个变化的物质浓度。在另一端施加一个出口边界条件。 虽然严格来说没有必要这样做,但是网格会从一个域中复制到其他所有域中,用于求解流体流动。复制域网格功能可以精确地复制网格,从而避免网格之间流动解的任何插值。 该模型将分两步进行求解,首先求解层流物理场接口,然后求解稀物质传递接口。这样做是合理的,因为它假定流场与物质浓度无关。浓度和映射的速度场的分析结果,如下图所示。 求解了所有重复域中的物质浓度(用颜色表示)。在一个域中求解了箭头所示的周期性速度场,并映射到其他域中。 结束语 我们讨论了如何使用广义拉伸组件耦合来设置周期性解的线性阵列,作为多物理场分析的一部分。对于圆形周期性,必须在目标映射中使用旋转矩阵,而不是线性偏移。在之前的博客中,我们详细介绍了定义这种旋转矩阵的例子。 文中应用的方法适用于其它任意物理场需要利用空间重复解的情况。在您的多物理场仿真中,会在哪里使用呢?

在 COMSOL Multiphysics 中对设计敏感性进行计算

2015年 8月 5日

COMSOL Multiphysics 中有一个十分实用却常常被人忽略的功能——计算设计敏感性。假设您用有限元模型计算某个目标函数,那么不论模型输入如何变化,您都能仅仅借助 COMSOL Multiphysics 软件包的核心功能轻松地计算出该目标函数的敏感性。在这篇博客文章中,我们将向您展示这项功能的使用方法。


浏览 COMSOL 博客