24小时热门版块排行榜    

查看: 5470  |  回复: 12

gtssongchi

木虫 (小有名气)

[求助] ovito中打开python脚本错误 已有3人参与

大家好,用ovito计算voronoi多面体时,按照手册采用的python脚本计算。手册上脚本如下
# Import OVITO modules.
from ovito.io import *
from ovito.modifiers import *

# Import NumPy module.
import numpy

# Load a simulation snapshot of a Cu-Zr metallic glass.
node = import_file("../data/CuZr_metallic_glass.dump.gz"

# Set atomic radii (required for polydisperse Voronoi tessellation).
atypes = node.source.particle_properties.particle_type.type_list
atypes[0].radius = 1.35        # Cu atomic radius (atom type 1 in input file)
atypes[1].radius = 1.55        # Zr atomic radius (atom type 2 in input file)

# Set up the Voronoi analysis modifier.
voro = VoronoiAnalysisModifier(
    compute_indices = True,
    use_radii = True,
    edge_count = 6, # Length after which Voronoi index vectors are truncated
    edge_threshold = 0.1
)
node.modifiers.append(voro)
                     
# Let OVITO compute the results.
node.compute()

# Make sure we did not lose information due to truncated Voronoi index vectors.
if voro.max_face_order > voro.edge_count:
    print("Warning: Maximum face order in Voronoi tessellation is {0}, "
          "but computed Voronoi indices are truncated after {1} entries. "
          "You should consider increasing the 'edge_count' parameter to {0}."
          .format(voro.max_face_order, voro.edge_count))
    # Note that it would be possible to automatically increase the 'edge_count'
    # parameter to 'max_face_order' here and recompute the Voronoi tessellation:
    #   voro.edge_count = voro.max_face_order
    #   node.compute()

# Access computed Voronoi indices as NumPy array.
# This is an (N)x(edge_count) array.
voro_indices = node.output.particle_properties['Voronoi Index'].array

# This helper function takes a two-dimensional array and computes a frequency
# histogram of the data rows using some NumPy magic.
# It returns two arrays (of equal length):
#    1. The list of unique data rows from the input array
#    2. The number of occurences of each unique row
# Both arrays are sorted in descending order such that the most frequent rows
# are listed first.
def row_histogram(a):
    ca = numpy.ascontiguousarray(a).view([('', a.dtype)] * a.shape[1])
    unique, indices, inverse = numpy.unique(ca, return_index=True, return_inverse=True)
    counts = numpy.bincount(inverse)
    sort_indices = numpy.argsort(counts)[::-1]
    return (a[indices[sort_indices]], counts[sort_indices])

# Compute frequency histogram.
unique_indices, counts = row_histogram(voro_indices)

# Print the ten most frequent histogram entries.
for i in range(10):
    print("%s\t%i\t(%.1f %%)" % (tuple(unique_indices),
                                 counts,
                                 100.0*float(counts)/len(voro_indices)))

我只是将其中的文件路径改变了。在运行时却提示如下错误:
Traceback (most recent call last):
  File "/home/csong/ovito.py", line 2, in <module>
    from ovito.io import *
ImportError: No module named 'ovito.io'; 'ovito' is not a package
ERROR: Failed to initialize Python interpreter.

请问这是什么原因呢?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

969354217

新虫 (初入文坛)

引用回帖:
5楼: Originally posted by cuso4852cuoh at 2019-04-17 19:57:33
请问楼主怎么弄的,我也在搞这个,一直出错
Traceback (most recent call last):
  File &quot;F:\py\vo.py&quot;, line 62, in &lt;module&gt;
    print(&quot;%s\t%i\t(%.1f %%)&quo ...

你找到解决方法了吗?
6楼2019-05-10 10:13:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

abinitio

版主 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
ovito 是那个版本?我感觉3.0.0 -dev的pythonscript好象有问题
2楼2017-11-15 15:58:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gtssongchi

木虫 (小有名气)

引用回帖:
2楼: Originally posted by abinitio at 2017-11-15 15:58:03
ovito 是那个版本?我感觉3.0.0 -dev的pythonscript好象有问题

老师您好,ovito是2.9.0的版本
3楼2017-11-15 19:16:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

伊有涯

新虫 (小有名气)

【答案】应助回帖

ovito怎么用python进行计算啊?怎么弄的啊?
喜欢天空,百看不厌。当然不看也可以。
4楼2018-07-05 19:37:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cuso4852cuoh

新虫 (小有名气)

【答案】应助回帖

请问楼主怎么弄的,我也在搞这个,一直出错
Traceback (most recent call last):
  File "F:\py\vo.py", line 62, in <module>
    print("%s\t%i\t(%.1f %%)" % (tuple(unique_indices),
IndexError: index 1 is out of bounds for axis 0 with size 1
,我弄到ovito里,一直报这个错
5楼2019-04-17 19:57:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

刘子不晕车

禁虫 (初入文坛)

本帖内容被屏蔽

7楼2019-12-30 00:23:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pl947

禁虫 (小有名气)

本帖内容被屏蔽

8楼2019-12-31 11:15:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pl996

禁虫 (小有名气)

本帖内容被屏蔽

9楼2020-01-02 14:17:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pl927

禁虫 (小有名气)

本帖内容被屏蔽

10楼2020-01-03 15:54:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 gtssongchi 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 2026国自然放榜时间 +3 布布和一二 2026-08-08 3/150 2026-08-08 18:15 by Lightingo
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 qTvzQBRAHjCi 2026-08-07 4/200 2026-08-08 17:27 by oEVWOejN9taj
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 qTvzQBRAHjCi 2026-08-07 4/200 2026-08-08 17:22 by oEVWOejN9taj
[考研] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 qTvzQBRAHjCi 2026-08-07 5/250 2026-08-08 16:47 by oEVWOejN9taj
[基金申请] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 Vi50GxzrFcSG 2026-08-07 5/250 2026-08-08 16:27 by oEVWOejN9taj
[基金申请] 这样的filecode谁见过 +5 布布和一二 2026-08-08 8/400 2026-08-08 14:54 by archvillain
[硕博家园] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 HEQlVqMTIA7d 2026-08-07 6/300 2026-08-08 14:47 by oEVWOejN9taj
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 HEQlVqMTIA7d 2026-08-07 5/250 2026-08-08 14:22 by oEVWOejN9taj
[基金申请] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 KXLV3nuBVBY7 2026-08-07 5/250 2026-08-08 14:07 by oEVWOejN9taj
[论文投稿] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 KXLV3nuBVBY7 2026-08-07 6/300 2026-08-08 14:01 by oEVWOejN9taj
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 Vi50GxzrFcSG 2026-08-07 6/300 2026-08-08 10:19 by 3OOjAIS77qg2
[基金申请] 听说今天filecode变了 +24 布布和一二 2026-08-06 47/2350 2026-08-07 16:02 by zhiyanjiang
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 7/350 2026-08-07 13:11 by 医学老男孩
[基金申请] filecode +14 等待解的谜 2026-08-06 19/950 2026-08-07 12:20 by wlwhappy
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 好消息?这个有何含义??? +8 Tide man 2026-08-05 10/500 2026-08-05 16:14 by xmuxiaoyu
[基金申请] 有没有H口的?有收到消息的吗? +3 超级海虾 2026-08-04 3/150 2026-08-04 17:26 by 学教育滴
[基金申请] 面上提前没消息,有中的吗 +14 archvillain 2026-08-02 18/900 2026-08-04 14:42 by archvillain
[基金申请] 什么时候能放榜呀? +3 Jacob678 2026-08-03 3/150 2026-08-03 16:14 by gltch
信息提示
请填处理意见