Kristian Ejlebjærg Jensen – COMSOL 博客 - //www.denkrieger.com/blogs 发布博客 Thu, 26 Sep 2024 18:34:24 +0000 en-US hourly 1 https://wordpress.org/?v=5.7 通过形状和拓扑优化实现特征频率最大化 //www.denkrieger.com/blogs/maximizing-eigenfrequencies-with-shape-and-topology-optimization //www.denkrieger.com/blogs/maximizing-eigenfrequencies-with-shape-and-topology-optimization#respond Mon, 22 Jan 2024 02:22:46 +0000 http://cn.staging.comsol.com/blogs?p=356671 许多机械组件都是在振动环境中运行的,如果组件的特征频率较低,就有可能引起共振。无论是对汽车内饰件的轻微干扰、高精度制造中的临界误差,还是土木工程中的危险失效,都会造成不同程度的影响。这篇博客介绍了如何利用形状和拓扑优化最大程度地提高最低特征频率,从而降低共振的可能性。COMSOL Multiphysics® 软件的内置功能允许使用基于梯度的优化来解决这些问题。

机械共振简介

当机械系统受到频率与系统固有频率相匹配的力的激励时,就会产生机械共振,从而导致高振幅振动。我们可以在例如手表和乐器中利用这种效应,但本文我们将重点讨论需要避免的共振,这些共振可能会导致机械疲劳,或土木工程中的失效等问题。可以采取多种措施来减少共振,例如安装主动或被动隔振系统,或引导用户避免引起共振的行为。例如,在如下图所示的一座著名的伦敦大桥上,一个指示牌要求士兵们在过桥时换便步走,以避免行进时的统一节奏引起危险的机械共振。

避免产生机械共振的另一种简单策略是,提高最低固有频率。在此,我们将探讨如何通过优化来实现这一目标。

一张伦敦阿尔伯特桥的照片。
伦敦阿尔伯特桥上有一个指示牌,提示士兵在桥上打乱步伐行走,以避免共振。原图由 Colin Smith 提供,经 CC BY-SA 2.0 许可,通过 Wikimedia Commons 共享。

优化简介

所有优化问题都由许多设计变量组成,这些变量需要通过优化算法来改变,以提高某个特定的量,即 目标函数。此外,还可能存在需要求解其他不能超过某些界限的变量,也称为约束条件。在 CAD 背景下,目标通常使用仿真计算。

对于优化算法,我们可以作如下区分:

  1. 无梯度优化,即只使用目标值和约束条件值来更新设计变量的优化
  2. 基于梯度的优化,了解目标和约束条件对设计变量变化的敏感程度的优化

基于梯度的优化在每次迭代中都能获得更多信息,因此速度明显更快,尤其对于设计变量较多的问题。由于速度差距之大,因此第一种方法对于形状和拓扑优化的大多数应用来说都是不实用的。COMSOL Multiphysics® 支持此处列出的两种优化算法,但本文将重点讨论基于梯度的优化。

在下面的例子中,我们的目标是最大程度地提高最小特征频率,也可以最大化与环境中自然出现的某些不需要的频率之间的距离。特征频率问题经常出现的一个方面是,即使结构包含设计对称性,其特征模态也可能是非对称的。因此,每次迭代都必须对整个结构进行模拟。不过,如果初始设计是对称的,则可以使用COMSOL中的 形状优化拓扑优化 接口中的镜像对称 功能保留对称性。

形状优化

第一个示例为一个一端固定的壳模型。通过对边界变形 ,应用基于偏微分方程的正则化来保持法向量的连续性,类似于拓扑优化中使用的亥姆霍兹滤波器,即:

\mathbf{d} = L_\mathrm{min}^2 \nabla^2 \mathbf{d} + \mathbf{c}, \quad ||\mathbf{c}||\leq d_\mathrm{max},

式中, 是最大位移,是滤波长度, 是变形的最大斜率, 是边界变形的控制变量场。对实体进行形状优化时,还有一个用于平滑内部单元的偏微分方程,但在实际操作中,一切都使用形状优化 接口中的自由形状域自由形状边界自由形状壳 功能处理。这些功能只能在基于梯度的优化中使用。除了基于偏微分方程的形状正则化之外,我们还可以使用多项式正则化技术或对几何结构进行简单的更改,如平移、旋转和缩放。(有关平移和缩放的更多信息,请参阅电磁学中的形状优化系列博客。)下面的动画演示了在保持设计对称性的同时,使用基于偏微分方程正则化的结果。

 

在整个优化过程中,壳的设计都是变化的。

切换处理模式时,始终求解前六个特征频率,并使用移动渐近线法(MMA)最大化最小特征频率。

第二个示例是一个实心支架,但支架的几何形状有点像壳,因此需要保留支架臂的厚度。这可以结合广义拉伸 算子与指定变形 功能来实现(更多信息请参阅 COMSOL® 案例库中的 支架-特征频率形状优化教学案例)。除此之外,就目标和对称的实现而言,此模型的设置与之前的模型类似,但初始设计并没有那么糟糕,因此优化并不明显(如下图所示)。

分别通过蓝色、绿色和红色线显示第一、第二和第三本征频率的曲线图。
用插图表示的优化过程,分别说明了第一和第二特征模式的初始和优化支架几何结构。图中的支架被固定在四个小孔上。

拓扑优化

在进行拓扑优化时,尤其是使用软件中的 拓扑优化 接口时,也可以使用基于梯度的优化。关于拓扑优化的详细介绍,请参阅博客:“通过密度方法进行拓扑优化。”基本思路是引入一个随空间变化的、边界在 0 和 1 之间的设计变量场 ,分别对应空域和固体材料。对于结构力学来说,密度和杨氏模量(刚度)都取决于这个变量。这种依赖关系并不明确,使用最小长度尺度 对问题进行正则化是有利的。此外,还需要以不同于刚度 的方式对密度 进行插值,以防止设计变量的中间值因其良好的比刚度而在优化设计中占主导地位。设计变量场与材料特性之间的关系由以下公式给出:

\theta_f &=& L_\mathrm{min}^2\nabla^2\theta_f+\theta_c \\
\theta &=& \frac{\tanh (\beta[\theta_f-1/2])+\tanh (\beta/2 )}{2\tanh(\beta/2)} \\
\rho &=& \rho_\mathrm{mat}\theta \\
E &=& E_\mathrm{mat}(\theta_\mathrm{min}+(1-\theta_\mathrm{min})\theta^{p_\mathrm{SIMP}}),

式中, 是滤波设计变量, 是投影斜率参数, 是固体各向同性材料罚函数的参数。这些参数会对优化设计产生很大影响,因此为了避免出现不良的局部极小值,有必要对这两个参数的多个组合进行优化求解。也就是说,要对优化问题进行参数化扫描求解,如下图中的梁示例所示。这个梁一端固定在左侧,另一端支撑一个占总重量15%的重物。梁承受40%的体积约束。拓扑优化问题针对 的五种参数组合求解, 即 (1, 2), (2, 4), (3, 8), (4, 16), 和 (5, 32)。预计初始优化的连通性和灰度较差,但这些非物理设计为后面的优化提供了良好的初始设计。

在整个优化过程中,梁的结构都是变化的。位移通过 等值线上的颜色显示。

在进行拓扑优化时,最好在过滤器数据上进行仿真验证。在 COMSOL 案例库的教学模型中,对此模型进行了验证,并且结果显示,与原始优化结果相比,拓扑优化后的设计在更高的特征频率下性能更好。这是意料之中的,因为隐式设计表征法会使实体–空腔界面附近的材料刚度降低。

最后,这里显示的是单一的优化结果,但通过使用不同的体积分数、附加质量或最小长度尺度值,可以轻松生成不同的设计。

结论

在 COMSOL® 中,可以利用形状和拓扑优化实现特征频率的最大化。对称条件通常无法强加给物理场,但我们可以对优化进行限制,以便仍能产生对称设计。如果目标是将到某个不需要的频率的距离最大化,也可以采用处理模式切换的最大/最小策略。

要获得特征频率最大化的实践经验,请至 COMSOL® 案例库下载文中提到的示例:

]]>
//www.denkrieger.com/blogs/maximizing-eigenfrequencies-with-shape-and-topology-optimization/feed/ 0
立式推力轴承的形状优化和拓扑优化 //www.denkrieger.com/blogs/shape-and-topology-optimization-of-step-thrust-bearings //www.denkrieger.com/blogs/shape-and-topology-optimization-of-step-thrust-bearings#comments Tue, 19 Dec 2023 02:37:25 +0000 http://cn.staging.comsol.com/blogs?p=352231 立式推力轴承用于支撑旋转机械中的轴向载荷,由于承载能力取决于几何形状,因此可以通过形状优化和拓扑优化来最大限度地提高轴承的承载能力。形状优化通过改变轴承中阶梯的形状来实现,而拓扑优化则使用隐式几何描述,因此阶梯的数量可以变化。

简介

在建立立式推力轴承模型时,我们假设:

  1. 液膜厚度远小于轴承横向尺寸
  2. 与润滑油薄膜造成的剪切效应相比,惯性效应可以忽略不计
  3. 体力可忽略不计
  4. 润滑剂为牛顿流体
  5. 由于油膜的长宽比很大,面外速度可以忽略不计
  6. 速度大小取决于面外坐标的分析结果

