dseams#
Lua and Fennel library for the d-SEAMS C++ engine.
Load a dump with require("dseams").
CHILL+ labels and HC / DDC cage flags.
Host dseams_core.so from Lua, Fennel, or C.
About#
This repository is a library. There is no yodaStruct executable.
Call require("dseams") from Lua, or (require :dseams) from Fennel.
The engine CLI is seams in
seams-core.
Python is pydseams.
local dseams = require("dseams")
local cloud = dseams.read("water.lammpstrj")
print(dseams.chill_plus(cloud, {cutoff = 3.5}))
dseams.core is the compiled registrations (dseams_core.so).
Helpers stay in Lua. require("yoda") still resolves to dseams.
Suite stack#
How the Lua library, the compiled module, and the rest of d-SEAMS relate:
flowchart TB
subgraph hosts["Hosts"]
LUA[lua]
FNL[Fennel]
EMB["C / C++ embed"]
end
subgraph lib["this repository"]
HELPERS["lua/dseams.lua"]
CORE["dseams_core.so"]
end
subgraph engine["seams-core"]
YDS[libyodaLib]
SEAMS[seams CLI]
end
subgraph py["PydSEAMSlib"]
PY[pydseams]
end
LUA --> HELPERS
FNL --> HELPERS
EMB --> CORE
HELPERS --> CORE
LC[linkcell]
LC --> YDS
CORE --> YDS
SEAMS --> YDS
PY --> YDS
Tip
require("dseams") loads the helpers. Those helpers call
require("dseams_core"). Set LUA_PATH to the Lua files and
LUA_CPATH to the directory that holds dseams_core.so.
Documentation structure#
This documentation follows the Diataxis framework.
Getting Started
Tutorials
How-to
Reference
The compiled-registration appendix is Compiled registrations,
generated from Doxygen of lua_api.hpp.
License#
MIT. Cite the 2020 JCIM paper
and the CITATION.cff in this tree. See How to cite.