当前位置:首页 > 后端开发 > 正文内容

CAE工程师运用python等脚本进行自动化的优点

邻居的猫1个月前 (12-09)后端开发638

简介

编写一个脚本或东西来加速进程或许看起来令人生畏,或许不值得花费精力。假如只需求几个小时就能完结使命,为什么还要花一天时刻编写脚本呢?答案是,这往往不是你仅有一次做 “某事”。或许是一次,也或许是 10 次或 100 次。

这便是脚天性真实协助你的当地。但它并不局限于 “加速速度”。脚本可用于多个范畴,为 CAE 工程师供给协助:

  • 定制东西,彻底依照您的要求进行操作。
  • 依据公司辅导方针进行定制检查,以保证您的模型契合要求。
  • 模型操作东西。
  • 为别人指定一个可遵从的流程(可削减过错)。
  • 还有更多

本文将讨论脚本如安在 CAE 工程师的日常作业中发挥效果。
咱们将运用 Oasys LS-DYNA Environment 软件,经过许多实例展现脚本的优点。咱们还将展现,学习和编写有用的脚本实践上对错常快速和简略的。

2 脚本简介

CAE 工程师运用的大多数预处理和后处理器都具有某种办法的脚本功用,运用脚本的原因有许多:

  • 工程师期望以不同办法拜访模型数据,以满意他们的需求。
  • 在软件本机东西的根底上增强或引进新东西。
  • 增加软件本机不支持的读/写数据功用。
  • 增加公司特定的东西/流程。
  • 以特定办法检查模型和成果。
  • 经过主动化加速使命履行速度。
  • 还有许多其他功用。

在创立新脚本时,有一件事是值得引荐的,那便是一直有一个脚本示例库作为辅导--这些示例一般包括在你运用的软件中,或许软件教程中。这样创立脚本就简略多了。每次增加一行,运转脚本并保证其正常运转,然后继续。不要企图在运转前编写 100 行代码,不然你或许要花很长时刻来盯梢问题。
调试脚本时,一般在代码中写入打印句子有助于盯梢问题,有时也可以运用调试器来查询问题。
你会发现,几天的学习,或许几个小时的时刻,就足以让你取得运用脚本做许多作业的常识。

3 预处理示例

以下是在预处理 LS- DYNA 模型时怎么运用脚本的一系列示例:

  • 模型拼装/多个模型
  • 读取/写入外部数据
  • 自界说检查
  • 主动化

3.1 模型拼装/多个模型

树立模型,尤其是树立多个模型是脚本的一个显着用处。是的,您可以运用 PRIMER 等预处理器的内置东西来构建多个模型,但您需求做一些异乎寻常的作业,或许针对您地点公司的具体状况,依据您手头的信息进行定制。

让咱们以电子表格中的信息为例。您或许有一系列参数值,期望在模型中运用--下面的示例显现了一张电子表格,每项剖析包括一行:

您期望将电子表格中的数据运用到根底模型中,然后创立多个模型,每行数据一个模型。正如您所看到的,您可以在这儿设置各种值。初始速度、安全气囊和安全带的起火时刻、资料模型的失效等。这些值也可所以包括文件名的一部分。例如,包括文件名可以包括控制卡中的停止计时器。

因而,在这个比如中,关于电子表格中的每一行数据,咱们都期望将这些值以某种办法运用到模型中。这可所以替换主文件中的文本(示例中的另一个包括文件,其称号中包括一个值)。或许是在卡片的特定字段中刺进数值。或许是创立或修正模型中现已存在的参数:

上表中的比如

  • PARAMK - 这是一个速度。可以直接运用该值修正初始速度卡。任何矢量成分和单位转化都可以考虑在内。
  • PARAME - 这是对包括文件版别的引证。例如,这或许是一个 BIW,而您期望在不同的运转中运用不同的版别。这儿可以运用文本替换。
  • PARAMH - 这是特定资料卡的毛病信息。可以改动数值以检查对整体成果的影响。
    经过一个简略的脚本就可以轻松完结上述一切操作。依据根底模型的设置,您可以轻松地将模型读入软件、读取电子表格数据、将数据运用于模型(有多种办法)并写出多个模型。在最根本的层面上,您只需将一些文本替换到输入甲板上,就可以十分方便快捷地树立多个模型。
    一个脚本可以完结上述作业,将曾经或许需求很长时刻并有或许引进过错的作业变成既稳健又快速的作业。在这种状况下,脚本的优点是可以以更杂乱的办法操作数据,而不只是是为某个字段赋值。

3.2 读/写外部数据

从外部文件读取和向外部文件写入信息是脚本怎么发挥效果的另一个比如。预处理器往往能很好地读取文件格局,但或许有些特定的文件格局它无法读取,或许你想以不同的办法解说数据。
衔接信息便是一个比如。衔接信息可以用多种不同的办法界说,也可所以预处理器无法读取的文件格局。假如具有必定的脚本语言技能,创立一个可以解析包括衔接信息的文件的东西,然后依据建模办法在模型中创立衔接,对错常简略直接的。
下面的示例是预处理器或许不支持的衔接 XML 格局。