假设 2–4 成立表示纳维-斯托克斯方程可以简化为斯托克斯方程,假设 5–6 成立则使我们能够进一步假设流体速度与压力梯度成正比。考虑到这几点以及其他假设,控制方程可以简化为标准的雷诺方程,但为了考虑气蚀问题,本文使用的是 Jakobsson–Floberg–Olsson (JFO)理论。您可以从下面的压力分布草图中看到这一点。当流体通过收缩处时,压力逐渐减小,直到接近下一个阶梯的凹槽时才开始增大。

用彩色标尺表示的立式推力轴承模型
带轴环的立式推力轴承简图。颜色表示压力。请注意,阶梯并没有明确的三维模型,因此该图并不代表计算网格。

采用 COMSOL Multiphysics® 软件中的液体动压轴承 接口模拟轴承的物理场。这个功能没有明确考虑面外尺寸,而是使用平面几何代替,并在方程中直接考虑厚度变化,如上图所示。

承载能力取决于压力分布,而压力分布又取决于阶梯的形状。因此,应用形状优化来最大限度地提高承载能力是合理的,

\mathrm{obj}=\int_\Omega \boldmath{f}_\textrm{c}\,d\Omega,

其中, 是作用在轴颈上的分布力,由泊肃叶(Poiseuille)压力、库埃特(Couette)压力和法向压力分量组成。如前所述,该模型考虑了气蚀,但没有尝试限制气蚀的严重程度。

形状优化

形状优化通过网格变形来改变现有形状。在形状优化 接口中,有许多内置函数可以实现这个操作,本文的示例中使用了三阶多项式壳 特征,其中禁用了面外变形。在一组瓦的前边和后边上应用此特征,并使用扇区对称 特征将网格变形复制到其他瓦上。

这里演示的方法将点的位置固定在圆形边界上,但也可以让这些点沿着圆形边界滑动。不过,这需要使用基于方程建模,并分别在阶梯的后边和前边上应用 控制函数 特征,但这样会使设置变得复杂。设计自由度的提高只能略微优化性能,因此本文将重点研究更简单的方法,COMSOL® 6.1 版本的案例库中内置了一个替代案例,您也可从 COMSOL 官网的案例下载页面下载。

形状优化的结果如下图所示。结果取决于边的最大变形量和初始凹槽角度。优化后的设计在将油压到瓦上之前,先将油推到中间。

立式推力轴承的初始设计和优化设计。
图中显示了初始设计(左)和优化设计(右)。图中箭头表示平均流体速度,颜色表示压力分布。

在变形设置中通过重新划分网格进行验证是一种较好的做法。从COMSOL案例库中此模型的演示中可以看出,验证并未发现任何数值问题。

在本示例中,最大变形和沟槽角度被固定为与瓦数量无关。因此,最佳瓦数量为4个,如下图所示。

绘图显示了立式推力轴承的最优瓦数量为4。
对不同数量的瓦进行形状优化,并将优化后的目标绘制成图。当瓦数量为4时,出现最大值,插图显示了网格的变形情况。

无论采用哪种物理方法,形状优化的工作原理都是一样的,因此很容易设置仿真。为了避免数值问题,形状优化引入的网格变形是有限的,但您可以自由尝试在大设计自由度与高性能优化,以及小设计自由度与稳健优化之间取得平衡。无论如何,优化设计在很大程度上依赖于初始几何图形,拓扑结构(以及阶梯数)只能作为优化的输入,而不是输出。拓扑优化通过引入对几何图形的隐式描述来解决这一问题。这种方法可能有其自身的缺点,但在这个示例中,使用拓扑优化方法不会带来任何明显的复杂性。

拓扑优化

拓扑优化是通过为每个计算单元引入一个与物理量相关的设计变量 来实现的。该变量被限制在 0 和 1 的封闭区间内:

  1. 当设计变量等于 0 时,求解与凹槽相对应的控制方程
  2. 当设计变量等于 1 时,求解与瓦相对应的控制方程
  3. 当设计变量介于 0 和 1 时,求解的是将凹槽和瓦的方程结合在一起的控制方程

凹槽和瓦之间的唯一区别在于油膜厚度 ,因此只要让油膜厚度取决于设计变量,就能满足上述要求。对于其他拓扑优化问题,第三点需要特别注意的是细节,但在本例中,简单的线性插值就足够了。

h_f &=& h_\mathrm{pad} + (h_\mathrm{groove}-h_\mathrm{pad})\theta_f,

其中, 是物理场,而是控制变量场。在这个示例中,可以设置 ,但可以通过引入滤波器来去除控制变量场中的小尺度长度来改善收敛性。这样做还能为结果评估和验证提供更平滑的结果。滤波器可用下列偏微分方程(亥姆霍兹滤波器)表示

\theta_f &=& R_\mathrm{min}^2\mathbf{\nabla}^2 \theta_f+\theta_c \quad \mathrm{和} \quad 0 \leq \theta_c \leq 1,

其中, 是最小尺度长度。(有关拓扑优化的亥姆霍兹滤波器和正则化的更多详细信息,请参阅博客:通过密度方法进行拓扑优化

优化可以自由地将设计变量设置为中间值,在这个示例中,我们可以将其理解为中等油膜厚度,但中间值通常没有明确的物理表示,或者至少没有实际意义。从优化自动找到一个没有中间设计变量的解的意义上来说,这个问题似乎本身就很好解决,也就是说瓦和凹槽之间有明显的区别。

拓扑优化最好从设计变量的均匀值开始。如下图所示,这样的设计有4个瓦,但也可以从非均匀设计开始,以获得不同的局部最优值。

图片显示了立式推力轴承中的最优瓦形数量为4.
采用不同的非均匀初始设计对拓扑优化进行初始化,以生成某些拓扑结构。图中显示最优瓦数量为 4 个。

对于这些设置,形状优化和拓扑优化结果非常一致。

在进行拓扑优化后,验证仿真也是一种很好的实践,但形状优化验证的目的是检查与变形单元相关的数值问题,拓扑优化验证的目的是检查与隐式几何表示相关的问题。因此,拓扑优化验证使用的是显式几何表示法,其目标函数明显更好,这表明隐式几何描述需要大量计算成本。进一步探索发现,如果使用更精细的网格,拓扑优化的目标函数会明显更好,如下面的动画所示,该设计初始化时采用了 16 个瓦的拓扑结构。由此产生的设计与之前的设计在质量上相似,类似与人字形槽推力轴承。

 

对初始含 16 个瓦的轴承进行拓扑优化。

所有优化都考虑了固定的旋转方向,这一点在优化设计中清晰可见。初始设计相对于旋转轴是对称的,因此,放宽这一限制显然可以提高性能。正因为如此,如果在优化中同时考虑两个旋转方向,预计目标也会变小。

结语

在这篇博客中,我们讨论了如何利用形状优化和拓扑优化设计立式推力轴承。文章讨论的物理场和优化设置可以通过下列模型及其相关文档进行验证:

进阶学习

您可以查看以下资源了解更多有关优化的信息:

]]>
//www.denkrieger.com/blogs/shape-and-topology-optimization-of-step-thrust-bearings/feed/ 1
应力最小化:改善疲劳行为的启发式算法 //www.denkrieger.com/blogs/stress-minimization-a-heuristic-approach-for-improving-fatigue-behavior //www.denkrieger.com/blogs/stress-minimization-a-heuristic-approach-for-improving-fatigue-behavior#respond Mon, 05 Jun 2023 06:20:26 +0000 http://cn.staging.comsol.com/blogs?p=341031 许多疲劳评估指标是基于应力评估的,然而,它们与高性能优化方法如基于梯度的优化不兼容,因此直接应用优化方法来改善疲劳性能具有挑战性。这篇博客,我们将介绍如何将应力最小化作为一种启发式算法来改善疲劳行为。该方法通过基于梯度的优化改善数千个设计变量,同时又能保持设计的质量和刚度特性。

理解疲劳

当一个零件受到反复加载的载荷时,材料中就会出现小裂纹。这些裂纹可能会随着每个载荷周期开始增长,直到快速进入扩展阶段,最终导致零件的结构失效。这种起始、扩展和最终失效的过程定义了疲劳断裂过程。实际上,在大多数情况下,目标是完全防止裂纹产生,因为一旦裂纹产生,控制其扩展阶段是一项艰巨的任务。疲劳分析的目标是计算出零件在发生裂纹之前所能承受的载荷周期数。这就是疲劳寿命的定义。

一张显示了窗户的哈维兰彗星1号幸存机身的照片
哈维兰彗星是一架飞机,由于它的窗户附近的冲压铆钉孔出现了疲劳裂缝而在飞行过程中解体。为了防止这种情况再次发生,后来的飞机采用了胶水连接的窗户。图片来源:Completeaerogeek。获得CC BY-SA 4.0授权许可,通过 Wikimedia Commons 共享。

