24小时热门版块排行榜    

查看: 3802  |  回复: 10

青春逍遥啊

新虫 (小有名气)

[求助] 求救,如何将xyz格式的文件转化为可以让lammps读的data文件,求大神,感激不尽 。 已有2人参与

如题/
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

bluewhale

铁杆木虫 (正式写手)

引用回帖:
7楼: Originally posted by 青春逍遥啊 at 2015-12-08 09:12:52
就是一个石墨烯的坐标模型,都是c原子,。。。...

仅仅.xyz转过去是不完整的(见下),还有bond, angle, dihedral的定义。
xyz2lmp.m
--------------
function xyz2lmp(f_xyz)
% This script converts .xyz file to lammps data file.
% Input:
%   f_xyz: name of the input .xyz file.
% Example:
%   xyz2lmp('PdAu.xyz')
% NOTE: The second line must be in specified format as:
%   PdAu xlo xhi ylo yhi zlo zhi
% Poweed by Xianbao Duan
% Email: xianbao.d@gmail.com
% Website: http://www.52souji.net/

% open the .xyz file
fidin = fopen(f_xyz,'r');
if fidin == -1
    error('Failed to open the file. Please check!');
end

% number of all the atoms
atom_num_a = fscanf(fidin,'%d');

% comment
comment = textscan(fidin,'%s %f %f %f %f %f %f',1);
xlo = comment{2};
xhi= comment{3};
ylo = comment{4};
yhi= comment{5};
zlo = comment{6};
zhi= comment{7};

% coordinates of the atoms
atoms = textscan(fidin,'%s %f %f %f',atom_num_a);
fclose(fidin);

% initialize
type_name = atoms{1}(1);    % names of types
atom_num(1) = 1;            % atom number of each type

% sort the atoms according to their types
for i = 2: length(atoms{1})
    flag = 0;
    for j = 1:length(type_name)
        if strcmp(atoms{1}(i),type_name(j)) == 1
            atom_num(j) = atom_num(j) + 1;
            flag = 1;
            break;
        end
    end
    if flag == 0
        type_name(end+1) = atoms{1}(i);
        atom_num(end+1) = 1;
    end
end
type_num = length(type_name);

% write the lammps file
outfilename = strrep(f_xyz,'.xyz','.lmp');
fidout = fopen(outfilename, 'w');
new_comment =  ['Converted from .xyz to .lmp @ ',datestr(now) ];
fprintf(fidout,'%s\n\n',new_comment);
fprintf(fidout,'%d \t %s\n',atom_num_a,'atoms');
fprintf(fidout,'%d \t %s\n',type_num,'atom types');
fprintf(fidout,'%f  %f \t%s\n',xlo,xhi,'xlo xhi');
fprintf(fidout,'%f  %f \t%s\n',ylo,yhi,'ylo yhi');
fprintf(fidout,'%f  %f \t%s\n\n',zlo,zhi,'zlo zhi');
fprintf(fidout,'%s\n\n','Atoms');
% the data
for i = 1:length(atoms{1})
    for j = 1:type_num
        if strcmp(atoms{1}(i),type_name(j)) == 1
            fprintf(fidout,'%d \t %d \t %f \t %f \t %f \n',...
                i,j,atoms{2}(i),atoms{3}(i),atoms{4}(i));
            break;
        end
    end
end
fclose(fidout);
8楼2015-12-08 11:05:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

luftf

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
首先要看你用lammps模拟什么材料,用的什么势函数
data文件的结构跟势函数有关
不同势函数用的data文件的结构都不一样
LAMMPS手册里面有具体的说明
2楼2015-12-07 20:16:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cyfjkf

至尊木虫 (著名写手)

3楼2015-12-07 21:18:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bluewhale

铁杆木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
有机分子,还是纯金属?
4楼2015-12-07 23:34:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

青春逍遥啊

新虫 (小有名气)

引用回帖:
2楼: Originally posted by luftf at 2015-12-07 20:16:28
首先要看你用lammps模拟什么材料,用的什么势函数
data文件的结构跟势函数有关
不同势函数用的data文件的结构都不一样
LAMMPS手册里面有具体的说明