<definition type="hex spot">
<id>100</id>
<coord x="-4181.817871" y="-862.289124" z="605.012268" />
<diam>5.0</diam>
<material>10023</material>
<panel>100345</panel>
<panel>100676</panel>
<panel>100113</panel>
<haz>1 ring</haz>
<haz diam>8.0</haz diam>
</definition>
<definition type="hex spot">
<id>101</id>
<coord x="-4341.792480" y="-841.940857" z="608.532227" />
<diam>5.0</diam>
<material>10023</material>
<panel>100244</panel>
<panel>100245</panel>
<haz>1 ring</haz>
<haz diam>8.0</haz diam>
</definition>

一个适当简略的脚本就可以扫描该文件中的数据,并依据数据创立衔接。其扩展功用之一是可以运用适当简略的脚本以更杂乱的办法修正模型。分配衔接特点便是一个比如。下面显现的是一个包括实体元素的点焊模型。

咱们在面板上设置了环形元从来表明热影响区。这些热影响区元素将具有与根本金属板不同的特点。这些特点可以经过多种不同办法设置。或许您的建模办法是,您的热影响区零件 ID 有一个标签,这个标签与基板零件 ID 有一个特定的偏移。或许您的模型中有一系列 HAZ 零件,您需求依据点焊的直径、衔接在一起的面板数量或衔接在一起的资料等级,或许上述要素的组合来挑选运用其间一个。脚本可以让您在模型中循环衔接,剖析热影响区,并依据您想要的任何规矩设置 PID。相同,这也是一个比如,经过增加脚本,可以适当简略地运用和运用公司特定的建模办法。

参考资料

  • 软件测验精品书本文档下载继续更新 https://github.com/china-testing/python-testing-examples 请点赞,谢谢!
  • 本文触及的python测验开发库 谢谢点赞! https://github.com/china-testing/python_cn_resouce
  • python精品书本下载 https://github.com/china-testing/python_cn_resouce/blob/main/python_good_books.md
  • Linux精品书本下载 https://www.cnblogs.com/testing-/p/17438558.html

3.3 自界说校验

模型校验是模型设置的重要组成部分。当企图让模型在 LS-DYNA 中运转时,检查模型可以节约许多时刻。但为什么要自界说校验,而不是只是依托预处理器内置的校验呢?

  • 杰出显现重要过错和正告
  • 引进预处理器未包括的新检查。
  • 公司特定检查--保证职工恪守公司特定规矩。
  • 从不同来历提取检查信息--输出文件和输入文件。

下面是一个 “仪表盘 ”的示例,它从不同来历提取检查信息。其间一些来历是依据脚本的。

示例显现了各种检查以及模型是否经过检查。依据脚本的检查如下:

  • 模型衡量 - 依据公司原则检查模型质量和时刻步/附加质量信息。
  • 控制卡 - 检查运用的控制卡或控制卡上的值是否契合公司原则。
  • ELFORM 检查 - 检查是否存在积分点小于 5 的 16 型部件。
  • 环境 - 您或许有一个包括仪器信息的包括文件,有必要一直包括在模型中。此检查将检查该包括文件是否存在。
  • MAT 100 检查 - 检查 MAT 100 零件上是否有未绑定触摸的节点。
  • MAT 刚性束缚检查 - 检查咱们是否有任何带有刚性束缚值集的 MAT 100 卡。

正如您所看到的,上述检查并不会导致LS-DYNA无法运转,因而或许不会被预处理器内置检查所发现,但它们是有用的东西,可用于保证输出的一致性。

3.4 主动化

主动化是 CAE 进程中日益重要的一部分。时刻尺度的缩短和进步一致性的需求意味着主动化东西的价值不可估量。
脚本是为自己的意图创立主动化东西的有用办法。其间一个比如便是模型设置。这儿有一个用于地震剖析的土壤结构相互效果 LS-DYNA 模型示例:

土壤从地表向下分为一系列土层。这些土层的厚度和特性各不相同,信息来历于岩土工程勘测的电子表格。手动挤出土层并分配资料特点是一个绵长的进程,并且呈现过错的或许性很高。

在这种状况下,可以编写一个简略的脚原本读取电子表格中的信息,并主动创立节点、元素、部件和资料/荷载曲线,以与岩土信息中的数据相匹配。该脚本的一个扩展功用是主动运用鸿沟和抗震条件。

节约时刻的优势清楚明了,而模型构建一致性的改进也十分重要。
在这个特别的比如中,它被运用于多个项目,在这些项目中,模型需求重复创立(例如,当您取得新的岩土信息时),因而节约的时刻十分可观。
轿车方面的一个比如是拼装轿车磕碰模型并运用鸿沟条件。

4 后处理示例

下面咱们将介绍在后处理环境中运用脚本的示例。这将触及:

  • 查询和组合LS-DYNA输出,生成用户界说的适用于您状况的组件。
  • 成果的主动后处理

4.1 用户界说成果

