Fluent阀门关闭模拟

在日常设计中,经常会遇到阀门关闭的情况,让我们来看下如何在Fluent中模拟这一情况。

一、CAD建模

在CAD软件中建立如下流体域模型(尺寸单位为mm)。该模型中有一个活塞在电机驱动下向右运动,在0.1秒内关关闭阀门。建模完成后存为stp文件。

继续阅读

小白的AIGC课(5)— Langchain 聊天模型

前面我们介绍了使用大模型的API,根据提示词来生成文本,今天我们看看如何使用Langchain的聊天模型来与不同的大模型进行交互。

聊天模型是LangChain的核心组件。它是一种语言模型,使用聊天消息作为输入并返回聊天消息作为输出(而不是使用纯文本)。LangChain 与许多模型提供商(OpenAI、Cohere、Hugging Face 等)集成,并公开了与所有这些模型交互的标准接口。LangChain 允许您在同步、异步、批处理和流模式下使用模型,并提供其他功能(例如缓存)等。

继续阅读

Fluent管路水锤模拟—UDF

上篇文章我们模拟了当管路阀门关闭时的水锤情况,我们使用了以下表达式来控制阀门关闭:

IF (t<0.2[s],2[m/s],0[m/s])

这个if表达式的意思是当时间小于0.2秒的时候,水流速度为2m/s,当时间为0.2秒的时候,流速减为零,我们知道在实际工程应用中,阀门不可能瞬间关闭,中间是需要一定时间的。

继续阅读

Fluent管路水锤模拟

水锤是一种可能发生在任何使用阀门控制液体或蒸汽流动的管道系统中的现象。水锤是当运动中的流体被迫改变方向或突然停止时,压力波动或高压冲击波通过管道系统传播的结果。这种冲击波通常也称为液压冲击或液压浪涌,其特征可能是在关闭后立即在管道上发出明显的撞击声或敲击声。

当打开的阀门突然关闭,导致水冲入其中,或者当泵突然关闭并且水流反向流回泵时,就会发生水锤。由于水是不可压缩的,水的冲击会产生冲击波,该冲击波以声速在阀门和管道系统中的下一个弯头之间或在泵后的水柱内传播。

继续阅读

小白的AIGC课(2)— 上下文提问与流式输出

让我们回顾一下上一节课的代码:

import anthropic
import os

my_api_key = os.environ.get("ANTHROPIC_API_KEY")

client = anthropic.Anthropic(
    # defaults to os.environ.get("ANTHROPIC_API_KEY")
    api_key=my_api_key,
)

message = client.messages.create(
    model="claude-3-opus-20240229",
    max_tokens=1000,
    temperature=0.0,    
    messages=[
        {"role": "user", "content": "How are you today?"}
    ]
)

print(message.content)
继续阅读

小白的AIGC课(1)— 开发环境配置

打算新开一个系列介绍时下大火的AIGC的相关内容。AIGC是Artificial intelligence-generated content的缩写,指人工智能生成的内容。AIGC是由人工智能算法在无需人工干预的情况下创建的内容,它可以包括图像、视频、文本、3D 模型、头像、环境和对象。AIGC可以用来替代或辅助手动内容生成,可以根据用户输入的关键词或需求生成内容。

先从最简单的文本生成开始,现在比较流行的文本模型有OpenAI的chatgpt, Google的Gemini和Claude,本文以最新的Claude为例介绍如何使用Python连接其API。

继续阅读

Fluent 动态网格(2)— 使用Profile指定网格运动

在Fluent动态网格应用中,我们可以采用Profile文件来指定网格的运动,包括边界和区域。

示例一:延x方向以恒定速度1.2m/每秒运动。

((profile_name transient 2 0)
(time 0 15.0)
(v_x 1.2,1.2))

在这个例子中, profile_name是这个profile文件的名字,transient是瞬态模拟的关键字,2表示有变量有两个参数,0表示非周期性运动。time关键字是第一个变量时间,有0秒和15秒两个时间点。v_x是第二个关键字表示在x方向的速度,为1.2m/s,单位均为国际标准单位制。

继续阅读

Fluent 动态网格(1)— 6DOF求解器

ANSYS FLUENT 中的动态网格模型可用于对由于域边界上的运动而导致域形状随时间变化的流进行建模。该运动可以是规定的运动(例如,您可以指定固体重心随时间变化的线速度和角速度);也可以是非规定的运动,其运动是根据当前时间的解确定的,例如根据实体上的力平衡来计算线速度和角速度,这就是六自由度 (6DOF) 解算器所做的事情。体积网格的更新是自动处理的,通过 ANSYS FLUENT 在每个时间步基于边界的新位置。要使用动态网格模型,您需要提供起始体积网格以及模型中任何移动区域的运动描述。ANSYS FLUENT 允许您使用边界轮廓(Boundary profiles)、用户定义函数 (UDF) 或六自由度解算器 (6DOF) 来描述运动。

继续阅读