疲劳裂纹的产生取决于零件上的载荷和载荷产生的应力。应该注意的是,疲劳裂纹可以在远低于材料屈服应力的应力水平下产生,并且反复加载的载荷是疲劳裂纹产生的主要驱动力。然而,从设计的角度来看,不考虑载荷的周期性行为,而是通过考虑静态载荷来确定高应力的区域是有用的。

应力最小化

最大应力的最小化是结构力学分析中的一个常见目标,但这种优化问题在实践中很难解决,因为最大应力的精确位置在优化过程中会发生变化。因此,通常使用近似最大应力的应力集中方法,特别是使用 von Mises 应力的 p 模来计算:

\sigma_\mathrm
{max} \approx \left(\frac{\int_\Omega \sigma^Pd\Omega}{\int_\Omega d\Omega}\right)^{1/P}.

随着 近似的准确性会提高,但也会导致梯度变化更快,从而导致数值问题。因此,很少使用大于 10 的值进行拓扑结构优化。不过,这篇文章的重点是形状优化,在不会引入数值问题的情况下有时可以使用大于 50 的值。近似最大应力 ,以及它的变体可以用来约束形状和拓扑优化中的应力,如 COMSOL 案例库中的飞轮厚度分布优化模型和具有最大应力约束的承载膝状结构的拓扑优化模型。接下来我们将介绍几个示例,来说明最大应力的最小化目标可以作为疲劳行为的形状优化的启发式算法。

支架的结果

第一个例子是用于演示结构力学中的各种概念的支架模型 (了解更多信息,请查看支架-疲劳评估应力优化模型)。下图显示了载荷、边界条件与应力分布。在固定孔上使用了弹簧以避免人为的应力集中。另外,该模型也可以扩展为包括螺栓的模型。

两幅支架模型图,左边显示边界条件,右边用彩虹色标尺显示了应力分布。
绘图显示了边界条件(左)和初始应力分布(右)。应力集中在支架顶部的圆角附近。

优化使用上一节中提到的 p 模()作为目标函数,但也加入了约束条件,以避免较重或刚度较低的结构。这里给出的 3D 示例使用了自由形状边界 功能,但是 COMSOL Multiphysics® 软件还有其他各种内置的形状优化功能,如博客文章电磁学中的形状优化:第一部分中所介绍的。使用自由形状边界 功能可以改变有问题的圆角的形状,减少应力集中,从而改善疲劳性能(如下图所示)。

支架模型的两个特写图显示了初始圆角设计(左)和形状优化设计(右)之间失效循环次数的增加。中间图说明了形状的变化,彩虹色比例对应于添加或删除材料的区域。
初始设计和优化设计(分别为左侧和右侧)的失效周期数切面图。形状的变化也用中间截面的箭头来说明,其中蓝色和红色区域分别对应于材料的去除和添加。

一般来说,只要一个部件的任何部分超过了疲劳寿命,它就会失效,所以导致失效的最小载荷周期数才是最有意义的数字。理想情况下,我们想直接使用这个数字作为目标,但这个数字和 p 模目标之间有很好的一致性,如下图所示。

p-模目标(蓝线)和优化迭代中失效的最小循环次数(绿线)的 2D 图显示了两者之间的强相关性。
p 模目标与达到失效的最小周期数绘图。某些迭代数提高了 p 模值,但没有增加最小失效周期数,但这两者之间具有很好的相关性。

Von Mises 应力和疲劳寿命

怎么解释纯 Von Mises 应力最小化与疲劳寿命提高的相关性?一个部件的疲劳寿命受到许多因素的影响,其中应力幅值是主要的影响因素。疲劳寿命也受到平均应力的显著影响。在载荷正向和反向的应力均值为零的常见情况下,各处的平均应力均为零。

通常情况下,疲劳裂纹源于应力集中的自由表面。在自由表面上,主要是平面应力状态,但在实践中,通常可认为应力状态接近于单轴应力。这意味着,例如,第一主应力和 Von Mises 等效应力将是相同的。

对于混合应力的情况,即由静态载荷提供平均应力和另一个载荷提供脉动载荷的案例,这种方法不一定是最优的。但即使如此,也有很大的成功机会,因为在应力集中的地方,不同类型的外部载荷通常会导致相似的应力模式。

轮辋的结果

第二个例子是轮辋,来自轮辋-带疲劳评估的应力优化模型。这个模型在概念上与支架相同,除了以下四个点:

  1. 有几个载荷的情况下,疲劳分析寻找最差的组合(使用 Findley 准则),所以预计与最大应力的关系较弱。
  2. 实际上,载荷更多也会导致更多的约束。
  3. 扇形对称是为了进行形状优化而强加的(不是物理上的)。
  4. 在结果中使用疲劳使用因子(而不是疲劳寿命),这可以被认为与安全系数有倒数关系。

轮辋的几何形状、约束条件和边界条件如下图所示。螺栓使用了简单的固定边界条件,引起人为的应力集中,所以这些区域被排除在疲劳分析之外。

某轮辋模型疲劳分析图。在左边,不同的载荷工况用不同的颜色表示。右图为初始疲劳使用因子图。
用不同颜色的箭头表示(左边)不同的载荷工况。右图绘制了初始疲劳使用因子,该图考虑了所有的载荷工况,对应一整圈车轮。注意,粗大的网格可以用在辐条上,但不能用于疲劳或应力评估。车轮还受到来自轮胎内气压的载荷,但图中没有考虑。

优化仍然使用 p 模目标()以及对质量的约束,但是这个例子考虑了更多的载荷工况,所以有更多的约束。下图说明了优化如何通过修改圆角来提高疲劳寿命。

两幅轮辋模型的近距离图显示了初始圆角设计(左)和形状优化设计(右)之间疲劳使用因子的降低。中间图说明了形状的变化,与添加或删除材料的区域相对应的颜色比例。
初始设计和优化设计(分别是左边和右边)的疲劳使用因子切面图。箭头表示说明了中间切面的形状变化,灰色和黑色的线分别表示初始和优化的几何形状。

在这个例子中,p 模目标和失效前的最小周期数之间也有很好的相关性,从下图中可以看出。值得注意的是,其中两个载荷工况在 p 模方面占主导地位,但所有的约束条件在整个优化过程中都保持激活。

p-模目标(蓝线)和疲劳使用因子(绿线)在优化迭代中的二维表明,两者是强相关的。
p 模目标与最大疲劳使用因子绘图。这两条曲线似乎具有很好的相关性。请注意,疲劳使用因子是在对数轴上绘制的。

结语

疲劳寿命的优化并不简单,但使用基于应力的形状优化通常可以改善疲劳行为。优化的结果应该用疲劳分析来检查,并且可以作为工作流程的下一阶段的输入。

在这篇博客中,我们重点使用 Von Mises 应力的 p 模作为目标,但由于 COMSOL Multiphysics® 自动执行基于梯度的优化所需的敏感性分析,因此也可以很方便地使用其他物理量作为优化目标进行试验。

]]>
//www.denkrieger.com/blogs/stress-minimization-a-heuristic-approach-for-improving-fatigue-behavior/feed/ 0
使用铣削约束进行拓扑优化 //www.denkrieger.com/blogs/performing-topology-optimization-with-milling-constraints //www.denkrieger.com/blogs/performing-topology-optimization-with-milling-constraints#respond Wed, 01 Feb 2023 03:44:33 +0000 http://cn.staging.comsol.com/blogs?p=327031 拓扑优化由于具有极高的设计自由度,因此能实现极致的设计性能,但通过拓扑优化产生的设计往往无法通过传统的制造技术去实现生产。一直以来,研究用于拓扑优化的制造约束都是一个热点课题。COMSOL Multiphysics® 软件支持模拟铣削约束,在这篇文章中,我们将解释如何使用这种功能并介绍一些示例。

拓扑优化

密度法是进行拓扑优化的最常见方法,在 COMSOL Multiphysics 中可以通过密度模型 特征实现。最常见的应用是在结构力学领域,通常需要正则化才能获得有意义的结果。密度模型 特征支持使用基于偏微分方程(PDE)的滤波器,也就是使用亥姆霍兹滤波器 进行正则化。下图显示的结构力学示例显示了参数优化、形状优化和拓扑优化之间的差异。有关更多详细信息,请参阅关于拓扑优化的博客文章“通过密度方法进行拓扑优化”。

三张垂直放置的图片,对结构力学问题中的以下优化方法:参数(顶部)、形状(中间)和拓扑(底部)进行了比较。
图1 梁的设计优化模型示例,分别使用了参数优化、形状优化和拓扑优化解决结构力学中的问题。目标是在约束右上角位移下使梁质量最小。只有拓扑优化才能在设计中引入孔。

铣削约束

密度模型 特征中,铣削约束是参考学术文献出版物(参考文献 1)来实现的。它的基本概念是使用一组在铣削方向 上具有对流的对流方程:

\theta_f &=& R_\mathrm{min}^2\nabla^2\theta_f+\theta_c, \quad 0\leq\theta_c\leq1

 

\theta_f/R_\mathrm{mil} &=& \hat{m}_\mathrm{mil}^i \cdot \nabla \theta_m^i, \quad \theta_m = \left[{\sum}_{i=1}^n ((\theta_m^i)^{-p_\mathrm{mil}})/n\right]^{-1/p_\mathrm{mil}} \\

 

