
Code_Aster 简介Code_Aster 是由法国电力公司EDF研发的开源有限元分析软件主要用于结构与热力学仿真。作为一款达到工业级标准的求解器它具备极高的计算精度和可靠性广泛应用于核能、土木及机械工程领域。其功能涵盖了静力学、动力学、非线性分析、疲劳断裂及流固耦合等复杂物理场景。Code_Aster 基于Python脚本进行操作拥有丰富的单元类型和材料本构模型是开源CAE领域中替代商业软件的强力选择。SALOME 简介SALOME 是一个开源的数值仿真集成平台为有限元分析提供了完整的前后处理环境。它支持从CAD几何建模、参数化设计、网格划分到结果可视化的全流程操作。SALOME 具有优秀的兼容性能够无缝对接Code_Aster、OpenFOAM等多种求解器并通过统一的图形界面管理计算作业。其模块化的架构和强大的Python脚本接口允许用户实现仿真流程的自动化与定制化是进行Code_Aster仿真分析的标准图形界面工具。引子最近扔掉Windows回归了Debian的怀抱本打算安装一个abaqus来模拟各种结构玩。本人专业是计算机和有限元八竿子打不着后续有关专业的内容可能有误请批判性阅读但忽然想到既然用来开源系统那么不如尝试一下开源的有限元分析软件。于是就在网上搜各种有限元分析软件其中两个软件映入眼帘CalculiX和code_aster。正所谓文无第一武无第二。遇见两个同类型的软件总是要比较一番的于是我在网上搜索搜出了这么几个帖子和文章。https://forum.code-aster.org/public/d/25752-calculix-vs-code-asterhttps://www.simscale.com/forum/t/fea-boundary-conditions-calculix-vs-codeaster/10449帖子中提到CalculiX配置简单安装方便适合初学者但在复杂场景的处理中稍弱但帖子日期都是几年前了开源软件几年变化就大有不同所以不能以老眼光看待问题但出于种种考虑我还是选择了code_aster。有关CalculiX的使用见官网此处也有一个介绍CalculiX的视频展示。相比较code_aster来说CalculiX更偏向于社区主导印象中采用的是GPL协议https://www.calculix.de/https://www.bilibili.com/video/BV1JJsBznEzi第一章 code_aster/SALOME安装d由于我们的主要内容是介绍code_aster所以有关CalculiX的部分就一笔带过。code_aster只是其中的一个求解器如果光用code_aster的话无疑十分难受所以我们直接安装SALOME大礼包前端后端网格处理等等一股脑全打包了。https://code-aster.org/spip.php?article303安装包可以在上面这个链接中找到。我们直接安装最新版这是一个容器的格式。官网给出的教程说windows只能用wsl/wsl2运行一个Linux环境来跑。但看在文档给出的Debian8的案例来看这个文档时间多少有些久远了。读者如果是使用windows操作系统的话可以研究一下这个容器能不能在win上跑。作者是用的Debian13.4的系统版本所以直接安装容器就行。什么是 Singularity是的它就像 Docker。它是一个容器系统在科学计算和高性能计算HPC中很流行因为它能处理权限问题不像 Docker 那样需要 root这对集群来说不安全当然现在也有不用root的版本。作者使用的Debian使用apt默认没有这玩意。据说这玩意发展途中还改名了。以前的命令叫singularity现在新的标准命令叫apptainer。但为了兼容通常singularity命令也会自动链接到apptainer。但你要是sudo apt install singularity就搞笑了因为这直接会安装一个同名的叫singularity的游戏我试着玩了一下没玩明白。似乎Debian的软件仓库里默认没有这玩意。我们只能去它的官网安装。https://apptainer.org/docs/admin/main/installation.html但是你直接wget他的实例可能是旧文件或者空老老实实从github的发布页上来拉。https://github.com/apptainer/apptainer/releases/其中debug/dbg都是调试的意思你可以看到调试信息suid是临时通行证的意思你可以问一下AI简单来说省事没那么多权限问题。我是debian13 也就是 trixie 版所以就下这个了。https://github.com/apptainer/apptainer/releases/download/v1.5.0-rc.1/apptainer-suid_1.5.0.rc.1-trixie_amd64.deb把这个包拉下来dpkg就行当然安装前最好先念咒祈祷一下以便不会遇到什么依赖问题。APT神咒终端Root赛博之灵。 升达云端大陆放行。 为吾安装依赖莫停。 有功之日机械飞升。如果有依赖问题请左转nixnix值得你拥有。所以我左转去了nix以下是nix安装的说明Nix 是一个非常强大的工具特别适合你这种“系统想保持稳定但特定软件要最新”的需求。它就像是在你的系统里装了一个独立的“应用商店”里面的软件都是最新版且完全不影响 Debian 本身。以下是 Nix 在 Debian 上的具体操作步骤第一步安装 Nix 包管理器在 Debian 终端中直接运行官方安装脚本sh (curl -L https://nixos.org/nix/install) --daemon说明--daemon模式是多用户模式适合 Debian 这种多用户系统。安装过程会需要你确认几次按提示输入y即可。耗时安装很快它主要是在你的系统里建立/nix目录并配置环境变量。安装完成后关闭当前终端并重新打开或者执行source /etc/profile让环境变量生效。验证是否成功nix --version第二步找到你要的软件Nix 拥有全世界最大的软件仓库之一。你需要先确认你要的软件在 Nix 里叫什么名字。打开网页https://search.nixos.org/在搜索框输入你的软件名。找到软件后看Package name这一栏比如neovim,go,blender。关键点看 Version 一栏。Nix 的unstable通道通常包含 GitHub 上最新发布的版本。默认安装的就是unstable通道这正是你想要的。第三步安装软件假设你要安装的软件叫hello请替换成你实际要装的软件名。方法 A直接安装到系统推荐这就像apt install一样把软件装好你可以直接在终端运行。# 语法nix-env -iA nixpkgs.软件名nix-env -iA nixpkgs.hello安装完成后你可以直接运行hello以后想更新这个软件到最新版只需nix-env -u 软件名方法 B临时运行最干净不污染环境如果你不想安装只是想临时用一下最新版或者想测试一下版本对不对# 语法nix-shell -p 软件名nix-shell -p hello执行后你会进入一个特殊的 Shell 环境在这个环境里hello命令可用。输入exit退出后系统里就没有这个软件了。第四步日常使用和管理查看已安装软件nix-env -q卸载软件nix-env -e 软件名彻底清理空间Nix 不会自动删除旧版本如果你磁盘空间紧张定期运行nix-collect-garbage -d配置好了可以使了忍不住吐槽一下Linux系的屎山这种一层套一层的方案简直是在屎上拉屎怪不得开发都转去用mac了。愿世间发行版能再少一点再少一点。现在我们按照教程给的方法测试。虽然和abaqus的界面有点不像用起来颇为不知所措但至少它跑起来了不是吗可以看到生成了一个可执行的程序我想或许把它移动到/usr/bin中也是可以用的。好吧其实不不可以。总之至此我们的软件算是安装完成了接下来就是介绍一下如何使用了。当然先让我摸索一会未完待续。第二章 SALOME的使用待写ing急着看的可以直接阅读手册和yutube链接。https://code-aster.org/docsmeca/default/en/index.php?manSUhttps://docs.salome-platform.org/latest/main/gui.html视频https://www.youtube.com/SALOMEPlatformOfficial/videoshttps://www.youtube.com/codeaster4013此外还有一些视频up主更新的教程其实比官方写的还好但太多了就不列了你们自己搜就行。当然在Linux下使用sw显然是比较麻烦的所以这里会试着使用freecad这个安装倒是简单sudo apt install freecad就行