在 Linux 集群上配置 SimSolid 以进行批处理

本指南为 IT 管理员提供了配置 Linux 集群环境以批处理模式运行 Altair SimSolid 分析的必要步骤。这样用户无需与 SimSolid 图形用户界面交互即可提交作业,从而简化了多重或大型分析的工作流程。

核心组件

运行 SimSolid 批处理作业需要三个主要组件:

  1. SimSolid 可执行文件:必须在集群上安装适用于 Linux 的 SimSolid 应用程序。可执行文件可从 Altair Marketplace 下载。
  2. JavaScript (.js) 命令文件:包含 SimSolid 将在批处理作业中执行的命令序列的脚本。
  3. SimSolid 项目文件 (.ssp):用户要分析的模型文件。

命令行语法:

启动 SimSolid 批处理作业的基本命令结构如下。该命令应集成到集群的作业提交系统中。

<installation_folder>/simsolid -s <path_to_js_file> -p <path_to_ssp_file> -l <path_to_log_file>

参数解析

  • <installation_folder>/simsolid:这是 SimSolid 可执行文件的完整路径。例如:C:\"Program Files"\Altair\2024\SimSolid2024\Simsolid.exe.
  • -s:该标志用于指定 JavaScript 命令文件的路径。
  • -p:该标志用于指定用户输入 SimSolid 项目 (.ssp) 文件的路径。
  • -l:该标志用于指定输出日志文件的路径和文件名,该文件将记录作业进度和任何错误。

示例命令

<installation folder>/altair/2026/SimSolid2026/simsolid -s <Path to .js file>/Linux.js -p <path to SSP file>/<SSP filename> -l <path to log file>/log.txt

JavaScript 命令文件

.js 文件是批处理流程的核心,包含 SimSolid 将在输入文件上执行的命令。您可以为用户部署标准化脚本,也可以建立一个根据用户选择生成自定义脚本的系统。

下面是 .js 文件语法的示例。


            // open project 
            // The '%1%' placeholder is intended to be replaced by the actual 
            // project name by the batch submission system before execution.
           Project.open({ file: '%1%.ssp'}); 
           //Set number of logical cores to use for the solution 
           Project.setOptions({ numOfCoresToUse: 24 }); 
           // Initialize solutions for all analyses 
           Project.initializeSolutions(); 
           // Solve all analyses 
           Project.solveAllAnalyses(); 
           // Save the solved project with a new name 
           Project.save({ file: '%1%_solved.ssp'}); 
            

在上述脚本中,%1% 用作输入 .ssp 文件基本文件名的占位符。它并不是本地 JavaScript 语法。作业提交系统或包装脚本负责在将脚本传递给 SimSolid 之前,用实际文件名替换占位符。

例如,如果用户提交的作业中包含 Variant-ASM.ssp 文件,系统会动态创建一个临时脚本,将 %1% 替换为 Variant- ASM,这样 SimSolid 执行的行就会变成 Project.open({ file:'Variant-ASM.ssp'});Project.save({ file:'Variant-ASM_solved.ssp'});

定制化和参数化

这个脚本可以很容易地参数化。作业提交门户可在脚本执行前,根据用户输入修改该脚本模板。

  • 内核数:Project.setOptions({ numOfCoresToUse: 24 }); 中的值可以根据用户的要求动态更改。
  • 可选步骤:如果用户选择跳过 Project.initializeSolutions(); 这一步,您可以在提交系统中建立逻辑,注释或删除该行。
Note: 上述 .js 文件只是一个示例。批处理模式下支持所有命令。更多信息,请参阅 SimSolid JavaScript 参考