\theta &=& \frac{\tanh(\beta(\theta_m-\theta_\beta))+\tanh(\beta\theta_\beta)}{\tanh(\beta(1-\theta_\beta))+\tanh(\beta\theta_\beta)}

 

\theta_p &=& \theta_\mathrm{min}+(1-\theta_\mathrm{min})\theta^{p_\mathrm{SIMP}}

 

第一个方程是亥姆霍兹滤波器,使用控制变量场 来计算最小长度尺度为 的过滤场 。对流方程(第二行)位于亥姆霍兹滤波器和投影之间。源项 的长度尺度通常可以根据网格大小设置。数值参数 与铣削变量 的聚合(指数)相关。对于 2~3 个铣削方向,数值 10 是合适的,但对于大量铣削方向可能需要高的值。投影斜率 也是如此,它比平时起着更重要的作用,因为投影的输入(第三行)通常明显大于 1。投影点 固定为 0.5。使用投影场 对密度进行插值,对固体各向同性材料使用罚函数(SIMP)对刚度进行插值(最后一行,)。通常,使用 避免最终设计中的灰度,当数值问题导致投影场略为负值时,使用 来确保鲁棒性。

我们只考虑单一材料的优化,因此体积 等同于质量 ,可以通过积分投影场并与密度 相乘来计算:

M=\rho V=\rho\int_\Omega \theta d\Omega

在公式中引入铣削约束会引入更多的局部最小值,并且在一系列优化被求解的情况下使用连续性可能是有益的。这大多数情况下是一个三维问题,所以与我们文中展示的第一个示例无关。

示例 1:二维梁结构

下图是对示例 1 的问题描述,与上一节中的问题一样,它也是一个结构力学问题,目标是约束右上角位移时使质量最小。但是这一次,由于施加了铣削约束,材料无法自由分布。此示例有两个与坐标轴重合的铣削方向,这意味着材料只能通过来自左侧或下方的“去除工具”去除。

一个铝梁模型,其中左端是固定的,顶部边界承受分布式载荷。
图2.带铣削约束的梁拓扑优化模型的问题表述,包括铣削方向 ,梁的左端是固定的,顶部边界则承受分布载荷。

如下图所示,密度模型 特征具有铣削约束的设置。启用投影非常重要,而且很多时候还需要将控制变量场初始化为明显小于 1 的值。

密度模型特征中的铣削约束设置的特写图。
图3. 启用铣削约束的示例,显示了 密度模型特征的用户界面(UI)。 投影部分在图中处于折叠状态,但在本例中,投影是使用默认斜率和投影点启用的。

优化 研究步骤中,定义了优化问题。MMA 是推荐的优化求解器方法,有时不使用全局收敛和/或移动限制是有益的。虽然使用默认的全耦合求解器也可以很好地实现优化求解,但上一节中的方程组包含一个用于过滤的线性方程,并使用两个用于对流的线性方程组形成单向耦合。最后一个方程与固体力学 接口相关的方程组,还有另一种单向耦合。因此,使用分离式 求解器求解要快得多。在这个示例中,分离式 求解器将计算速度提高了约 2 倍。

显示了模型开发器的 COMSOL Multiphysics 用户界面的特写图,其中高亮显示了分离式求解器,展开了相应的设置窗口中的常规部分。
图4.线性单向耦合问题的分离式求解器设置。使用 固体力学接口定义线性系统时,甚至可以将求解器限制为单次迭代,来节省一点计算时间。或者,可以在 固体力学接口步骤中使用多次迭代

优化结果如下面的动画所示。在二维建模中,引入铣削约束可以防止产生孔,因此从这个意义上说,拓扑实际上是合适的,并且本质上该方法被简化为一种允许大变形的形状优化。因此,最适合使用铣削约束的是三维建模,我们将在接下来的两个示例中进行介绍。

 

图示为不同的迭代次数绘制的材料体积因子 。无铣削约束的拓扑优化结果见图 1。

示例 2:三维扭转球

铣削约束降低了设计自由度,这应该更容易找到一个好的最优方案,但是由于还引入了非线性,在实践中,很容易得到局部最小值。如果分别在投影斜率 SIMP 指数 中使用连续策略,就可以在某种程度上避免这种情况。这种策略通常会产生良好的 3D 设计,但参数的选择可能对问题和铣削约束的数量很敏感。

考虑一个扭转球示例,这是一个经典的具有扭转荷载工况的基准问题,如下图所示。目标是最大限度地提高固定箱体和承受扭矩的箱体之间的刚度。这两个箱体沿扭矩轴分离,设计受到质量约束(相当于体积约束)。

一个扭转球体模型,有 4 个铣削方向,但只需要考虑2个方向。
图5. 扭转球问题的设置。有 4 个铣削方向,但强加了对称性,因此只需要考虑 2 个铣削方向。

下面的动画显示,在带和不带铣削约束的情况下的优化结果。密度模型特征支持对流方程的线性离散化和常数离散化,这个示例演示了输出不太平滑的常数选项。

 

用灰度图绘制了带(右)和不带(左)铣削约束优化时 的单元。每次迭代都会显示目标值和连续参数。

对不带铣削约束的优化结果是一个含内腔的封闭球形设计。这种设计不可能用传统的减材制造方法制造,但非常适合测试制造约束。对带铣削约束进行优化会产生一个不含内腔的设计,但这是以柔度(刚度的倒数)高出约 40% 为代价的。如果不添加更多铣削方向,很难显著改进优化目标,但是拓扑对连续的细节还是很敏感的。

示例 3:轮辋

最后一个例子是一个三维结构问题。目标仍然是使受体积约束的刚度最大,但这个示例与前面的问题有三方面不同:

  • 使用 12 个载荷工况而不是 1 个
  • 扇区对称仅适用于设计(而不是物理场)
  • 对流方程使用了线性离散化

使用 12 个载荷工况会导致更多的计算工作。但是,这些载荷工况可以并行计算,因此,如果有合适的硬件,计算时间不一定会大幅增加。

一个轮辋模型,显示了6个载荷情况,分别用红色、浅蓝色、蓝色、绿色、粉红色和黄色箭头表示。铣削方向用黑色箭头表示。
图6. 用各种颜色显示的载荷工况和用黑色显示的铣削方向来说明轮辋问题的设置。请注意,在轴向方向上还有第二组设置,并且只有四个螺栓孔受约束。

扇形区对称性是使用广义拉伸 算子强加的,该算子将设计变量从“控制扇形区”映射到其他扇形区。

https://comsol.wistia.com/medias/6ju19l1ox2?embedType=async&videoFoam=true&videoWidth=640&wmode=transparent
https://comsol.wistia.com/medias/qb5hn8rs7g?embedType=async&videoFoam=true&videoWidth=640&wmode=transparent

每次迭代都会显示目标值和连续参数。用灰度图绘制了带(右)和不带(左)铣削约束轮辋优化时) 的单元。

在这个示例中,使用铣削约束进行优化生成的是含非分支辐条的简单拓扑。辐条的横截面具有 z 形形状,以增加两个方向的弯曲刚度。

对合适的体网格进行验证

与密度方法相关的隐式几何表示总是会引入一些误差。这是由于非零刚度,以及实体和空隙之间过渡区域中的单元与较差的刚度质量比有关。后者的影响通常占主导地位,因此隐式几何表示法常常低估了性能。为了验证设计的性能,可以使用过滤器数据集将设计转移到一个新组件上。我们可以使用布尔表达式剪切单元,这样大部分网格就可以被回收,也可以将设计作为一个新的几何体导入并从头开始创建新网格,如下图所示。物理场接口(和特征)支持复制粘贴功能,因此简化了新组件的设置。物理场接口的选择将被重置,但在几何和定义下定义的所有选择都将自动转移到新的组件中使用。

三张垂直放置的图片,比较了以下方法:拓扑优化、验证(回收的网格)和验证(新的网格)。
图7.绘制了第一个示例(上图)的原始拓扑优化的位移场和网格。显示了带(中心)和不带(底部)回收网格的方法。在所有情况下,都绘制了示例的质量和约束。

下一步

如果您想要了解与进行拓扑优化有关的特征和功能的更多信息,请查看优化模块的介绍,单击下面的按钮,了解更多内容。

参考文献

  1. L.C. Høghøj and E.A. Träff, “An advection-diffusion based filter for machinable designs in topology optimization,” Computer Methods in Applied Mechanics and Engineering, vol. 391, p. 114488, 2022; https://www.sciencedirect.com/science/article/pii/S0045782521007003
]]>
//www.denkrieger.com/blogs/performing-topology-optimization-with-milling-constraints/feed/ 0
电磁仿真中的形状优化:第 2 部分 //www.denkrieger.com/blogs/shape-optimization-in-electromagnetics-part-2 //www.denkrieger.com/blogs/shape-optimization-in-electromagnetics-part-2#respond Fri, 16 Dec 2022 07:16:05 +0000 http://cn.staging.comsol.com/blogs?p=322181 使用形状优化可以增强许多应用领域的器件设计,包括电磁和射频(RF)应用。在这篇博客中,我们将通过两个案例,来说明使用形状优化所能获得的好处,并展示将 COMSOL Multiphysics® 软件中的形状优化功能应用于微波和毫米波时可以实现的目标。