我现在是有一份石墨烯的xyz文件,我需要把它设置成为lammps能够识别的data文件就可以了,。不知道应该用什么办法?
5楼2015-12-08 09:10:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

青春逍遥啊

新虫 (小有名气)

引用回帖:
3楼: Originally posted by cyfjkf at 2015-12-07 21:18:57
用VMD软件

应该怎么做?有教程么?
6楼2015-12-08 09:11:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

青春逍遥啊

新虫 (小有名气)

引用回帖:
4楼: Originally posted by bluewhale at 2015-12-07 23:34:49
有机分子,还是纯金属?

就是一个石墨烯的坐标模型,都是c原子,。。。
7楼2015-12-08 09:12:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bluewhale

铁杆木虫 (正式写手)

【答案】应助回帖

为什么不自己建:

units metal
boundary        p p p
atom_style      molecular
lattice            custom 2.4595 a1 1  0  0  a2 0 1.73203 0  a3 0.0 0.0 10  basis 0 0 0  basis 0.5 0.16666666666666666 0 basis 0.5 0.5 0 basis 0 0.6666666666666666 0

region box     block 0 80 0 120 -0.5 0.5
create_box     1 box
create_atoms  1 box
region           coldest block INF INF 0 1.5 INF INF
region           hottest block INF INF 60 61.5 INF INF
mass            1    12

pair_style tersoff
pair_coeff * * SiC_1994.tersoff C
9楼2015-12-08 13:56:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

青春逍遥啊

新虫 (小有名气)

引用回帖:
9楼: Originally posted by bluewhale at 2015-12-08 13:56:58
为什么不自己建:

units metal
boundary        p p p
atom_style      molecular
lattice            custom 2.4595 a1 1  0  0  a2 0 1.73203 0  a3 0.0 0.0 10  basis 0 0 0  basis 0.5 0.166666666666666 ...

你这个in文件是lammps官网的那个例子吧?我现在就在研究这个in文件啊。我有很多疑问,如果你方便,可以加我q详谈么,287503735 很需要你的帮助,谢谢。
10楼2015-12-08 23:44:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 青春逍遥啊 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 澳大利亚 Murdoch University 全奖博士招生(3个名额)地质化工冶金领域 +40 AI8RaGaPaSCR 2026-08-07 42/2100 2026-08-14 00:15 by Nc5Ys9F5ntlw
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +11 医学老男孩 2026-08-13 29/1450 2026-08-14 00:04 by 大快人心啦
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +3 启萌科技 2026-08-12 11/550 2026-08-13 22:57 by 启萌科技
[硕博家园] 一作与独作在应聘高校教师时区别大吗 +3 mbygzh 2026-08-08 4/200 2026-08-13 19:31 by 龙-樱
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +4 majunge000 2026-08-11 6/300 2026-08-13 16:50 by 四季常青藤
[基金申请] filecode +14 documentary 2026-08-10 16/800 2026-08-13 16:39 by 润生71
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] 好奇怪的filecode +5 布布和一二 2026-08-08 6/300 2026-08-12 16:11 by 云上清扬
[论文投稿] 职称评审,求友友推荐见刊最快的期刊 +4 工厂打螺丝 2026-08-08 4/200 2026-08-12 09:18 by hansi2025
[基金申请] 综述论文作为代表作会不会影响评审专家的印象分? +11 yufeiwaner 2026-08-09 13/650 2026-08-12 08:17 by yufeiwaner
[基金申请] 是这周出结果还是下周出结果? +3 yuleib84 2026-08-11 3/150 2026-08-11 21:53 by jnhyjjm
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[硕博家园] 读博的好处 +3 lnee 2026-08-11 3/150 2026-08-11 18:10 by 希望我好好的
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 这样的filecode谁见过 +11 布布和一二 2026-08-08 22/1100 2026-08-10 11:10 by wmfsnow
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +7 a089 2026-08-07 7/350 2026-08-08 18:05 by gltch
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
[基金申请] 化学口download_prp&fileCode的固定段好像这几天一直没变,有变的大神么? +3 Tide man 2026-08-07 4/200 2026-08-07 22:39 by Tide man
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
信息提示
请填处理意见