python与lammps_用python来玩lammps【环境设置篇】【其实是小白求交流】

在小小地纠结了两个晚上(其实完全不需要纠结),我成功设置了lammps动态库,可以从Python里面调用lammps写code了!

python因为代码简单,是一个很活跃的语言,于是在phd第一年,修了一门计算物理,就是用Python教的。上完课之后,就一直很想学以致用啦。

其实也因为Python很火,lammps的doc里面已经写好了怎么交互使用。

但是介于我是linux小白,也还是纠结了很久。使用的是ubuntu14.04,bash shell

按照doc里面11.3 建一个共享的lammps的库

1.先去lammps里面的src文件夹

我的话是:

cd Desktop

cd lammps-14May16

cd src

当你在src文件夹里,你就可以使用make command了。

make foo mode=shlib 这里的foo就是你的机器类型了,我这里就是ubuntu

所以我输入的是:

make ubuntu mode=shlib

上面的指令,会在你的文件夹里面,建一个liblammps_ubuntu.so file,和一个软连接 liblammps.so

2.设置环境变量

其实我现在还不是很清楚,环境变量是不是必须得设置。因为我第一天晚上设置好了,但是结果没有运行成功

第二天才做了步骤3,之后才成功了。

但是无论如何,环境变量的设置也是一个很常见的问题。

上面1里面提到了的liblammps_ubuntu.so 和在lammps/python下面找到的 lammp.py 文件都很关键。

我们希望python知道在哪里找到lammps的库(liblammps_ubuntu.so),所以要告诉他们一个寻找的位置

官方里面给的例子是这样的: 如果是用csh or tcsh shells,在 ~/.cshrc file里面加上下面两句话就好了。

setenv PYTHONPATH ${PYTHONPATH}:/home/sjplimp/lammps/python

setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/home/sjplimp/lammps/src

然后我的是bash shell,不知道是不是ubuntu就是这样子的

所以,实际上对应的是 .bashrc file

这个文件

你在命令行里面输入

ls -al

就能在里面找到这个文件的踪迹

vi .bashrc

是我知道唯一能进入这个文件的办法…

因为貌似特殊文件,一般时候没有显示

但是结果进去了之后,看不懂。。。所以就没敢在里面乱改。

后来找到添加环境变量的方法是

输入env

就能看到你所有的环境变量

然后输入

export PYTHONPATH=$PYTHONPATH :/home/Desktop/lammps-14May16/python

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH :/home/Desktop/lammps-14May16/src

这个时候你再输入env

就能发现添加了这几个环境变量

然后别忘了输入

source ~/. bashrc

让你的环境变量生效。

(写到这里的我,已经无法坚持写下去了…)

突然发现设置的环境变量现在又不见了!

看来上面的方法不是永久有效的

还是得改文本么!!!

3.但是介于上面的发现,

说明其实不设置环境变量也没关系

有另外一个方法!

直接去跑install.py 就好了!

跑到lammps下面的python文件夹

python install.py

跑完没报错的话

直接测试

from lammps import lammps

lmp=lammps()

就输出了你的lammps版本

LAMMPS(14 May 2016)

If you use the python/install.py script, you need to invoke it every time you rebuild LAMMPS (as a shared library) or make changes to the python/lammps.py file.

注意的是,这样的话,每次重新建lammps?(什么叫rebuild lammps啊),

你就要重新运行一遍。

这样也没关系啊,只要能跑就好了!

我只有这么个最低要求。

写完才发现,我真的是小白求交流。理解了环境变量是干嘛用的,觉得还蛮神奇的~

继续奋斗,希望能之后继续写,怎样在python里面玩lammps~

共勉@求讨论求指教

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值