【AIPOD案例操作教程】斜流风扇轮毂优化

news2024/11/26 11:46:26

AIPOD是由天洑软件自主研发的一款通用的智能优化设计软件,致力于解决能耗更少、成本更低、重量更轻、散热更好、速度更快等目标的工程设计寻优问题。针对工业设计领域的自动化程度低、数值模拟计算成本高等痛点,基于人工智能技术、自研先进的智能代理学习、智能优化策略。软件使用门槛低,优化效果好,可以让设计团队专注于产品设计本身,而非数值模拟仿真过程,从而帮助设计团队快速地寻找到更好的产品或流程设计方案。

一、工程描述

图1 斜流风扇轮毂参数化模型

某斜流风扇参数化模型如图1所示,该斜流风扇的参数化模型共包含轮毂入口和出口半径、轮缘进出口角度、轮毂和轮缘内部截面线变化、包角变化参数等共15个设计变量。考虑在功耗限制条件下,以斜流风扇进出口压差最大化为目标,对斜流风扇轮毂造型进行优化。

二、操作流程

斜流风扇的数值仿真模拟计算流程如图2所示,绿色表示变量、蓝色表示文件、橙色表示调用的软件,文件上方的路径表示文件相对于工程文件夹的相对路径。

图2 某斜流风扇的数值仿真模拟计算流程

1)新建项目

启动软件后, 自动进入该项目默认计算流程页面,如图3所示。

图3 计算流程页面

2)CAESES节点配置

CAESES为可执行程序,因此,需要从工具栏中拖拽一个CAESES节点加入画布,如图 4所示。

图4 添加CAESES调用节点

① 节点信息配置

单击新加入画布的CAESES调用节点后,可在弹出窗口中对CAESES节点的信息进行配置,如图5所示。

图5 CAESES节点信息配置

② 节点文件配置

如图2所示,CAESES节点包含两个输入文件testfan_tcfd.fsc和testfan_tcfd1208.fdb;三个输出文件outfield.stl、rotor.stl和stator.stl。选择CAESES节点配置弹窗中的文件设置选项,即可对CAESES节点的输入输出文件进行配置。首先鼠标移至输入文件列表上方【上传】按钮处,在展开下拉列表中选择【上传文件】选项,在弹出窗口中选择对应的文件后单击打开按钮即可完成输入文件的新建,如图6所示。

图6 上传fsc文件

重复上述步骤或在弹窗中批量选择需要上传的文件即可完成多个输入文件的新建,其结果如图7所示。

图7 CAESES节点输入文件列表

在输出文件列表上方单击上传按钮,在弹出窗口中选择三个stl文件后单击打开按钮即可完成输出文件的新建。由图2可知,rotor.stl、stator.stl、outfield.stl文件存储位置不在工程根目录下,因此需要单击其后方的【编辑】按钮,将目标路径修改为相对于工程文件夹的存储路径,如图8所示。

图8 输出文件目标路径编辑

 节点变量&文件关联

如图2所示,调用CAESES节点时,14个输入变量的值需要被写入fsc文件中的固定位置,以实现新设计方案的生成,因此需要将14个输入变量与fsc文件关联。回到CAESES节点【文件设置】选项下,单击fsc文件后方的【写入】按钮,在弹出窗口右侧文件内容中选择需要进行变量识别与写入的位置,然后单击左侧【自动提取输入变量】按钮,确认识别到的变量无误后,单击【确定】按钮,即可实现输入变量新建并且与fsc文件进行写入关联,如图9所示。

图9 模型参数与fsc文件关联

3)TCAE节点配置

TCAE为可执行程序,因此,需要从工具栏中拖拽一个批处理脚本节点加入画布,如图10所示。

图10 添加TCAE调用节点

由图2可知,TCAE节点需要对CAESES节点输出的模型文件进行仿真计算,因此CAESES节点与TCAE节点之间存在文件的传递,需要将CAESES节点与TCAE节点相连接,如图11所示。

图11 连接CAESES与TCAE节点

①节点信息配置

单击新加入画布的TCAE调用节点后,可在弹出窗口中对TCAE节点的信息进行配置,如图12所示,其中命令即调用TCAE的批处理命令。

针对该工程而言为"C:/TCAE/20.09/bin/CAEProcessor.exe" -setup fan.tcae -dir TCAESimulation -allrun。前半部分为STARCCM的安装路径,后半部分为TCAE创建工作目录并自动计算。

