目前能找到的支持Linux的最新版MSC.Nastran是2024.2版。安装说明挺简单的,先安装许可证服务器,再安装程序本体,接着设置许可证服务器。实际上有不少容易踩坑的点需要注意。
1. 安装MSC许可证服务器
进入程序所在文件夹,运行许可证守护进程安装文件。默认情况下会启动图形安装界面,提示不支持Ubuntu。这里通过--mode console进入文本安装界面。
./msc_licensing_lithium_linux64.bin --mode console
输入Y或直接回车确认进入安装程序。
显示本机名称和硬件信息,按空格键继续。
输入安装路径,根据自己的需要输入安装位置的绝对路径。如果安装在${HOME}目录以外的位置,需要注意登陆用户在该路径下是否有读写权限,否则需要通过管理员权限重新运行安装程序。
输入日志文件保存路径。
输入许可证文件的绝对路径。
显示许可证文件的信息,按空格键继续。
询问是否启动许可证服务器,建议选择y并按回车键继续。
询问是否编辑高级属性,直接Enter跳过吧。
确认安装信息,按空格键继续,启动安装进程。
安装完成后输出以下信息,此时许可证守护进程已经启动。
2. 配置许可证守护进程
确认许可证守护进程是否正常运行。
ps -eaf | grep MSC
显示以下信息,说明许可证守护进程已经成功启动。否则,需要检查日志文件确认许可证文件信息是否正确,替换正确的许可证文件。
这个时候许可证守护进程还没注册成为系统服务,重启之后进程退出,需要手动运行,很麻烦。下面新建Systemd服务解决这个问题。
sudo touch /usr/lib/systemd/system/msc_lmd.service
sudo chmod 754 /usr/lib/systemd/system/msc_lmd.service
sudo vi /usr/lib/systemd/system/msc_lmd.service
添加如下内容并保存退出。
[Unit]
Description=MSC Software Licensing Deamon
After=msc_lmd.service
[Service]
Type=forking
User=root
Group=root
ExecStart="/opt/MSC.Software/MSC Licensing/Lithium/lmgrd" -c "/opt/MSC.Software/MSC Licensing/Lithium/license.dat" -l "/opt/MSC.Software/MSC Licensing/LOG/lmgrd.log" -local -2 -p -x lmremove
ExecReload=
ExecStop="/opt/MSC.Software/MSC Licensing/Lithium/lmutil"lmdown -q -c "/opt/MSC.Software/MSC Licensing/Lithium/license.dat"
[Install]
WantedBy=multi-user.target
通过以下命令启动服务。
sudo systemctl enable msc_lmd
sudo systemctl start msc_lmd
查看服务状态。
sudo systemctl status msc_lmd
3. 安装Nastran求解器
运行Nastran求解器安装文件。
./nastran_2024.2_linux64.bin --mode console
确认进入安装程序。
根据提示输入Acknowledged后按回车键接受声明并继续安装,输入Cancel或直接回车退出安装程序。
输入求解器的安装路径,Enter之后直接复制文件到安装路径中。
输入许可证服务器的端口号和地址,这里输入27500@localhost并回车确认。
可以选择输入scratch文件夹的路径,这里Enter直接跳过。最好选择一个现有路径,或者安装完成后手动新建scratch文件夹。
按提示选择是否每次运行时都启用scratch文件夹。注意了如果选择确认,最好给所有用到求解器的用户都开启scratch文件夹的读写权限,否则提交计算容易报错。
输入默认内存大小,直接跳过吧。
输入缓冲区大小,默认即可。
提示安装SDK,跳过吧。
至此安装完成。
4. 配置环境变量
新建一个环境变量文件msc_nastran_2024_2.env。
touch msc_nastran_2024_2.env
chmod +x msc_nastran_2024_2.env
vi msc_nastran_2024_2.env
编辑内容如下。
export LM_LICENSE_FILE=27500@localhost # 确保27500端口不要被其他程序占用,如果要更改端口号,需要编辑许可证文件并重启服务
export NASTRAN_PATH=/opt/MSC.Software/MSC_Nastran/2024.2 # 该路径根据前面输入的安装位置来确定,应填写绝对路径
export PATH=$NASTRAN_PATH/bin:$PATH
alias nastran=nast
这样,每次运行之前都需要手动载入环境变量。
source msc_nastran_2024_2.env
显示求解器帮助信息。
nastran help
提交计算示例,smp=16表示在本机上启用并行计算线程数为16。至于HPC上的提交脚本,可以参考这个1来配置。
mkdir scratch && nastran jid=test.bdf smp=16 sdir=$PWD/scratch
如果前面选择了启用scratch文件夹,最好加上sdir=指定scratch文件夹位置,避免默认的/scratch文件夹没有访问权限所导致的报错。