I am attempting to optimize md frames with LAMMPS and am having difficulty loading the previously dumped .dcd files:
I am getting Exception: ERROR on proc 0: No suitable molfile plugin found (src/MOLFILE/reader_molfile.cpp:85) when trying to load a .dcd trajectory “read_dump {traj_file} {frame_idx} x y z box yes format molfile dcd”
I copy-pasted the two plugin files from VMD-2.0.0 (molfile_plugin.h & vmdplugin.h) to
/opt/lammps/lib/molfile/
These are not plugin files, but the header files that define the binary interface for the specific VMD molfile plugin distribution that you are using.
You also need the actual plugin, in this case /path/to/vmd/plugins/LINUXAMD64/molfile/dcdplugin.so
Best you copy it to the working directory with the DCD file(s).
With that you should see something like:
Dump reader uses molfile plugin: CHARMM,NAMD,XPLOR DCD Trajectory v1.18 by Axel Kohlmeyer, Justin Gullingsrud, John Stone
Scanning dump file ...
dcdplugin) detected standard 32-bit DCD file of native endianness
dcdplugin) CHARMM format DCD file (also NAMD 2.1 and later)
Reading snapshot from dump file ...
orthogonal box = (-36.150002 -36.150002 -36.150002) to (36.150002 36.150002 36.150002)
32000 atoms before read
32000 atoms in snapshot
0 atoms purged
32000 atoms replaced
0 atoms trimmed
0 atoms added
32000 atoms after read
At least that is what I just saw with a custom test (your posted folder has no sharing access, so I could not download it).
Thank you! Copy-pasting the plugin to the working directory seems to have do the trick.
Does there exist a more elegant solution? Something akin to compiling LAMMPS with this plugin?
I have many MD runs to minimize and even programmatically copy-pasting the .so plugin for each run feels a little wrong.
The very nature of a plugin is that you do not link to it but load it at runtime. Plugin files have been specifically linked so they can be loaded at runtime.