图12 TCAE节点信息配置

②节点文件配置

如图2所示,TCAE共包含4个输入文件,其中rotor.stl、stator.stl、outfield.stl为CAESES的输出文件,fan.tcae为TCAE设置文件。

单击CAESES与TCAE之间的连线,然后在文件关联列表上方的输入量选择CAESES的输出文件,最后单击后方的【+】按钮即可为TCAE创建rotor.stl输入文件,并可实现CAESES与TCAE之间的文件传递,如图13所示,重复上述操作创建stator.stl、outfield.stl输入文件。

图13 关联rotor.stl文件

再单击TCAE调用节点,在其输入文件列表中,rotor.stl、stator.stl、outfield.stl文件已被添加,仅需上传fan.tcae文件即可,如图14所示。

图14 添加fan.tcae文件

单击输出文件列表中【上传】按钮,上传efficiency-final.csv文件,即可完成TCAE节点输出文件的配置,因为TCAE输出文件存储不在工程根目录下,因此需要单击其后方的“编辑”按钮,将目标路径修改为相对于工程文件夹的存储路径,如图15所示,最终TCAE节点的文件配置如图16所示。

图15  输出文件目标路径编辑

图16 TCAE文件配置结果

③节点变量&文件关联

由图2可知,TCAE的变量包含从文件中提取的9输出变量,因此,在文件设置选项下,单击输出文件efficiency-final.csv后方的“提取”按钮,单击新建变量,依次填写输出变量名称,指定输出变量在文件中的读取位置后,单击确定即可在添加输出变量的同时完成输出变量与输出变量的关联。需要注意的是,变量在文件中的行列编号均从0开始,若不清楚其位置,可在左侧文件中选中对应位置,单击“位置解析”按钮,实现读取位置的自动匹配如图17所示。

图17添加并关联变量

本案例的优化目标是要求总压差最大,压差由从文件读取的出口压降减去进口压降得到,该输出变量并非从输出文件中读取的,因此其添加方法也区别于从文件中提取的输出变量。在【变量设置】选项卡下输出变量列表上方单击【新建】按钮处选择【表达式变量】,在弹窗中填写变量名称和表达式后,即可创建该类型的输出变量如图18所示。

图18添加表达式型输出变量

4)输入节点配置

计算流程开始执行时需要传入delta_fun_dev01、delta_fun_dev02、delta_fun_Tan01、delta_fun_Tan02、hub_delta_value、hub_End_Angle、hub_End_R、hub_fac01、hub_fac02、shroud_delta_value、shroud_fac01、shroud_fac02、shroud_shift01、shroud_shift02这14个模型参数,因此,14个模型参数是整个计算流程的输入变量。

① 节点连接

CAESES和TCAE节点配置完成后,需要连接输入节点,并通过连线配置中的变量关联将CAESES节点的输入变量同步至输入节点的输入变量中。如图19所示,输入节点首次连接时会自动关联所连接节点的输入变量。

图19 连接输入节点

5)输出节点配置

如图2所示,TCAE节点执行完成即整个计算流程执行完成,因此TCAE节点需要与输出节点连接,如图20所示。

图20 连接TCAE与输出节点

6)新建优化问题

计算流程配置完成后,单击【计算流程】菜单中的【新建优化问题】按钮,在弹出窗口中填写优化问题名称后,即可创建优化问题,如图21所示。

图21 新建优化问题

创建优化问题后,会自动跳转至优化问题页面,如图22所示。

图22 优化问题页面

① 添加目标变量

单击优化问题菜单下的【新建目标变量】按钮,在弹出窗口种选择deltPt作为最大化目标,单击“确定”,即可完成目标变量的添加,如图23所示。

图23 添加目标变量

目标变量添加完成后,既已经满足优化问题的基本定义,因此,优化问题状态变更为“通过校核”,如图24所示。

图24 优化问题状态

② 添加约束条件

单击优化问题菜单下的【新建约束条件】按钮,在弹出窗口中选择power作为约束条件,将其限制在14以内,单击【确定】,即可完成约束条件的添加,如图25所示。

图25 添加约束条件

7)添加优化任务

单击优化问题菜单中的【新建优化任务】按钮,在弹窗中填写任务名称,选择SilverBullet算法并配置算法参数后,单击【保存】按钮即可完成优化任务的新建,如图26所示。单击“提交”按钮,则会直接运行优化任务求解最优设计方案。

