计算化学公社

 找回密码 Forget password
 注册 Register
Views: 11949|回复 Reply: 8
打印 Print 上一主题 Last thread 下一主题 Next thread

[Material Studio] 如何将Material_Studio的xtd文件中原子的受力信息导出

[复制链接 Copy URL]

2

帖子

0

威望

67

eV
积分
69

Level 2 能力者

跳转到指定楼层 Go to specific reply
楼主
请教下各位老师同学

      如何将Material Studio的xtd文件中原子的受力信息导出?(PS:分子动力学模拟过程中已勾选了 WriteForces => "Yes")。参考Sob老师的的博文 http://sobereva.com/143 可以将xtd的轨迹文件信息输出来,请问下如何修改perl脚本得到每个原子的受力信息呢?

查看MS手册,有几行命令告知可以输出力信息

my $force = $atom->Force;my $force = $atom->Force; if  ( $force ) {    # force is defined on this atom    print $force->X, " ", $force->Y, " ", $force->Z,"\n";}
但是依旧没有解决,期待大家的帮助,非常感谢!
祝好


124

帖子

0

威望

2775

eV
积分
2899

Level 5 (御坂)

2#
发表于 Post on 2018-9-19 00:49:03 | 只看该作者 Only view this author
本帖最后由 hxd_yi 于 2018-9-19 01:28 编辑

http://sobereva.com/143中的脚本中$xmolFile->Append(sprintf "%s %f  %f  %f \n",$atom->ElementSymbol, $atom->X, $atom->Y,$atom->Z); 这一行改为
$xmolFile->Append(sprintf "%s %f  %f  %f \n",$atom->ElementSymbol, $atom->Force->X, $atom->Force->Y,$atom->Force->Z) if ($atom->Force);

具体代码如下:
#!perl

use strict;
use warnings;
use Getopt::Long;
use MaterialsScript qw(:all);

my $inf = "C6H12.xtd";
my $outf = "d:/C6H12.xyz";
my $doc = $Documents{$inf} or die "Can't open $inf";
open(my $fout, ">", $outf) or die "Can't write $outf";

for my $i ($doc->Trajectory->StartFrame .. $doc->Trajectory->EndFrame){
        $doc->Trajectory->CurrentFrame = $i;
        printf $fout "%d\n", scalar(@{$doc->Atoms});
        print $fout "Frame: $i\n";
        printf $fout "%-2s %15.6lf %15.6lf %15.6lf\n", $_->ElementSymbol, $_->Force->X, $_->Force->Y, $_->Force->Z for (grep $_->Force, @{$doc->Atoms});
}
close($fout);
$doc->Close;


在ms中用Windows端提交,那么需要用sobereva脚本中Append,自己在linux中用RunMatScript.sh计算的话,可以不用Append。记得把$inf和$outf改一下。

评分 Rate

参与人数
Participants 2
eV +8 收起 理由
Reason
rdcfm1223 + 4 谢谢分享
zqliu + 4 正解

查看全部评分 View all ratings

2

帖子

0

威望

67

eV
积分
69

Level 2 能力者

3#
 楼主 Author| 发表于 Post on 2018-9-19 02:24:51 | 只看该作者 Only view this author
hxd_yi, 根据您的建议, 问题已解决,非常感谢!

     另外请教下,在MS中,我想使用受限动力学求解某个原子的 PMF (potential of Mean Force), 因此选取了一定的路径,并将原子固定在该路径上,希望通过MD模拟,输出力信息,及积分得到PMF。
    然而我发现固定的原子的受力在同一个点不随时间变化,这是为什么? 该力不是应该随时间变化的吗?MD需要跑较长时间直到该力收敛,才可以求解PMF。请问下这该如何理解?

2

帖子

0

威望

15

eV
积分
17

Level 1 能力者

4#
发表于 Post on 2019-11-20 10:03:13 | 只看该作者 Only view this author
您好,我想请教一下利用MS做PMF曲线的问题解决了吗

124

帖子

0

威望

2775

eV
积分
2899

Level 5 (御坂)

5#
发表于 Post on 2020-5-25 23:30:39 | 只看该作者 Only view this author
YANGYONGLI 发表于 2019-11-20 10:03
您好,我想请教一下利用MS做PMF曲线的问题解决了吗

这里有MS的论坛https://www.3ds.com/products-services/biovia/communities/,可以注册查看。

PMF代码的我搬运了一下。
https://r1132100503382-eu1-3dswy ... 6L8-NQEum6GwzU512ew
PotentialOfMeanForce.zip (376.42 KB, 下载次数 Times of downloads: 37)




5

帖子

0

威望

29

eV
积分
34

Level 2 能力者

6#
发表于 Post on 2025-7-10 01:07:20 | 只看该作者 Only view this author
hxd_yi 发表于 2018-9-19 00:49
把http://sobereva.com/143中的脚本中$xmolFile->Append(sprintf "%s %f  %f  %f \n",$atom->ElementSymbol ...

你好,为什么我用您所说的代码,输出的结果中,每一帧下面只有一个数,而且每一帧都是一样的数值,我有点不同是什么意思,可以帮我解读一下吗

124

帖子

0

威望

2775

eV
积分
2899

Level 5 (御坂)

7#
发表于 Post on 2025-7-11 14:22:05 | 只看该作者 Only view this author
葡萄成熟时 发表于 2025-7-10 01:07
你好,为什么我用您所说的代码,输出的结果中,每一帧下面只有一个数,而且每一帧都是一样的数值,我有点 ...

printf $fout "%-2s %15.6lf %15.6lf %15.6lf\n", $_->ElementSymbol, $_->Force->X, $_->Force->Y, $_->Force->Z for (grep $_->Force, @{$doc->Atoms})
选取力这一项不为空的原子,输出它们的元素符号和所受到的力
你这里大概率不是MS算的轨迹,是另外导入的,所以力这一项是缺失的。
每帧下面的数字是xyz格式需要的原子数。

5

帖子

0

威望

29

eV
积分
34

Level 2 能力者

8#
发表于 Post on 2025-7-30 23:01:13 | 只看该作者 Only view this author
hxd_yi 发表于 2025-7-11 14:22
printf $fout "%-2s %15.6lf %15.6lf %15.6lf\n", $_->ElementSymbol, $_->Force->X, $_->Force->Y, $_-> ...

我是通过其他脚本求出来的XTD文件,这样会导致数据缺失吗

124

帖子

0

威望

2775

eV
积分
2899

Level 5 (御坂)

9#
发表于 Post on 2025-7-31 10:25:22 | 只看该作者 Only view this author
葡萄成熟时 发表于 2025-7-30 23:01
我是通过其他脚本求出来的XTD文件,这样会导致数据缺失吗

如果你导入到xtd的时候没有导入受力信息,自然从xtd中导出力信息的时候为空白

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2025-8-14 01:05 , Processed in 0.254821 second(s), 30 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list