吾生有涯 学海无涯
析模有界 知识无界

4种方法将Fluent中case的所有设置参数复制到另一个case中

在 Fluent 中将一个 case 的设置复制到另一个 case 有几种方法,每种方法都有其适用场景和优缺点。以下是几种常用的方法:

1 使用 Scheme 脚本

这是最灵活和强大的方法,可以精确控制要复制的设置。

可以采用以下步骤:

  • 创建 Scheme 脚本: 使用文本编辑器创建一个新的文件,例如 copy_settings.scm
  • 在源 Case 中记录操作: 在 Fluent 的 File > Execute Commands... 中,选择 Record 选项,然后执行你想要复制的所有操作 (例如,定义材料、边界条件、模型设置等)。Fluent 会将这些操作记录为 Scheme 命令并写入你指定的记录文件。
  • 编辑 Scheme 脚本: 打开记录文件 (默认是 journal.jou),将其中的 Scheme 命令复制到 copy_settings.scm 文件中。你可能需要根据目标 case 的具体情况对这些命令进行一些修改,例如更改对象名称或参数值。
  • 在目标 Case 中运行脚本: 在 Fluent 中打开目标 case 文件。然后,在 File > Execute Commands... 中,选择 Read 选项,并选择 copy_settings.scm 文件。Fluent 将执行脚本中的命令,并将源 case 的设置应用到目标 case 中。
  • 示例 Scheme 脚本 (复制材料和边界条件):
; 读取源 case 中的材料
(ti-read-material "source_case.cas")

; 选择要复制的材料 (例如空气)
(cx-set-material-prop /material "air" 'density 'constant)
(cx-set-material-prop /material "air" 'cp 'constant)
(cx-set-material-prop /material "air" 'viscosity 'constant)
(cx-set-material-prop /material "air" 'thermal-conductivity 'constant)

; 写入目标 case 中的材料
(ti-write-material "target_case.cas")

; 定义边界条件 (例如速度入口)
(define-boundary-condition velocity-inlet "inlet" #f (list 10 0 0) 300 1)

; 定义边界条件 (例如压力出口)
(define-boundary-condition pressure-outlet "outlet" #f 0 300 1)
  • 优点:
    • 灵活性高,可以精确控制要复制的设置。
    • 可重复使用,只需修改脚本中的少数参数即可应用于不同的 case。
    • 适用于复杂的设置,可以复制几乎所有 Fluent 设置。
  • 缺点:
    • 需要熟悉 Scheme 语言。
    • 对于复杂的设置,脚本可能比较长,需要仔细检查和修改。

2 使用 Read/Write Settings 功能

这是一种相对简单的方法,可以复制模型的设置部分,不包含网格信息。

  • 步骤:
    1. 在源 Case 中写入设置: 在 Fluent 中打开源 case 文件。然后在控制台输入TUI命令 file/write-settings,并指定一个文件名 (如 settings.set)
    2. 在目标 Case 中读取设置: 在 Fluent 中打开目标 case 文件。然后在控制台输入TUI命令 file/read/settings ,并指定一个已经存在的设置文件(如前面保存的settings.set文件),Fluent 会将源 case 的设置应用到目标 case 中。
  • 优点:
    • 操作简单,不需要编写脚本。
    • 可以快速复制模型设置。
  • 缺点:
    • 不会复制网格信息,因此目标 case 的网格必须与源 case 的网格在区域划分和边界命名上保持一致。
    • 无法选择性地复制某些设置,只能复制整个模块 (例如,所有边界条件或所有材料)。

3 使用 Interpolation Data 功能

这种方法适用于网格不同但几何形状相似的 case,可以进行数据插值。

  • 步骤:

    1. 在源 Case 中写入插值数据: 在 Fluent 中打开源 case 文件,并确保已经求解完毕。然后,在 File > Export > Solution Data... 中,选择 Solution Data,并选择 ASCII 格式。选择需要导出的变量和需要进行插值的区域。指定一个文件名 (例如 interpolation_data.ip)。
    2. 在目标 Case 中读取插值数据: 在 Fluent 中打开目标 case 文件。然后,在 File > Interpolate > Read and Interpolate... 中,选择刚才保存的插值文件 (interpolation_data.ip)。选择插值方法,并设置插值选项。
    3. 应用插值数据: 插值数据可以用于初始化流场或设置边界条件。你可以在相应的面板中选择使用插值数据。
  • 优点:

    • 可以将一个 case 的解映射到另一个不同网格的 case 上。
    • 适用于几何形状相似但网格不同的 case。
  • 缺点:

    • 只能复制求解后的数据,不能复制模型设置。
    • 插值精度受网格差异和插值方法的影响。

4 使用 Journal 文件

此方法类似于 Scheme 脚本,但只能复制一些简单的操作,因为复杂的设置需要调用 Fluent 的内部函数,而这些函数可能无法通过 journal 文件访问。

  • 步骤:

    1. 在源 Case 中记录操作: 在 Fluent 的 File > Write > Start Journal... 中,指定一个文件名 (例如 journal.jou)。然后执行你想要复制的所有操作。
    2. 在目标 Case 中运行 journal 文件: 在 Fluent 中打开目标 case 文件。然后,在 File > Read > Journal... 中,选择刚才保存的 journal 文件 (journal.jou)。
  • 优点:

    • 相对简单,不需要了解 Scheme 语言的全部细节。
  • 缺点:

    • 功能受限,只能复制简单的操作。
    • 对于复杂的设置,需要手动编辑 journal 文件,这可能比较困难。
    • 不够灵活,难以控制要复制的设置。

5 总结

推荐使用 Scheme 脚本 方法,因为其提供了最大的灵活性和控制能力。如果目标 case 的网格与源 case 的网格完全相同,并且只需要复制模型设置,那么 Read/Write Settings 方法也是一个不错的选择。如果目标 case 的网格与源 case 的网格不同,但几何形状相似,可以考虑使用 Interpolation Data 方法。

无论选择哪种方法,都需要仔细检查复制后的设置,确保它们正确地应用到了目标 case 中。记得在应用设置之前备份目标 case 文件


(完毕)

本篇文章来源于微信公众号: CFD之道

赞(1) 打赏
版权声明:未经允许,请勿随意用于商业用途。
文章名称:《4种方法将Fluent中case的所有设置参数复制到另一个case中》
文章链接:https://www.topcfd.cn/40265/
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
分享到

说两句 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者吧

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册