24小时热门版块排行榜    

查看: 5608  |  回复: 28
本帖产生 2 个 模拟EPI ,点击这里进行查看

amynihao

金虫 (正式写手)

寂寞大虫

[交流] 【讨论】想学lammps是否应该先学习C++ 已有16人参与

最近打算学习lammps,是不是应该先把C++学好呢?还是只要懂点基础就行了?
回复此楼
不是要做一个单纯优秀的人,而是要做一个不可替代的人。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

御剑江湖

荣誉版主 (著名写手)

天池冶海

优秀版主

★ ★ ★ ★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
ghcacj(金币+6, 模拟EPI+1): 谢谢,精彩的答疑 2011-04-14 09:56:37
小木虫: 金币+2, 帖子真精彩 2014-03-19 12:38:20
引用回帖:
Originally posted by amynihao at 2011-01-22 10:00:08:
最近打算学习lammps,是不是应该先把C++学好呢?还是只要懂点基础就行了?

其实我觉得你刚学lammps,先看看网上关于in文件的详细解释步骤,再学习Fortran语言,最后才C++,因为那时就是自己编译开发源程序,楼上“懂一点基础比较好,尤其是建立模型和数据处理的时候用途很大”也是正确的,不过建立模型,现在一般用MS,然后read data比较方便,数据处理用origin也不错,呵呵,这只是我一点建议而已。
给你看看关于in文件的详细解释步骤
boundary  p s s                                    # 边界条件,拉伸方向是周期性,其余是自由边界;如果是薄膜拉伸则是两个周期性,块体则是三个周期性
units       metal                                     #单位制定义为metal
atom_style  atomic                              #原子类型自动
neighbor 2.0 bin                                   #截断半径相关的东西
neigh_modifydelay 1 check yes            # 邻近原子列表更新速度

#create geometry
lattice    fcc 3.61                                  # 定义晶胞为fcc,晶格常数3.61A
region  box block 0 30 0 3 0 3               #定义一个长方体区域叫box,长30,宽和高是3
create_box 1 box                                 #创建了这样一个box
create_atoms 1 box                             #在box里创建了一种原子
mass    1 63.546                                  #定义这种原子的质量是63.546

# potentials
pair_style    eam                                   # 定义势函数是EAM
pair_coef   * * Cu_u3.eam                     #势所需要的参数在此文件里

#define groups
region     1 block INF 1 INF INF INF INF                   # 定义了一个叫1的区域
group  left region 1                                                    #定义此区域里的原子叫left
region   2 block  29 INF INF INF INF INF                    #定义了一个叫2的区域
group    right region 2                                               #定义此区域里的原子叫right
group    boundary union left right                               #定义left+ right = boundary
group     mobile subtract all left                                 # 定义mobile= all - left

# initialvelocities
velocity   left set 0.0 0.0 0.0                                      # 设置原子初速度为0

computep all pressure thermo_temp      # 计算应力,计算结果记为p      
variable    pressx equal c_p[1]               #定义变量pressx=c_p[1],c_p[1]的意思是p里第一个值
variable   pressy equal c_p[2]                #定义变量pressy=c_p[2],c_p[2]的意思是p里第二个值
variable   pressz equal c_p[3]                #定义变量pressz=c_p[3],c_p[3]的意思是p里第三个值

thermo_style custom step temp etotal press v_pressx   v_pressy v_pressz vol
dump 1 all atom 1000 dump.tensile                          #  输出结果到dump.tensile   
minimize 1.0e-6 1.0e-6 1000 1000                            #   驰豫

fix   1 left setforce 0.0 NULL NULL                            #固定左边的原子
fix   2 all npt 1.0 1.0 1.0 aniso 0.0 0.0 NULL NULL NULL NULL 10.0 drag 1.0

thermo 1000                                                         # 每1000步输出一次结果
timestep    0.002                                                   #时间步长0.002ps
run  10000                                                             #运行10000步

unfix2
fix  3  all nve
fix  4  all temp/rescale 100 1.0 1.0 5 1.0
fix  5  all deform 1000 x erate 0.002 units box      #设置沿x方向拉伸,应变率为0.002(1/ps)

compute       s all stress/atom                          #计算每个原子上的应力,计算结果记为s
compute       strea all reduce sum c_s[1]           #将s里第一个值求和,计算结果记为strea
variable       stressa equal c_strea/vol                # 定义变量stressa= strea/vol, vol是体积         
compute       streb all reduce sum c_s[2]
variable        stressb equalc_streb/vol
compute      strec all reduce sum c_s[3]
variable      stressc equal c_strec/vol

thermo_style    custom step tempetotal press v_stressa  v_stressb v_stressc vol
run    300000
莫问前尘事,只怜今世缘,承临纵横风,御剑凡尘路,蹉跎浮华,嬉笑洒脱。
5楼2011-04-13 23:45:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

御剑江湖

荣誉版主 (著名写手)

天池冶海

优秀版主

