Andrew Moa Blog Site

PowerShell编写STAR-CCM+自动排队计算脚本

以前用STAR-CCM+在Windows工作站做计算的时候(没钱,公司舍不得上超算……),有时候一晚上要提交十几二十个计算任务(瞎卷ㄟ( ▔, ▔ )ㄏ),当然不可能十几个任务全都一起跑(机器遭不住),也不可能全程盯着它跑一个个手动提交(人遭不住)。几年前用PowerShell编写了这个简易的排队计算的模板,在这里分享给大家。

$title = "STAR-CCM+ 19.06.009-r8"	# 窗口标题,怎么填随你喜欢
$host.ui.RawUI.WindowTitle = $title

$STARCCM_PATH = "D:\XXX\Siemens\19.06.009-R8\STAR-CCM+19.06.009-R8\star\lib\win64\clang17.0vc14.2-r8\lib"	# 填写本机STAR-CCM+的安装绝对路径
$env:path += ";$STARCCM_PATH"
$run_dir = $pwd
$thread_number = 32	# 填写本机的CPU核心数

$Array = Get-ChildItem -Path $run_dir -Name "*.sim"
$n = 0

foreach($item in $Array)
{
    $n += 1
    $sub_dir = $n.ToString() + "_" + $item.Substring(0,$item.Length-4)
    mkdir $sub_dir
    mv $item $sub_dir
    cd $sub_dir
    $host.ui.RawUI.WindowTitle = $title + " - " + $item + " - " + $n + "/" + $Array.Count
    $log = $item + ".log"
    starccm+ $item -batch run -np $thread_number -mpi ms | tee $log
    cd $run_dir
}

把以上命令行以文本格式保存为.ps1脚本文件,和要提交计算的.sim文件放到同一个文件夹,然后通过终端运行这个脚本。会自动统计排队任务数,将计算的.sim文件转移至新建子文件夹,同时生成.log日志文件,也可以在输出窗口中监控运行情况。计算完成后关闭终端即可。

美中不足的是,不支持宏文件,也不支持临时增加或插入算例。

各位可以针对自己的情况,做一些针对性的调整。

如果碰到输出窗口和日志文件中有乱码的情况,多半是你的PowerShell不支持UTF-8所导致。参考以下方法1,在PowerShell窗口中输入:

# 配置文件一般位于:C:\Users\用户名\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
# 如果没有就新建一个
notepad $PROFILE # 编辑配置文件

在配置文件中增加以下内容,保存退出:

$OutputEncoding = [console]::InputEncoding = [console]::OutputEncoding = [Text.UTF8Encoding]::UTF8
阅读时长1分钟
Andrew Moa

Ubuntu24.04安装Ansys2025R1

1. 准备工作

全部安装需要161GB磁盘空间,请确保磁盘剩余可用空间满足需求,可以根据自己需求选择安装内容。

e8b6a55779447694ef28a8a9560f2bab.png
3f912a7795844465627dc878eb409e95.png

安装过程中至少需要8GB内存,推荐内存16~32GB。

安装过程中的依赖工具:

sudo apt install libnsl2 libpcre3 lsb-* ldap-utils libunistring5 xfonts-100dpi xfonts-75dpi

其他运行时的依赖工具安装,请查询官方文档。

Ansys2025R1安装文件中包含9个.iso安装文件,用以下命令挂载.iso文件到指定路径:

mkdir ${HOME}/ISO/1
sudo mount ${HOME}/Share/Ansys/ANSYS2025R1_LINX64_DISK1.iso ${HOME}/ISO/1 -o loop

同样的办法,将剩下的安装包分别挂载至其他文件夹。

2. 安装许可证服务器

2.1 安装Ansys License Manager

由于Ansys安装需要用到图形界面,因此需要先通过远程连接进入Ubuntu桌面系统。

进入第一个安装包的挂载点,运行安装程序:

cd ${HOME}/ISO/1
sudo ./INSTALL # 由于需要以服务形式运行,建议以管理员用户权限运行安装程序

598ba0142449e130e1d6680aef25e2db.png

阅读时长2分钟
Andrew Moa

Ubuntu24.04搭建Samba服务器

由于Ubuntu运行在虚拟机中,通过Ubuntu挂载Windows共享文件夹,在挂载点中运行某些CAE软件会出现计算报错。考虑将Ubuntu文件夹共享给Windows,因此需要在Ubuntu系统上搭建Samba服务器。

首先在Ubuntu上安装samba软件包:

sudo apt install samba -y

创建共享文件夹:

mkdir ${HOME}/LinuxShare

编辑Samba配置文件/etc/samba/smb.conf

sudo vim /etc/samba/smb.conf

在文件末尾增加以下内容,保存退出:

[Ubuntu_Share] # 在客户端上显示的共享文件夹的名称
    comment = Samba	# 注释,展示给用户看的
    path = /home/***/LinuxShare	# 共享文件夹的本地路径,填写绝对路径
    public = yes	# 是否允许匿名用户访问
    writable = yes	# 是否允许用户编辑
    available = yes	# 是否可用
    browseable = yes	# 是否可以在网络上浏览
    valid users = user	# 填写Ubuntu登录用户名	

给Samba用户设置密码:

sudo smbpasswd -a user

启动Samba服务的守护进程:

sudo systemctl enable smbd
sudo systemctl start smbd

查询Samba服务状态:

阅读时长1分钟
Andrew Moa