一般来说,在检查LS-DYNA输出时,您会先检查LSDYNA写出的数据成分。然后,您或许会以某种办法修正数据,然后解说成果,告知您模型中发生了什么。这或许是获取时刻历史数据,对其进行过滤和兼并。也可以读取测验数据,并与 LS-DYNA 成果进行比较。
您或许还想创立用户自界说组件的等高线图,这些组件是经过组合成果组件或整合外部数据创立的。
这是脚本可以协助处理的问题。对成果值的简略修正(例如除法、加法)可以由后置处理程序轻松处理,但假如您想读取外部数据并将其与一般数据组件相结合,编写一个简略的脚本就可以节约许多时刻。
在编撰本文时,还没有图片和具体的示例。

4.2 主动对成果进行后处理

脚本在主动对成果进行后处理方面可以发挥很大效果。后处理器针对特定负载状况供给的模板可以满意部分需求,但往往需求对模板进行一些修正。脚本在这方面十分有用。让咱们以车辆磕碰模型为例。您或许需求检索一些规范输入,例如核算星级的乘员损伤成果。这类模板一般在 posprocessing 软件中供给。您或许期望依据模型中您感兴趣的各种内容对其进行扩展,以生成契合您需求的定制陈述。例如

  • 进行载荷路径剖析,将不同数据库横截面的输出组合在一起,剖析载荷是怎么经过车身传递的。您或许还期望将其与截面特点(或许是一个独自的文本文件)进行比较。
  • 生成显现点焊和粘合剂失效时刻的特定图画。
  • 检查乘员损伤峰值的时刻,并将其与车体变形和失效联系起来。

在没有规范载荷箱模板的状况下,这种定制的后处理更有意义。在之前的地震 LS-DYNA 剖析示例中,可以主动生成陈述、组合数据并告知工程师一切相关信息在很大程度上依赖于脚本。

5 总结

投入少数时刻学习脚本语言、东西和技能,对 CAE 工程师和他们地点的公司都有优点。在预处理使命方面,咱们可以看到,假如有才能创立定制东西,让您可以在最短的时刻内履行一系列不同的使命和流程,就能大大进步制造模型的速度、质量和一致性。在后处理方面,可以主动对成果进行后处理,并以适用于载荷状况和模型自由度的办法剖析和显现成果。

在后处理方面,假如可以主动对成果进行后处理,并以适用于载荷状况和模型的办法剖析和显现成果,工程师就可以腾出时刻来实践考虑成果和推动规划。

扫描二维码推送至手机访问。

版权声明:本文由51Blog发布,如需转载请注明出处。

本文链接:https://www.51blog.vip/?id=160

分享给朋友:

“CAE工程师运用python等脚本进行自动化的优点” 的相关文章

r语言常用函数,R语言常用函数详解

r语言常用函数,R语言常用函数详解

1. 基本数学运算函数: `sum`: 计算向量、矩阵或数据框中所有元素的总和。 `mean`: 计算向量、矩阵或数据框中所有元素的平均值。 `median`: 计算向量、矩阵或数据框中所有元素的中位数。 `sd`: 计算向量、矩阵或数据框中所有元素的样本标准差。 `v...

php汇率,了解PHP货币及其兑换率

关于菲律宾比索(PHP)兑换人民币(CNY)的汇率信息,您可以参考以下几个网站:1. XE Currency Converter: 网站提供实时中间市场汇率、历史汇率以及数据和货币图表。您可以访问 查看详细汇率信息。2. Wise Currency Converter: Wise 提供...

r语言和c语言,历史背景与设计理念

r语言和c语言,历史背景与设计理念

R语言和C语言都是编程语言,但它们的应用领域和设计理念有所不同。R语言是一种统计编程语言和图形语言,主要用于数据分析、统计计算和图形展示。它是由Ross Ihaka和Robert Gentleman于1993年开发的,后来由R Foundation维护。R语言具有丰富的统计函数库,可以方便地进行数据...

python机器学习,从基础到实践

python机器学习,从基础到实践

当然可以,机器学习是Python编程中的一个重要领域,它涉及到使用算法从数据中学习,以便做出预测或决策。Python有许多流行的库和框架,如scikitlearn、TensorFlow和PyTorch,可以用于机器学习。如果你对机器学习感兴趣,我可以帮助你学习基础知识,包括数据预处理、特征工程、模型...

java官方网站,java官网

java官方网站,java官网

1. Java官方网站(Oracle): 2. 适用于所有操作系统的Java下载: 3. 适用于Windows的Java下载: 这些网站提供了Java的最新版本、功能介绍、许可证信息以及下载和安装指导。如果您需要JDK或JRE,可以访问上述链接获取详细信息。Java...

java锁,Java锁概述

java锁,Java锁概述

Java 中的锁是一种用于控制多个线程对共享资源的访问的工具。在 Java 中,有多种类型的锁,包括:1. 内置锁(Intrinsic Locks): 内置锁是基于对象的锁,也称为监视器锁。每个 Java 对象都有一个内置锁,当一个线程访问对象的同步方法或同步代码块时,它会自动获取该对象的内置...