★ ★ ★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
zh1987hs(金币+5, 模拟EPI+1): 谢谢 2011-04-15 22:45:44
引用回帖:
Originally posted by haowenping at 2011-04-15 21:36:31:
御剑江湖你好,我现在就是想用MS建模,然后用lammps计算,可是不知道如何将MS中的.cell数据文件转换成LAMMPS中的.data类型的数据文件,请指教。

用materials studio建模转化成lammps data文件,我是用lammps里的msi2lmp工具转化的。
那个msi2lmp工具,手册第七章里面也有介绍,下载的lammps文件,tool目录下也有源代码和例子,你可以做相应的参考。
使用MS将PDB导出成car,mdf格式。

有关msi2lmp工具的使用(执行msi2lmp.exe 的权限 更改文件的使用权限):
按照以下顺序来的:
1,直接把msi2lmp.exe拷贝到指定文件夹下;
2,在ms中建立好结构模型后,在ds模块或者forcite模块中指定力场类型,如对xxx结构指定为cvff力场,export结构保存为.car格式,同时自动有.mdf格式的文件生成;
3,将xxx.car和xxx.mdf文件拷贝到msi2lmp.exe所在的文件夹,并将tools/msi2lmp/biosym_frc_files文件中对应的力场文件拷贝到这个文件夹中(如上面的cvff.frc);
4,在这个文件目录下,通过终端命令行./msi2lmp.exe xxx -class I -frc cvff > data.xxx 运行程序,运行成功生成data.xxx文件和xxx.lammps05文件,data.xxx是空的可以直接删除,数据在xxx.lammps05文件中。

如果还不清楚,我就没办法了,呵呵。。。。
莫问前尘事,只怜今世缘,承临纵横风,御剑凡尘路,蹉跎浮华,嬉笑洒脱。
10楼2011-04-15 21:47:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

amynihao

金虫 (正式写手)

寂寞大虫

引用回帖:
Originally posted by 御剑江湖 at 2011-04-13 23:45:03:
其实我觉得你刚学lammps,先看看网上关于in文件的详细解释步骤,再学习Fortran语言,最后才C++,因为那时就是自己编译开发源程序,楼上“懂一点基础比较好,尤其是建立模型和数据处理的时候用途很大”也是正确的 ...

非常感谢您这么详细的回答,我感觉写in文件太麻烦了,不会写。所以打算用MS算呢。
不是要做一个单纯优秀的人,而是要做一个不可替代的人。
6楼2011-04-14 08:56:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

zyj8119

木虫 (著名写手)

★ ★
ghcacj(金币+1): 谢谢 2011-01-23 15:41:09
御剑江湖(金币+1): 谢谢 2011-04-13 23:45:33
引用回帖:
Originally posted by amynihao at 2011-01-22 10:00:08:
最近打算学习lammps,是不是应该先把C++学好呢?还是只要懂点基础就行了?

最好还是懂一点吧。
好好学习,天天向上。
2楼2011-01-22 17:54:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jiangtao9571

新虫 (正式写手)


御剑江湖(金币+1): 谢谢 2011-04-13 23:45:40
懂一点基础比较好,尤其是建立模型和数据处理的时候用途很大
3楼2011-04-13 16:27:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jiangtao9571

新虫 (正式写手)

御剑江湖: 谢谢 2011-04-13 23:45:55
引用回帖:
Originally posted by jiangtao9571 at 2011-04-13 16:27:23:
懂一点基础比较好,尤其是建立模型和数据处理的时候用途很大

懂一点基础比较好,尤其是建立模型和数据处理的时候用途很大
4楼2011-04-13 16:27:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

御剑江湖

荣誉版主 (著名写手)

天池冶海

优秀版主

引用回帖:
Originally posted by amynihao at 2011-04-14 08:56:28:
非常感谢您这么详细的回答,我感觉写in文件太麻烦了,不会写。所以打算用MS算呢。

好好学,学好请教你!
莫问前尘事,只怜今世缘,承临纵横风,御剑凡尘路,蹉跎浮华,嬉笑洒脱。
7楼2011-04-14 09:59:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sdzjc1988

木虫 (小有名气)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
御剑江湖(金币+1): 谢谢 2011-04-15 14:50:37
in文件其实都很类似,只要费点功夫写出第一个in文件往后就轻松多了
8楼2011-04-15 12:08:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

haowenping

木虫 (著名写手)


小木虫(金币+0.5):给个红包,谢谢回帖交流
引用回帖:
Originally posted by 御剑江湖 at 2011-04-13 23:45:03:
其实我觉得你刚学lammps,先看看网上关于in文件的详细解释步骤,再学习Fortran语言,最后才C++,因为那时就是自己编译开发源程序,楼上“懂一点基础比较好,尤其是建立模型和数据处理的时候用途很大”也是正确的 ...

御剑江湖你好,我现在就是想用MS建模,然后用lammps计算,可是不知道如何将MS中的.cell数据文件转换成LAMMPS中的.data类型的数据文件,请指教。
人有多大胆,地有多大产!
9楼2011-04-15 21:36:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 amynihao 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见