本文是关于电磁仿真形状优化系列博客的第二篇博客。第一篇博客侧重于波动光学中的形状优化。点击此处,阅读第 1 部分内容。

背景信息

在深入研究形状优化之前,我们需要了解为什么可能会使用它而不是参数优化。形状优化和参数优化之间的主要区别在于,形状优化通过对网格进行变形来实现,这使得网格与基于梯度的优化兼容。这样可以提高方法的效率,并可以在标准工作站上以合理的计算时间优化数千个控制变量。虽然参数优化有它自身的好处,但由于它与基于梯度的优化不兼容,所以计算速度也很慢。正如这个系列的第一篇文章”电磁仿真中的形状优化:第 1 部分”中所解释的那样,这“限制了优化变量的数量,从而限制了设计自由度”。这就是我们在本系列中介绍形状优化的主要原因。

本文介绍的案例将使用移动渐近线(MMA)的方法作为优化算法来求解。特别地,我们将使用这个方法的全局收敛法,GCMMA,因为它通常能为最小最大值问题提供精确的结果。该方法还支持移动限制,从而降低了出现反转单元的可能性。基于这两个原因,形状优化是大多数形状优化问题的首选优化方法。但是请注意,也可以使用二阶方法(如 IPOPT 或 SNOPT)进行优化,对于简单的问题,其收敛可能比移动渐近线更快。

案例 1:滤波器

首先,我们以波导虹膜带通滤波器的优化 — 变换版本模型为例考虑形状优化。使用参数优化解决这个问题相对简单,但是形状优化更快。这个模型在概念上与第一部分博客中的滤波器案例相似,并且这两个案例都使用了变换 功能。但是,本示例中的几何形状不同,并且使用了最小最大值目标:

\phi=\[\max_f\begin{cases}\mathrm{S11}_{\mathrm{dB}}, & \text{当}\quad 2|f-f_\mathrm{pass}|<\Delta f\\\mathrm{S21}_{\mathrm{dB}}, & \text{其他}\end{cases}\]

其中 是通过频率, 是 S 参数的对数值。

该几何结构由四个虹膜组成,通过使用变换 功能控制其中两个虹膜的大小来优化这些虹膜。在相邻的边界上使用对称/辊支承 功能,以便更改虹膜的位置。请注意,两个虹膜可以彼此独立地变化,因为如果选择由不共享点的不同组组成,变换 功能就会自动拆分选择。当有许多对象需要优化时,这一点特别方便,就像本系列博客文章的第一部分所演示的那样。在这个示例中,通过使用广义拉伸 算子复制变形来保持双重对称性。生成的几何设计和 S 参数绘制在下图中。

An illustration of a shape optimized RF filter.
A graph showing the S-parameters plotted as a function of frequency for example 1.

用黑线绘制的设计是形状优化后的 RF 滤波器(左)。灰色椭圆中的线条被优化,并将形状变化复制到其他线条,以保持双重对称性。相应的 S 参数作为频率的函数被绘制在右侧图形中。图中的点表示用于优化的频率。

优化的设计可以被拉伸,以便在三维组件中被验证性能,如上图中的线条所示。

就像波导虹膜带通滤波器的优化 — 多项式版本案例中所演示的那样, 还可以通过将多项式边界 功能与不同的初始几何形状结合来设计滤波器。这增加了 33% 的控制变量和稍好的目标(用于三维验证),但它也有更加尖锐的角。我们很难事先预测特定应用的最佳策略,并且通常会以更大的设计自由度实现更高的性能,但这在设计过程的后期可能会付出高昂的代价。因此,必须经常在高性能和成本之间做出妥协。COMSOL® 能够以不同的方式轻松设置同一问题,并具有不同的设计自由度,从而为用户提供了做出明智决策所需的数据。

示例 2:双工器

第二个案例是双工器,这个想法是接受一个输入信号并将它路由到不同频率的不同输出端口。这类似于第一篇博客中的第二个示例,只是这里我们将使用多项式边界 功能。几何图形中顶点的坐标已经被优化了,但由于使用了一阶多项式,因此线条仍保持直线。此外,虽然目标函数的规范遵循与前面概述的相同思路,但希望输出频谱在带外抑制范围内没有峰值(共振)。强制执行这一点需要某种复杂的表达。目标函数的表述可以在使用形状优化为 5G 移动网络设计波导双工器案例中看到。在与输入和输出端口相邻的线路上应用对称/辊支承 功能,使这些线可以更改长度,但不能更改方向。下面的动画演示了优化过程。

 

动画显示了优化期间两个通频的电场的 z 分量。它还显示了相关的 S 参数。

用于优化的频率在下图中被绘制为点,而线条表示基于变形构型中生成的网格具有更精细分辨率的频率扫描。

A graph showing the S-parameters plotted as a function of frequency for example 2.

如上图中的点所示,该问题需要计算 26 个频率,但每个频率使用两个目标函数——因此计算灵敏度需要解决 52 个线性问题。这是一个令人尴尬的并行问题,下图演示了如何使用集群功能减少计算时间。

A graph showing the computational time for a single optimization iteration is displayed for four different nodes on a cluster.
对集群上的 1、2、4 和 8 个节点的单个优化迭代的计算时间进行了说明。即使模型只有 8.5 k 的自由度,在 4 个节点上也可以观察到良好的扩展性。但是,除了这一点,增加的通信成本超过了节省的计算时间,因此总计算时间实际上会增加。

良好的扩展性意味着使用 6 个节点可以在 30 分钟内解决优化问题。

结束语

在这个系列博客中,我们讨论了执行形状优化的好处,并介绍了电磁仿真中的几个示例。请注意,虽然本系列侧重于二维形状优化,但也可以对三维波传播问题进行形状优化。

后续步骤

有兴趣使用其他关于形状优化的教学模型吗?建议阅读下列案例:

 

]]>
//www.denkrieger.com/blogs/shape-optimization-in-electromagnetics-part-2/feed/ 0
电磁学中的形状优化:第 1 部分 //www.denkrieger.com/blogs/shape-optimization-in-electromagnetics-part-1 //www.denkrieger.com/blogs/shape-optimization-in-electromagnetics-part-1#comments Tue, 22 Nov 2022 05:32:36 +0000 http://cn.staging.comsol.com/blogs?p=319811 形状优化可以被用来改善许多不同物理领域的设计。在这篇博客中,我们将重点讨论波动光学中的形状优化。我们将复习 COMSOL Multiphysics® 软件中的形状优化功能,并说明当这些功能被用在波动光学类应用时,可以用它实现什么。

电磁学中的形状优化系列博客内容分为两部分,这是第一篇文章。第二篇文章将重点讨论射频(RF)应用中的形状优化。

参数优化与形状优化

形状优化与基于梯度的优化是兼容的,因为几何形状的变化是通过变形网格实现的。这可能是以较低的单元质量为代价的,从而限制几何形状的变化程度,特别是在三维中。参数优化与基于梯度的优化不兼容,因为几何形状的变化是通过重新划分网格实现的,请看下面的动画演示。

 

参数优化涉及重新划分网格,而形状优化则是对网格进行变形处理。

原则上,参数优化是一种比形状优化更通用的技术,但在实践中,由于它与基于梯度的优化不兼容,导致这个方法很慢。这限制了优化变量的数量,从而限制了设计的自由度。我们可以用参数优化来解决本系列博客中的例子。COMSOL® 确实支持这一点,但是,即使这些例子相对简单,这一方法的计算成本却高得惊人。因此,在很多问题上,形状优化比参数优化更适合。

COMSOL Multiphysics 包括一组内置功能,可以简化形状优化问题的设置。多项式壳 自由形状壳 功能是专门为壳设计的,通常是用在结构力学建模中。然而,大多数问题是在域(而不是壳)上定义的,多项式边界 自由形状边界 功能可以用来优化与这些域相邻的边界。就像它的名称所显示的,我们可以选择以多项式或基于自由偏微分方程(PDE)的方法进行正则化处理。变换 功能将形状变化限制在平移、缩放和/或旋转上。这个功能可以在域和边界上使用。该功能将倾向于改变边界的曲率和点的角度,但通过使用一阶多项式或变换 功能可以保持直线。最后,对称/辊支承 功能可以将边限制在平面上,或者将点限制在二维直线上,请看下面的图片示例。

一幅展示了在一个正方形图形上进行的四种不同类型的形状优化的插图,初始设计直接显示在优化设计的上方。
对于改变一个正方形的上边界,使它接近我们的目标边界(橙色)的问题,图中显示了四种不同类型的形状优化。为了优化第一个图的初始设计,将变换 功能与对称性/辊支承功能相结合使用,可以使上边界在 y 方向上移动。第二个图显示的是同时启用了旋转功能的变换,这需要使用一阶多项式,而不是对称性/辊支承功能。最后两个例子分别展示了多项式和自由形状的方法,两者之间没有什么区别。但是请注意,在这些例子中没有与左边边界相关的特征,因此左上角的点是固定的。

