用于Glotzer小组的格式的示例、解析器和编写器。
项目描述
garnett
关于
这是一个用于密歇根大学安娜堡分校Glotzer小组使用的格式的示例、解析器和编写器的集合。
维护者
- Luis Y. Rivera-Rivera, lyrivera@umich.edu
- Kelly Wang, kelwang@umich.edu
- 卡尔·西蒙·阿多夫,csadorf@umich.edu
- 布拉德利·迪斯,bdice@umich.edu
设置
要使用pip安装此软件包,请执行以下命令
pip install garnett --user
文档
该软件包的文档可在以下位置找到: https://garnett.readthedocs.io/
要使用sphinx自行构建文档,请在仓库内执行以下命令
cd doc
make html
open _build/html/index.html
快速入门
读取和写入
import garnett
# Autodetects file format for a uniform trajectory API
with garnett.read('gsdfile.gsd') as traj:
for frame in traj:
pos = frame.position
# Simple conversion of trajectory formats
with garnett.read('posfile.pos') as traj:
garnett.write(traj, 'gsdfile.gsd')
数据访问
通过索引访问单个帧或使用切片创建轨迹的子集
first_frame = traj[0]
last_frame = traj[-1]
nth_frame = traj[n]
# and so on
sub_trajectory = traj[i:j]
访问轨迹属性
traj.load_arrays()
traj.box # M
traj.N # M
traj.types # MxT
traj.type_shapes # MxT
traj.typeid # MxN
traj.position # MxNx3
traj.orientation # MxNx4
traj.velocity # MxNx3
traj.mass # MxN
traj.charge # MxN
traj.diameter # MxN
traj.moment_inertia # MxNx3
traj.angmom # MxNx4
traj.image # MxNx3
# M is the number of frames
# T is the number of particle types in a frame
# N is the number of particles in a frame
访问单个帧属性
frame = traj[i]
frame.box # garnett.trajectory.Box object
frame.N # scalar, number of particles
frame.types # T, string names for each type
frame.type_shapes # T, list of shapes for each type
frame.typeid # N, type indices of each particle
frame.position # Nx3
frame.orientation # Nx4
frame.velocity # Nx3
frame.mass # N
frame.charge # N
frame.diameter # N
frame.moment_inertia # Nx3
frame.angmom # Nx4
frame.image # Nx3
frame.data # Dictionary of lists for each attribute
frame.data_key # List of strings
所有矩阵都是NumPy数组。
与HOOMD-blue的示例使用
有关更多示例,请参阅示例目录
pos_reader = PosFileReader()
with open('cube.pos') as posfile:
traj = pos_reader.read(posfile)
# Initialize from last frame
snapshot = traj[-1].to_hoomd_snapshot()
system = init.read_snapshot(snapshot)
# Restore last frame
snapshot = system.take_snapshot()
traj[-1].to_hoomd_snapshot(snapshot)
测试
要运行所有garnett测试,ddt
、HOOMD-blue (hoomd
) 和 pycifrw
必须安装在测试环境中。
使用以下命令执行测试
python -m unittest discover tests
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装软件包的更多信息。
源分发
garnett-0.7.1.tar.gz (126.3 kB 查看哈希值)
构建分发
garnett-0.7.1-py3-none-any.whl (76.2 kB 查看哈希值)
关闭
garnett-0.7.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1734a1ef477a2bae0422a6dbe9d76bd3c208d851825fe067d6a80f1339dea698 |
|
MD5 | 624a374a92c2a1e7279f552d268e22bf |
|
BLAKE2b-256 | e4d902e249c34f4575954a3a37ca13897c7b9fb076bbee618b73a50cfc93b37a |
关闭
garnett-0.7.1-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 25444120fe6aa9effde9fb3133b0269494f0f79789175fa9f67e0ea5d3f5ce95 |
|
MD5 | 32e97fe8a399ce482042aa226cb6fe30 |
|
BLAKE2b-256 | b1dbdbe598c79ca7f52b0698a17e871ca01c3aa873553f77ee867b734b03b1c7 |