图26 新建优化任务

三、优化效果

AIPOD与市面上常见的优化算法优化结果如图27所示。

图27 优化结果对比

AIPOD与市面上常见的算法的优化历程如图28所示,结果表明,竞品算法在优化潜力表现上明显落后于AIPOD,且bound-break能够更好的辅助设计人员找到被忽略的高效设计区域。

图28斜流风扇优化历程图

Tsearch与AIPOD优化结果分别如图29、图30所示。

图29 Tsearch优化结果云图

图30 AIPOD优化结果云图

AIPOD更多详细介绍及软件试用,请搜索“天洑软件”前往官网下载试用。试用无需申请license,软件安装后可直接免费试用30天。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1049278.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL存储引擎以及InnoDB、MyISAM、Memory特点介绍

存储引擎介绍和基本使用 基本介绍: 存储引擎是数据库的核心,存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式 。存储引擎是基于表的,而不是基于库的,所以存储引擎也可被称为表类型。我们可以在创建表的时候&…

U盘植马之基于arduino的badusb实现及思考

引言 曾经有这么一段传说,在某次攻防演练时,某攻击队准备了一口袋U盘前往了目标单位的工作园区,在园区围墙外停下了脚步,然后开始不停扔U盘进去,最后发现有大量的“猎奇者”上线。 U盘植马是常见的近源渗透方式之一&am…

若依不分离+Thymeleaf select选中多个回显

项目中遇到的场景&#xff0c;亲测实用 表单添加时&#xff0c;select选中多个&#xff0c;编辑表单时&#xff0c;select多选回显&#xff0c;如图 代码&#xff1a; // 新增代码 <label class"col-sm-3 control-label">通道&#xff1a;</label><…

再学C++ | std::set 的原理

std::set 是C标准库中的容器之一&#xff0c;它基于红黑树实现。std::set 利用红黑树的特性来实现有序的插入、查找和删除操作&#xff0c;并且具有较好的平均和最坏情况下的时间复杂度。 当向 std::set 插入元素时&#xff0c;它会按照特定的比较函数&#xff08;bool less<…

软件可靠性基础

软件可靠性基础 软件可靠性基本概念串并联系统可靠性计算软件可靠性测试软件可靠性建模软件可靠性管理软件可靠性设计容错&#xff0c;检错的技术 选择题考基本概念&#xff08;MTBF&#xff09;&#xff0c;很少考 非重点 软件可靠性基本概念 这个章节中&#xff0c;第一个…

Leetcode算法题练习(一)

目录 一、前言 二、移动零 三、复写零 四、快乐数 五、电话号码的字母组合 六、字符串相加 一、前言 大家好&#xff0c;我是dbln&#xff0c;从本篇文章开始我就会记录我在练习算法题时的思路和想法。如果有错误&#xff0c;还请大家指出&#xff0c;帮助我进步。谢谢&…

2023-9-27 JZ55 二叉树的深度

题目链接&#xff1a;二叉树的深度 import java.util.*; /** public class TreeNode {int val 0;TreeNode left null;TreeNode right null;public TreeNode(int val) {this.val val;}} */ public class Solution {public int TreeDepth(TreeNode root) {if(root null) ret…

续航605km,价格 11.77 万起带激光雷达,你卷我也卷

9 月 21 日&#xff0c;睿蓝 7 正式上市&#xff0c;新车提供 6 款车型&#xff0c;售价区间 11.77-17.37 万元。 权益方面&#xff0c;提供 701 元订金抵 2000 元车款、2000 元选装基金、终身 24 小时救援服务、10 万 3 年 0 息金融政策、3000 元置换/ 1000 元增购补贴、6 年/…

【Java 进阶篇】MySQL主键约束详解

MySQL是一个强大的关系型数据库管理系统&#xff0c;用于存储和管理大量数据。在数据库中&#xff0c;主键约束是一项非常重要的概念&#xff0c;它有助于确保数据的完整性和唯一性。本文将详细介绍MySQL主键约束&#xff0c;包括什么是主键、为什么需要主键、如何创建主键以及…

自增自减运算符i++与++i的区别

自增自减运算符用作前缀与用作后缀时略有不同。 i和i的区别&#xff1a; 1、i 返回原来的值&#xff0c;i 返回加1后的值。&#xff08; a i 是先给 a 赋值&#xff0c;然后 i 再自增&#xff1b;a i是 i 先自增&#xff0c;然后给 a 赋值。&#xff09; #include<iost…