与其他功能相比,变换功能与较少的设计自由度有关,但这在将优化设计转换为 CAD 几何图形方面是一个优势。我们的系列博客将重点讨论 2D 中的形状优化,但所有的功能都可以在 3D 中使用。在下面的章节中,我们将举两个波动光学的例子。

示例 1:过滤

第一个例子考虑设计一个有弯曲的光子晶体。这个晶体由砷化镓制成的支柱组成,并使用了变形功能使柱子的位置可以改变。我们的目标是使波长为 1 µm 的光实现高功率传输,而波长为 1.3 µm 的光实现低功率传输。因此,目标函数的表达式将被最大化处理:

\phi_\mathrm
{filter}= \left. P_\mathrm
{out, 1 µm}
\right/ P_\mathrm
{out, 1.3 µm}

 
优化后的几何形状如下图所示,但由于问题的非直观性,我们很难理解它的工作原理。不过,我们可以再看一下输出边界的功率。可以清楚地看到,优化强调的是较大波长处的功率最小化,所以用最小化目标来表达目标函数可能更好。这将在下一个例子中得到证明。

带有弯曲的光子晶体的初始和优化几何形状的图像。初始设计以灰色显示,优化设计以黑色显示。
显示初始设计(蓝线)和优化设计(绿线)的输出功率,作为波长的函数绘制的线图。

左图:初始设计的几何图形用灰色绘制,优化后的设计用黑色绘制。右图:输出功率与波长的函数关系,优化中考虑了两个波长(以点表示)。

示例 2:分离器

第二个例子也考虑了光子晶体,但这次是用于多路分解。我们想设计一个装置,将两个不同的波长()路由到两个不同的输出端口,同时隔直其他波长。你可以把隔直和路由 的目标表达写作:

\phi_R &=& \[\begin{cases}-P^1_\mathrm{out}/P_\mathrm{min},& \text{if } \lambda<\frac{_1}{^2}(\lambda_1+\lambda_2)\\-P^2_\mathrm{out}/P_\mathrm{min},& \text{otherwise}\end{cases}\]
\phi_B &=& (P^1_\mathrm{out}+P^2_\mathrm{out})/P_\mathrm{max}-2

 
其中, 分别是路由和隔直的最小和最大功率。请注意,路由目标的定义取决于它是为  还是为  计算,因此,信号被激励向所期望的输出端口。如果相关的波长达到了所需的功率,则两个目标都等于-1,而如果没有达到所需的功率,则会得到更高的值,所以目标应该是最小化的。这些目标在最小化公式中被结合起来,也就是说,目标被当作几个目标的最大值。一些目标的不同只是因为它们是在不同的波长下计算的,而其他的不同是因为设备的理想行为取决于波长,因此目标的定义也取决于波长。最后的目标表示为:

\phi = \[\max_\lambda \left( \begin{cases} \phi_R & \text{if}\quad 2|\lambda-\lambda_1|<\Delta\lambda\quad\text{or}\quad 2|\lambda-\lambda_2|<\Delta\lambda \\\phi_B & \text{otherwise} %\end{cases}\] \right)

 
如果波长在 ,将使用路由目标;如果不在 ,将使用隔直目标。

与第一个例子类似,我们将使用变换 功能来优化光子晶体中支柱的位置。下面的动画说明了优化设计以及 的情况。电场也是在 的情况下显示的,每次优化迭代共计算了 14 个波长。

 

电场的 Z 分量被绘制为两个波长,并显示了端口的输出功率。

在这个例子中,我们选择了 ,于是产生了下图所示的频谱,但也可以通过改变参数来优先考虑隔直或路由。

显示蓝线;绿线;蓝色,开放方块;绿色,开放方块的图。这些分别代表了电源端口1(重修)、电源端口2(重修)、电源端口1(优化)和电源端口2(优化)的输出端口功率。
在优化(点)中,使用的波长的输出端口功率被绘制出来,并与在变形配置中重新划分网格后的端口功率图相比较。

端口功率在重新划分网格前后存在小的偏差,但只针对少数波长,而且优化结果似乎没有利用数值效应。此外,我们还可以看到,尽管目标只要求在主端口有较高的输出功率,但我们只在副端口得到一个小的输出功率。最后,值得注意的是,在所有的优化迭代中都考虑了每个支柱的位置对每个波长的敏感性。因此,每次迭代都会向优化求解器提供大量高度相关的信息。因此,只需经过 50 次迭代,就有可能找到 234 个控制变量的值。

在选择用于优化的波长时,有一个试验和错误的因素,最后一个例子使用了 31 个波长,这在计算上代价是很高的。计算时间可以通过使用集群来降低,我们将在本系列博客的第二部分中证明这一点,届时我们将研究射频频谱的优化问题。下一篇文章中所有显示的例子都将使用最小化公式与变换多项式边界 功能相结合。

下一步

欢迎下载本博客中介绍的模型,更深入地了解它的设置和结果。

  1. 用于信号滤波的光子晶体的优化
  2. 用于多路分解的光子晶体的优化
]]>
//www.denkrieger.com/blogs/shape-optimization-in-electromagnetics-part-1/feed/ 1
如何在 COMSOL® 中使用最大似然法进行参数估计 //www.denkrieger.com/blogs/how-to-use-maximum-likelihood-for-parameter-estimation-in-comsol //www.denkrieger.com/blogs/how-to-use-maximum-likelihood-for-parameter-estimation-in-comsol#respond Fri, 13 May 2022 07:10:57 +0000 http://cn.staging.comsol.com/blogs?p=302801 参数估计很少有醒目的插图,但往往对获得准确的材料数据,从而获得准确的模拟结果起着重要作用。它涉及最小化测量的实验结果与模型中的相应数据之间的差异。有时你可能需要结合几个实验的数据,就需要设置适当的权重,使所有的实验都能为估计的材料参数贡献信息。最大似然参数估计提供了一种根据客观标准自动选择权重的方法,以便从实验中提取最大数量的信息。

使用最小二乘法避免手动调整

最小二乘法是最大似然参数估计的一种特殊情况,它是基本参数估计的一个很好的起点,因此是一种很受欢迎的方法。COMSOL Multiphysics® 软件内置支持最小二乘法。

在这篇文章中,我们将演示如何利用最大似然参数估计来帮助避免为给定问题手动调整权重。

图中,蓝线表示杨氏模量相对误差,它是下降的,绿线表示泊松比相对误差,它是倾斜的
在这个示例中,两个参数的相对误差取决于为两组测量选择的权重。因此,准确地确定这两个参数需要在两个权重之间找到一个很好的折衷方案。

数据采样时的概率和统计

对于一个概率密度函数 ,在一定范围内 对一个数据点进行采样的概率 ,以积分的形式给出

P=\int_a^bf(x)dx.

在这种情况下,我们只考虑测量点 周围的无穷小的范围 ,所以概率变为

P=f(x)dx.

从这个意义上说,概率密度函数与由 给出的概率之间存在直接关系。(为方便起见, 可以省略。)

带有测量误差的标准差、无穷小范围和概率标记的钟形曲线,其中概率用红色突出显示。
可以通过对概率密度函数进行积分来计算对某个值进行采样的概率。

最小二乘目标和最大似然参数估计

可以考虑模拟和实验之间的不同差异来源。在下面的例子中,我们将考虑来自实际测量的正态分布的不确定性,因此测量值 的概率变为

g(x-x^e,\sigma)=\frac{1}{\sigma\sqrt{2\pi}}e^{-\frac{(x-x^e)^2}{2\sigma^2}},

其中, 是测量误差的标准偏差, 是平均值。对于 次测量,我们可以将联合似然计算为乘积

P=\prod_i^n g(x_i,x_i^e,\sigma) = \prod_i^n \frac{1}{\sigma\sqrt{2\pi}}e^{-\frac{(x_i-x_i^e)^2}{2\sigma^2}}.

我们可以取似然的对数来避免乘积和任何相关的数值计算困难。作为替代我们得到一个总和,类似于最小二乘目标:

\log(P) &=& \sum_i^n \log\left(\frac{1}{\sigma\sqrt{2\pi}}e^{-\frac{(x_i-x_i^e)^2}{2\sigma^2}}\right) \\
&=& \sum_i^n\left( -\frac{(x_i-x_i^e)^2}{2\sigma^2}-\log\left(\sigma\sqrt{2\pi}\right)\right)\Leftrightarrow \\
-\log(P) &=& n\log\left(\sigma\sqrt{2\pi}\right) + \frac{_1}{^2}\sum_i^n\frac{(x_i-x_i^e)^2}{\sigma^2}.

在某种意义上,我们可以说 在最小二乘目标中起到了权重的作用。因此,为了使可能性最大化,我们需要使方程的右边最小化,并且不用考虑 的取值,当平方差的和取最小值时,方程右边就会出现最小值。如果不同的测量结果集合中的 值也不同,就不能得出同样的结论。接下来,我们来看这样一个例子。

拉伸试验的最大可能性

