less than 1 minute read

Abaqus 是广泛使用的有限元分析商业软件,有 Windows 版本和 Linux 版本,后者默认支持 CentOS、RedHat、OpenSUSE 三种发行版。在 Ubuntu 发行版下进行 Abaqus 安装需要进行一些额外的配置,整理如下。

安装依赖软件包

sudo apt-get install csh ksh libxm4 libjpeg62 libstdc++5 mesa-common-dev gfortran gcc g++ make build-essential lib32ncurses5

以下假设Abaqus安装母目录为 /opt/SIMULIA

安装Documentation

启动Server之前,创建 libtermcap.so 的链接:

sudo ln -s /lib32/libncurses.so.5.9 /lib/libtermcap.so.2

启动Documentation Server:

/opt/SIMULIA/Documentation/installation_info/v2016/startServer

设置License Server

安装Abaqus

  • 对 Abaqus v2016
    • 安装 Abaqus Solver 时注意将 ./inst/common/init/Linux.sh 第3行:
      DSY_OS_Release=`lsb_release --short --id |sed 's/ //g'`
      

      改为

      DSY_OS_Release="CentOS"
      

      之后各模块均需要进行此操作。

    • 安装 Tosca 及其它求解器
  • 对 Abaqus v6.14-4 只需安装 Abaqus,所有模块都已集成在一个安装程序中。

添加系统环境变量 ~/.bashrc

alias abaqus='XLIB_SKIP_ARGB_VISUALS=1 /opt/SIMULIA/Abaqus/Commands/./abaqus'
alias abqlm='/opt/SIMULIA/license/./lmgrd -c /opt/SIMULIA/license/ABAQUS.lic'
alias abqdocserver='/opt/SIMULIA/Documentation/installation_info/v2016/./startServer'
alias abqlmstat='/opt/SIMULIA/License/./lmstat'
alias abqlmdown='/opt/SIMULIA/License/./lmdown'
alias abaqus='XLIB_SKIP_ARGB_VISUALS=1 ~/SIMULIA/Abaqus/Commands/./abaqus'

使用下面的 bash 脚本启动 Abaqus CAE:

#Remove GUI setting files from previous runs to avoid multi-windows issue.
rm -rf ~/abaqus_2016.gpr
#Set working directory
cd /opt/SIMULIA/Temp
#Solution to a transparant GUI, and crashes of graphics card driver
XLIB_SKIP_ARGB_VISUALS=1 /opt/SIMULIA/Commands/./abaqus cae -mesa

并按需要在桌面制作启动图标。

配置完成后,v6.14-4 运行良好。v2016 版仍然存在兼容性问题,许多问题由路径不对引起。如:

  • Ubuntu16.04 下不能直接将Job在CAE中提交求解。需使用命令行:
    abaqus job=... cpus=... Interactive
    

    提交求解。

  • 同时,Abaqus Tosca 拓扑优化模块仍无法使用,程序会提示
    ERROR: Memory allocation attempt before component initialization
    

    返回错误代码 134。 单独运行出现问题的 SMATsoToscaPrep,提示:

    ./Tosca/2016.HF2/linux_a64/code/bin/SMATsoToscaPrep: error while loading shared libraries: libJS0GROUP.so: cannot open shared object file: No such file or directory
    

    然而 libJS0GROUP.so 在目录 ./Tosca/2016.HF2/linux_a64/code/bin/ 下存在。目前尚未找到解决方案。

其它配置

并行求解配置

注意修改 env 文件使用正确的并行模式(单机采用 Threads,集群采用 MPI)

Fortran编译器修改

Comments