论文标题

MATLAB中实施的流体流量问题的基于密度的拓扑优化的详细介绍

A detailed introduction to density-based topology optimisation of fluid flow problems with implementation in MATLAB

论文作者

Alexandersen, Joe

论文摘要

本文详细介绍了基于密度的流体流问题拓扑优化。目的是允许新学生和研究人员快速进入研究领域,并跳过许多初始步骤,通常从该领域的科学进步中消耗了不必要的时间。这是通过为了解和实施理论所需的组件的分步指南以及扩展提供的MATLAB代码所必需的组件来实现的。说明了所使用的连续设计表示以及如何连接到Brinkman罚款方法,用于模拟在流体结构域中浸入的固体。解释了布林克曼罚款术语的不同解释以及如何选择罚款参数。通过参考几何形状的参数模拟分析了Brinkman惩罚方法的准确性。解释了所选的有限元公式和解决方案方法。定义了最小消散的能量优化问题,并讨论了如何使用最佳标准求解器和延续方案来解决它。记录了随附的MATLAB实现,并提供有关网格,预处理,优化和后处理的详细信息。该代码具有两个基准示例,并且对这些代码的应用在这些基准中进行了审查。随后,通过提供的代码修改和解释来介绍对代码的一些修改,以进行更复杂的示例。最后,通过研究计算时间和内存使用情况以及建议通过近似值减少计算时间的建议来检查代码的计算性能。

This article presents a detailed introduction to density-based topology optimisation of fluid flow problems. The goal is to allow new students and researchers to quickly get started in the research area and to skip many of the initial steps, often consuming unnecessarily long time from the scientific advancement of the field. This is achieved by providing a step-by-step guide to the components necessary to understand and implement the theory, as well as extending the supplied MATLAB code. The continuous design representation used and how it is connected to the Brinkman penalty approach, for simulating an immersed solid in a fluid domain, is illustrated. The different interpretations of the Brinkman penalty term and how to chose the penalty parameters are explained. The accuracy of the Brinkman penalty approach is analysed through parametric simulations of a reference geometry. The chosen finite element formulation and the solution method is explained. The minimum dissipated energy optimisation problem is defined and how to solve it using an optimality criteria solver and a continuation scheme is discussed. The included MATLAB implementation is documented, with details on the mesh, pre-processing, optimisation and post-processing. The code has two benchmark examples implemented and the application of the code to these is reviewed. Subsequently, several modifications to the code for more complicated examples are presented through provided code modifications and explanations. Lastly, the computational performance of the code is examined through studies of the computational time and memory usage, along with recommendations to decrease computational time through approximations.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源