通常通过压缩试验来估计材料的泊松比,但为了便于演示,我们以一个使用拉伸试验来估计泊松比和杨氏模量的示例来说明。我们通过测量下图所示试样的拉伸力和径向收缩来实现。

一个显示拉伸测试应力的模型,末端是紫色的,箭头指向外面,中心是红色的。

该图显示了拉伸试验的应力。力和中心径向位移被测量并表示为拉伸量的函数。

力和位移测量数据之间存在大约 10 个数量级的差异(SI 单位),所以使用常规的最小二乘法,我们需要调整最小二乘目标的权重来获得两个材料参数的准确结果。然而,我们可以通过两个测量误差 的标准差作为控制,使用最大似然法自动计算出最佳权重,即:

P_F &=& \prod_i^ng(F_i-F_i^e,\sigma_F) \quad \mathrm{和} \quad P_r = \prod_i^n g(r_i-r_i^e,\sigma_r) \\
P &=& P_F P_r \Leftrightarrow -\log(P)=-\log(P_f)-\log(P_r).

COMSOL Multiphysics 内置的最小二乘法目标法,让使用自定义目标来解决最大似然参数估计问题变得相当简单。COMSOL 案例库中提供的使用最大似然法进行参数估计模型,通过添加正态分布的噪点数据来生成合成数据。该模型在这些数据的基础上恢复材料参数和标准差,由此产生的力和径向位移如下图所示。

一个图显示了两条相交的线,蓝色的点是半径变化,蓝色的线是恢复的半径变化,绿色的点是力,绿色的线是恢复的力。
噪点数据和优化模型行为被绘制为拉伸量函数。两次测量都有 37 个数据点。

该模型能够将材料参数恢复到 0.1%-0.5% 的准确度和 6% 左右的标准差,预计准确度会随着测量次数的增加而增加。

在这篇博文中,我们只介绍了符合正态分布的噪点数据并且其标准差不变的情况,但最大似然参数估计还可以扩展到适合更多且更通用的情况,并且提取和估计信息时也能够保证数据的一致性和最优性。

自己尝试

单击下面的按钮,进入 COMSOL 案例库,自己尝试使用最大似然法进行参数估计模型。

更多资源

您还可以通过下面这些模型来探索更多参数估计的示例:

查看以下资源,了解有关参数估计的更多信息:

]]>
//www.denkrieger.com/blogs/how-to-use-maximum-likelihood-for-parameter-estimation-in-comsol/feed/ 0
为什么公路车和山地车的辐条样式不同? //www.denkrieger.com/blogs/why-do-road-and-mountain-bikes-have-different-spoke-patterns //www.denkrieger.com/blogs/why-do-road-and-mountain-bikes-have-different-spoke-patterns#respond Fri, 15 Oct 2021 07:36:09 +0000 http://cn.staging.comsol.com/blogs?p=281911 自行车制动器可分为轮辋制动器和轮毂制动器(包括盘式制动器)两大类。不同类型的刹车会在轮辋上产生不同的力,辐条系带也会产生一定的作用。在这篇博文中,我们将计算两种制动器和两种辐条系带在轮辋上的应力。事实证明,辐条径向带与轮毂制动器的组合是一个坏的组合。

刹车、轮辋和辐条样式简介

你有没有注意过,自行车的后轮从来没有径向系带?或者,你可能已经注意到,环法自行车赛(Tour of France)用车的前轮在过渡到盘式制动后看起来有些不同。原因是:为了避免在轮辋上施加过大的力,踩踏和制动产生的扭矩需要一个切向系带的车轮。这些力不会产生在轮辋制动器上,因为整个车轮作为一个拱形工作,轮毂上没有任何扭矩。这样会使轮辋更轻,从而解释了为什么有些轮辋上有一个警告:“仅限轮辋刹车!”

一张黑色铁人三项自行车靠在白墙上的照片
2005 年典型的铁人三项自行车,展示了当时高性能赛车的径向辐条的布局特点。图片由 GS 提供,א x 重新制作——自己的作品。通过Wikimedia Commons 获得许可(CC BY-SA 3.0)。

请注意,国际自行车联盟(UCI)在 2018 年之前禁止使用盘式制动,而且这一变化并不是没有争议。接下来,我们从结构力学的角度看看差异有多大……

模拟自行车轮辋中的力

本文,我们讨论模拟自行车轮辋模型中的力,模型使用COMSOL Multiphysics® 软件的附加产品设计模块结构力学模块建模。

模型中的轮辋和轮毂由铝制成,辐条由结构钢制成。轮胎压力设置为 3bar,使用 螺栓预紧力 特征施加 1kN 的辐条张力。考虑了几何非线性,使得模型的非线性增加,因此应用了逐渐施加载荷力。两种类型的刹车器作为单独的载荷施加,而辐条系带样式由一个参数控制。除了系带和刹车类型给出的四种情况外,我们还计算了制动力的影响。

仿真结果

下图显示了两种载荷和几何形状的轮辋中的平均应力。带有径向辐条系带和盘式制动器的外壳具有更大的应力。这解释了为什么使用专为轮辋制动器和盘式制动器设计的轮辋是不安全的。

比较两种不同轮辋制动器和两种不同盘式制动器的平均轮辋应力(以 MPa 为单位)作为制动力的函数的图表
盘式制动器会产生更大的轮辋力,这可能会导致切向系带车轮的车轮屈曲。

在径向辐条情况下,为了实现轮毂上的扭矩平衡,辐条力重新定向很有必要。这也是造成盘式制动器具有很大轮辋力的原因,如下图所示。这个应力虽然明显低于材料屈服应力,但仍可能足以导致屈曲失效。

显示边缘应力的图,使用彩虹色表在变形配置中可视化。 该图显示了用于具有径向和切向辐条图案的车轮的盘式制动器的情况(左)
为盘式制动器绘制的轮辋应力(彩虹色表)。请注意在径向辐条(右)情况下,轮辋如何相对于轮毂旋转。

轮辋的突然失效是一方面,但在保持对自行车的控制方面,刚度也可以发挥重要作用。下图显示了两种类型系带和制动的轮辋相对于轮毂的旋转情况。盘缘制动器引起轮辋的边缘旋转,而径向系带车轮上的轮辋制动器引起大的变形。

绘制不同车轮系带模式和刹车类型的轮辋相对于轮毂的旋转的图表
轮辋旋转主要取决于车轮系带和刹车类型(注意角度为对数轴)。

总结

我们模拟了不同刹车类型和辐条系带的自行车轮辋中的力。仿真结果解释了为什么有些轮辋中带有警告,并且还解释了为什么有些人仍然非常信赖轮辋制动器。

我们还有一篇以前的博客文章:自行车踏板如何保持不动?是关于自行车踏板的。这篇博客解释了为什么自行车踏板往往会停留在上面,如果您对此感兴趣,欢迎阅读。

下一步

单击下面的按钮,尝试模拟这篇博客文章中讨论的自行车轮辋模型:

延展阅读

]]>
//www.denkrieger.com/blogs/why-do-road-and-mountain-bikes-have-different-spoke-patterns/feed/ 0
利用拓扑优化设计区域热网 //www.denkrieger.com/blogs/designing-district-heating-networks-using-topology-optimization //www.denkrieger.com/blogs/designing-district-heating-networks-using-topology-optimization#respond Mon, 08 Feb 2021 02:19:22 +0000 http://cn.staging.comsol.com/blogs?p=248281 发电厂在冬季可以利用热电联产达到高效供电。它是如何做到的呢?依靠区域热网。以前,这种网络设计仅限于小型网络的线性模型或非线性模型。最近的研究表明,我们可以使用基于梯度的优化的非线性模型设计大型网络(参考文献 2)。这篇博客文章中,我们将使用 COMSOL Multiphysics® 软件及其附加的管道流和优化模块重现这项研究。

什么是区域热网?

供应电力的发电厂通常将不到一半的输入能量转换成电能。通过捕获发电过程中产生的热量可以提高效率,这些热量可以为城市的住宅供暖。

为了实现这种供暖系统,必须构建一个用于分配热量的管道网络。这项技术在冬天可以使发电厂的效率高达80%(参考资料1)!

A photograph of two large pipelines placed in a dug out hole.
来自德国 Tübingen 的区域热管示例。图片来源:BjörnAppel。通过Wikimedia CommonsCC BY-SA 3.0下获得许可。

模拟区域热网

本篇博文中讨论的模型考虑了相同的用户、连续的管道直径以及散热器和网络热损失的简单模型。这意味着最终生成的拓扑网络可能会很好,但是为了让定量的管道直径更有可信度,使用更高级的表达式和技术可能很有必要,如参考文献 2 中所描述的那样。

拓扑优化

优化问题包括控制、约束和目标三个因素。下面,我们来看一看这些因素对于优化问题有关的意义。

控制项

区域热网通常与道路基础设施保持一致,因此可以将网络设计方式的问题简化为以下问题:

  • 哪条道路应该有管道?
  • 这些管道应该多大?

消费者通常要为过热的热水付费,因为这浪费了泵送能量。因此,消费者希望能够降低通过换热器的流速,该换热器用于将热网连接到住宅物业的加热系统。但是,这可能会导致系统中的流速过低;从而使得热网到地面存在热量散失,进而导致距发电厂较远的消费者家里的温度较低。为避免这个问题,热网的末端配备了旁通阀,以确保末端用户有足够的流量。

