计算材料热输运性质时需要计算模型原子间力常数,包括可处理获得声子色散的二阶力常数,和三阶力常数甚至四阶。通常使用phono3py或者thirdorder生成三阶力常数的计算文件。
前面在ShengBTE简单介绍、安装与使用,附软件说明文档的文章中提及了与之相关的软件thirdorder的安装教程,后续收到很多朋友询问说thirdorder安装总出现各种各样的问题。
笔者前段时间拿到一台新的服务器,与以往一样通过安装Anaconda来构建python环境,在安装thirdorder的时候遇到了相关的报错,最终确定是python版本的问题。thirdorder安装报错:error: command '/usr/bin/gcc' failed
目前大家在配置环境时默认使用高版本的anaconda3,python一般为3.10甚至以后,而thirdorder软件可能只支持到3.7
在安装thirdorder时先设置一个新的python环境,并设置python=3.7
conda create -n thirdorder python=3.7
生成新的环境后再进行环境激活
conda activate thirdorder
安装好thirdorder所需要的环节依赖比如spglib和scipy等等,依靠pip进行安装
conda install pip
pip install spglib scipy
在thirdorder中设置好setup.py
保存后我们在安装文件夹中执行命令运行 compile.sh进行安装
安装之前最好检查一下python版本
sh compile.sh
或直接输入命令
python setup.py install
最后生成core文件即可