(2023|ICLR,检索引导,交叉引导,EntityDrawBench)Re-Imagen:检索增强的文本到图像生成器

Re-Imagen: Retrieval-augmented text-to-image generator 公众号&#xff1a;EDPJ&#xff08;添加 VX&#xff1a;CV_EDPJ 或直接进 Q 交流群&#xff1a;922230617 获取资料&#xff09; 目录 0. 摘要 1. 简介 2. 相关工作 3. 模型 3.1 预备知识 3.2 用多模态知识…

msvcp140.dll丢失的解决方法与msvcp140.dll是什么东西详细解析

在使用电脑时&#xff0c;可能会遇到打开软件时提示“找不到 msvcp140.dll&#xff0c;无法继续执行代码”的问题。这通常意味着你的计算机上缺少 Microsoft Visual C Redistributable 的运行时库&#xff0c;或者该库的版本不正确。下面是我找了几天的修复方法&#xff0c;今天…

PBR的应用

项目拓扑与项目需求 项目需求&#xff1a;某企业网络拥有三个出口&#xff0c;分别使用AR1、AR2、AR3链接运营商网络。其中AR1为万兆出口&#xff0c;而AR2、AR3为千兆出口。现在需要实现以下需求&#xff1a; 希望vlan10的流量能够强制通过AR1作为业务的出口&#xff0c;vla…

iCloud邮箱怎么登录?看这里,2招教你搞定!

iCloud邮箱是苹果公司推出的一款功能强大的邮件服务。通过iCloud邮箱&#xff0c;用户可以实现接收和发送电子邮件。苹果强调保护用户的隐私和数据安全&#xff0c;所以icloud邮箱为用户提供了高度保密的邮件加密服务&#xff0c;能够确保用户的邮件在传输时得到保护。 但是&a…

Kotlin语言基础(三)- 函数

函数可以定义特定功能的代码块。 一、函数定义 Kotlin语言定义函数的基本形式&#xff1a; fun 函数名(【参数&#xff1a;参数类型,参数&#xff1a;参数类型…】)【:返回值类型】{ //函数体 } 如果函数体只有一条返回值&#xff0c;也可以简化成如下形式&#xff1a; fun 函…

springboot实现ACL+RBAC权限体系

本文基于web系统的权限控制非常重要的前提下&#xff0c;从ALC和RBAC权限控制两个方面&#xff0c;介绍如何在springboot项目中实现一个完整的权限体系。 源码下载 &#xff1a;https://gitee.com/skyblue0678/springboot-demo 序章 一个后台管理系统&#xff0c;基本都有一套…

更好用的Mybatis Plus:Mybatis Flex(下)

前言 上篇文章讲了 Mybaits Flex 的基础用法&#xff0c;这次讲一下 Mybatis Flex 的进阶用法&#xff0c;包含了一些 Mybatis Flex 核心的一些功能。&#xff08;以下简称 MF&#xff09; 逻辑删除 上篇文章讲到了 Column 注解&#xff0c;其中有个属性为 isLogicDelete &…

2023软工作业(一)——计算器

班级班级社区作业要求软件工程实践第一次作业-CSDN社区作业目标完成一个具有可视化界面的科学计算器参考文献Fyne 目录 作业要求 项目源码地址 作业目标 0. 界面及功能展示 1. PSP表格 2. 解题思路描述 3. 核心代码 4. 设计与实现过程 5. 程序性能改进 6. 单元测试展…

向华为学习:制订一份分工明确、能够落地的产品GTM行动计划表

昨天华研荟介绍了新产品上市的GTM的定义、GTM这个岗位&#xff08;角色&#xff09;的主要工作以及新产品的GTM要回答好的四个问题&#xff08;Why、What、How、Where&#xff09;&#xff0c;帮助大家初步理解了让产品上市更成功的GTM流程。 如我昨天在文章中所讲到的&#x…

ACM MM 2023 | 基于去中心化表征的人体姿态估计方法

01. 前言 北京邮电大学与EVOL创新团队共同提出人体姿态估计方法DecenterNet&#xff0c;用于在提高在拥挤场景下人体姿态估计的准确度。该方法引入了一种去中心化的姿势表征方法&#xff0c;使得网络在纠缠区域/拥挤区域中将更加稳健地表达人体姿态。该方法还提出了一个解耦的…