因为我们不知道网络的终点,所以只是简单的将每个生产者都视为旁通阀,并优化了该阀的直径。我们还针对个人用户优化了散热器控制,从而有效地确定了用户级别的室温与网络加热流体之间的耦合常数。最后,我们可以优化网络上的驱动压力。

约束条件

为了使网络有效,它必须能够分配足够的热量给所有消费者,大型网络会拥有更多的消费者,从而导致了许多约束,造成计算量巨大。解决这个问题的一种惯用方法是使用约束聚合技术,将大量的线性约束转换为单一的非线性约束,即

C = \frac{\log(\sum_{i=1}^{N_\mathrm{consumers}} \exp(\beta\left(P/P_\mathrm{target}-1\right)^2))}{\beta N_\mathrm{consumers}} < 1

对局部约束的违反将随着 值的增大而减少 ,但是较大的值也会引起数值问题。因此,在实践中,必须找到一种折衷的办法。

目标

建立网络的主要成本与挖掘沟渠的总长度有关,且较大的管道比较小的管道成本更高,因此我们可以将估算成本:

\mathrm{EUR}_\mathrm{pipes} = \int_\mathrm{roads} (a D + b ) dl,

这里, 是管道直径, 是挖沟渠的成本, 是一个参数,这表明了一个事实:购买和安装更大的管道成本更高。值 是根据参考文献 1 估算的。

就其本身而言,这将导致一个具有非常小的管道和较大压降的网络,从而需要昂贵的泵。我们可以通过添加与泵送功率相关的项来避免这种情况,因此总目标函数变为

\mathrm{EUR}_\mathrm{total} = \mathrm{EUR}_\mathrm{pipes} + P_\mathrm{pump} 1000 [EUR/W]

将泵送功率与目标函数相关联的常数取决于几个因素,例如网络的维护成本、电价和资本成本。

区域热网优化问题的结果

每个用户需要 5kW 的热能。消费者以与城市街区相对应的矩形排列,而矩形又依次排列成阵列。消费者被排列在对应于城市街区的矩形中,这些矩形依次以阵列的形式重复。该网络有一个制热器,为西南角输送 70°C 的水,另一个制热器在北部输送 65°C 的水。

该模型从优化旁路和散热器控制开始,将约束 作为目标函数。当最小化 时,这一结果被用作计算的初始值。

第一张图显示了优化后的每个用户的管道直径以及加热功率。网络设计分支变成越来越小的管道,这是在意料之中的。在这里案例下,我们考虑这样一种情况,即几乎到处都有消费者的情况,因此很难减少

A plot of a district heating network topology visualized in a rainbow color table and consumer heating powers highlighted.
显示了网络拓扑以及用户的加热功率。最小功率为 4.7kW,因此没有一个用户会感觉寒冷。

第二个图显示了旁路控制的值。正如预期的那样,除了两个网络的最末端,阀门大部分都是关闭的。

A model of the bypass controls in a district heating network modeled using COMSOL Multiphysics.
旁路控制。

最后,我们可以查看用户散热器控制,并得出结论:热网中入口温度为 65°C 的用户相比处于更高温度热网的用户需要将他们的散热器调高一点。在进行优化计算时,散热器控制的最大限制参数设一个较大的值,从而计算过程中不会达到该上限值,降低该上限值意味着允许用户使用性能一般的散热器,但在网络末端使用更好的散热器,整体经济成本可能会更低。人们可以通过在目标函数中包含散热器的成本来优化这个问题。

A model showing the consumer radiator controls in a district heating network optimization model.
用户散热器控制。

后续操作

您可以使用参考文献2 中使用的技术扩展模型。编写一个模型方法支持从OpenStreetMap;导入道路网络,并创建用于设计分布式供热网络的仿真 App。该仿真 App 可以告诉我们需要购买哪些管道,并为消费者估算成本,以评估建立网络的可行性。

参考文献

  1. “How Gas Turbine Power Plants Work”, Office of Fossil Energyhttps://www.energy.gov/fe/how-gas-turbine-power-plants-work.
  2. M. Blommaert, Y. Wack, and M. Baelmans, “An adjoint optimization approach for the topological design of large-scale district heating networks based on nonlinear models”, Applied Energy, vol. 280, 2020.
]]>
//www.denkrieger.com/blogs/designing-district-heating-networks-using-topology-optimization/feed/ 0
为什么自行车踏板能保持踩踏状态而不会松动? //www.denkrieger.com/blogs/how-do-bicycle-pedals-stay-on //www.denkrieger.com/blogs/how-do-bicycle-pedals-stay-on#respond Thu, 27 Aug 2020 05:36:59 +0000 http://cn.staging.comsol.com/blogs?p=234981 当骑自行车时,为什么踏板不会松动并能保持踩踏状态?这是因为左踏板轴的螺纹是左旋的,而右踏板轴的螺纹是右旋的。轴承扭矩可以使踏板松开,而踏板仍能保持踩踏状态是因为受到一个更强的作用 —— 机械进动 效应影响。在本篇博文中,我们将解释什么是机械进动,并在涉及接触分析和多体动力学的自行车模型中演示这种效应。

自行车踏板的安装方式

无论您是一名自行车骑行新手,还是自走路以来就是一名狂热的自行车爱好者,您可能已经注意到自行车踏板的安装方式有些奇怪:自行车的左踏板的螺纹是左旋的,右踏板的螺纹是右旋的。

一个自行车踏板的放大图。

这种安装惯例启发了许多人。但他们更想知道为什么在骑行一段时间后,踏板仍在自行车两侧按照各自的螺纹方向运行而不掉落。

如果你曾经自己修理过自行车,那么能否回答一个问题:我们应该以哪种方式旋转每个踏板才能松开它?

什么是机械进动?

每当螺栓受到围绕螺栓轴线旋转的力时,就会发生机械进动。旋转力将使螺栓以与动力相反的方向旋转。下面的动画演示了这一基本原理。

 

螺栓(内圈)承受逆时针旋转的力(黑色箭头),这个力会使螺栓沿顺时针旋转(灰色箭头)。

这个简化的二维动画假定一个刚性螺栓的螺纹公差为 10%,而这会使螺栓在力的每一圈旋转中旋转 36°。实际的公差要小得多,因为螺栓是有弹性的,并且平面外维度上的力变化较大。

我们可以尝试模拟一种简单的机械进动技巧:将一支笔松松地握在手里,同时用另一只手将笔尖转一圈,你会发现笔将在旋转的反方向上扭曲。

使用多体动力学对自行车踏板进行接触分析

机械进动的基本原理可以通过仅对螺栓、螺栓上的力以及安装螺栓的曲柄进行建模来演示。这样的动画会在转动框架中发生,并且很难验证所施加动力的正确性。

相反,我们可以建立一个考虑整个自行车的多体动力学模型。如果考虑仅螺栓轴是弹性的,则多体动力学模型增加了可忽略的计算成本,并且它能使固定框架中的动力可视化。

当自行车用夹式踩踏时,踏板上既有向下的力又有向上的力。如下图所示,一个完整自行车的仿真模型将显示,踏板每次旋转时力会在半圆内移动两次。

 

该动画显示了当从车架右侧看时,自行车的踩踏板如何使右踏板轴的顺时针旋转。螺栓末端的旋转颜色以对数刻度表示接触压力。

摩擦对于接触分析至关重要,因此该模型假定摩擦系数为 0.1。

该模型还假设螺纹公差可忽略不计,并考虑了螺栓轴的实际刚度。由于机械进动,力的实际值会导致很小的旋转,因此出于可视化目的,峰值力为 50kN,比实际值大 50~500 倍。在上述动画中查看螺栓变形时,这一点很明显。如下图所示,即使作用力很大,踏板每次旋转时进动也仅约 1°。

螺栓的角度和自行车踏板的机械旋进的平均值
曲线图中螺栓的角度以蓝色显示,而该角度相对于前一转的值以绿色显示。绿色曲线的波动是由于数值噪声引起的。绿色曲线的平均值为 0.95°。

如果需要拧开自行车踏板,怎么做?

如果我们需要拧开踏板,请记住以下三种准则:

  1. 短语“右紧左松”仅适用于右侧
  2. 轴承力可将螺栓拧松,因此可以用扳手夹紧螺栓,然后用它“踩踏”自行车前进
  3. 机械进动将螺栓拧入,因此可以切换到固定齿轮设置,并向后长时间踩自行车(不推荐)

自己尝试

本文介绍的模型使用了 COMSOL Multiphysics® 5.5 版本的新增功能 —— 多体动力学 接口建模,该接口支持计算不同帧中的变形,简化了不同帧中动画的创建。

如果您想尝试自己进行自行车踏板多体动力学研究和接触分析,请单击下面的按钮获取案例模型。(请注意,您需要使用有效的软件许可证登录到 COMSOL Access 帐户才能下载 MPH 文件。)

]]>
//www.denkrieger.com/blogs/how-do-bicycle-pedals-stay-on/feed/ 0