EMMIVOX tutorial syntax

129 views
Skip to first unread message

Mandar Kulkarni

unread,
Oct 25, 2024, 10:38:22 AM10/25/24
to PLUMED users
Hi,

I am trying to reproduce the EMMIVOX tutorial (https://www.plumed-tutorials.org/lessons/22/017/data/01.html)

I compiled Gromacs 2021.5 with the PLUMED master branch. PLUMED_KERNEL and PLUMED_ROOT are set to the appropriate installation. 

However, at the step of Cryo-EM optimization, PLUMED does not recognize the "EMMIVOX" keyword. I checked PLUMED-NEST for syntax. I see LOAD FILE=Emmivox.cpp in one of the PLUMED-NEST folders.

Is there any change in Syntax? 

Thanks,
Mandar

Massimiliano Bonomi

unread,
Oct 25, 2024, 10:42:28 AM10/25/24
to plumed...@googlegroups.com
Hi,

Please have a look at this page for detailed instructions about how to compile plumed (and which version to use)


Max


Sent from my iPhone

On 25 Oct 2024, at 16:38, Mandar Kulkarni <mandar.kul...@gmail.com> wrote:

Hi,
--
You received this message because you are subscribed to the Google Groups "PLUMED users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to plumed-users...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/plumed-users/8ab01756-9d80-44e1-a252-43908a67c3f2n%40googlegroups.com.

Mandar Kulkarni

unread,
Oct 28, 2024, 1:21:51 AM10/28/24
to plumed...@googlegroups.com
Hi Max,

Thanks for your reply.

I followed the link and re-installed packages. However, I am getting errors related to the ISDB module.

PLUMED: ################################################################################
PLUMED:
PLUMED: Action "EMMIVOX" is not known.
PLUMED: An Action named "EMMIVOX" is available in module "isdb".
PLUMED: Please consider installing PLUMED with that module enabled.
PLUMED: ################################################################################
PLUMED:                                               Cycles        Total      Average      Minimum      Maximum
PLUMED:                                                    1     0.065025     0.065025     0.065025     0.065025
terminate called after throwing an instance of 'PLMD::Plumed::Exception'
  what():  
Action "EMMIVOX" is not known.
An Action named "EMMIVOX" is available in module "isdb".
#####################################################################################

Variables PKG_CONFIG_PATH, LD_LIBRARY_PATH, PLUMED_KERNEL are pointed to the correct installation.

These are my installation steps for PLUMED:

   git clone https://github.com/plumed/plumed2.git

   cd plumed2

    ./configure --prefix=/scratch/mandar-local/softwares/gmx2021_5_plumed_dev29_emmivox/plm2_master_exec  --enable-libtorch  LDFLAGS=-L/opt/openmpi/lib:/scratch/mandar-local/softwares/libtorch_12_1/libtorch/lib CPPFLAGS=-I/opt/openmpi/include:/scratch/mandar-local/softwares/libtorch_12_1/libtorch/include CXX=/opt/openmpi/bin/mpicxx --enable-modules=+isdb
 
   make -j 12; make doc; make install

My desktop has Cuda 12.3 and I am using the closest 12.1 libtorch and Pytorch. Do you think that could be a major issue?

I look forward to your suggestions.

Best Regards,
Mandar Kulkarni


Massimiliano Bonomi

unread,
Oct 28, 2024, 1:28:00 AM10/28/24
to plumed...@googlegroups.com
Can you show the PLUMED input file that generates this error?

Max
> <EMMIVox.png>COSBlab/EMMIVox
> github.com
>
>
> Max
>
>
> Sent from my iPhone
>
>> On 25 Oct 2024, at 16:38, Mandar Kulkarni <mandar.kul...@gmail.com> wrote:
>>
>> Hi,
>>
>> I am trying to reproduce the EMMIVOX tutorial (https://www.plumed-tutorials.org/lessons/22/017/data/01.html)
>>
>> I compiled Gromacs 2021.5 with the PLUMED master branch. PLUMED_KERNEL and PLUMED_ROOT are set to the appropriate installation.
>>
>> However, at the step of Cryo-EM optimization, PLUMED does not recognize the "EMMIVOX" keyword. I checked PLUMED-NEST for syntax. I see LOAD FILE=Emmivox.cpp in one of the PLUMED-NEST folders.
>>
>> Is there any change in Syntax?
>>
>> Thanks,
>> Mandar
>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups "PLUMED users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an email to plumed-users...@googlegroups.com.
>> To view this discussion visit https://groups.google.com/d/msgid/plumed-users/8ab01756-9d80-44e1-a252-43908a67c3f2n%40googlegroups.com.
>
> --
> You received this message because you are subscribed to the Google Groups "PLUMED users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to plumed-users...@googlegroups.com.
> To view this discussion visit https://groups.google.com/d/msgid/plumed-users/0B0F14DE-0BE6-4C8F-95C1-D0E85871029C%40gmail.com.
>
> --
> You received this message because you are subscribed to the Google Groups "PLUMED users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to plumed-users...@googlegroups.com.
> To view this discussion visit https://groups.google.com/d/msgid/plumed-users/CAKC_24gzL83wFiRA3Ta_0OEFpZzf9%2Bmp%2B3DkQH6AgRDrLrrf9g%40mail.gmail.com.

Mandar Kulkarni

unread,
Oct 28, 2024, 1:36:33 AM10/28/24
to plumed...@googlegroups.com
Please see attached file. It is from step 3 of Map optimization (/3-Map-Scaling/s-0.7)

Best Regards,
Mandar Kulkarni


plumed.dat

Massimiliano Bonomi

unread,
Oct 28, 2024, 1:48:09 AM10/28/24
to plumed...@googlegroups.com
This is correct.
The only explanation I can find is that during compilation the library “libtorch" was not found.
Could you please check in PLUMED Makefile.conf that you have:

-D__PLUMED_HAS_LIBTORCH=1

Max
> To view this discussion visit https://groups.google.com/d/msgid/plumed-users/CAKC_24iNYjzPN2n-QqiPwW2jVxF7-Lvchugwsx0-vsBMuSiU-A%40mail.gmail.com.
> <plumed.dat>

Mandar Kulkarni

unread,
Oct 28, 2024, 1:59:56 AM10/28/24
to plumed...@googlegroups.com
You are right, it could be a libtorch issue.

There is no entry -D__PLUMED_HAS_LIBTORCH=1 in Makefile.conf.

Also, these are parts from config.log.

configure:9774: result: no
configure:9826: WARNING: cannot enable __PLUMED_HAS_LIBTORCH
configure:9858: checking libtorch_cpu without extra libs
configure:9872: /opt/openmpi/bin/mpicxx -o conftest -O3 -fPIC -Wall -pedantic -std=c++17 -fno-gnu-unique -I/opt/openmpi/include:/scratch/mandar-local/softwares/libtorch_12_1/libtorch/include -L/opt/openmpi/lib:/scratch/mandar-local/softwares/libtorch_12_1/libtorch/lib -Wl,--no-as-needed conftest.cpp -lz -ldl -llapack -lblas  >&5
conftest.cpp:33:14: fatal error: torch/torch.h: No such file or directory
   33 |     #include <torch/torch.h>

Best Regards,
Mandar Kulkarni


Massimiliano Bonomi

unread,
Oct 28, 2024, 2:04:44 AM10/28/24
to plumed...@googlegroups.com
I see.
I usually put these lines in my .bashrc (where the first variable should be adapted to your installation path)

export LIBTORCH=/pasteur/appa/homes/mbonomi/build/libtorch
export CPATH=${LIBTORCH}/include/torch/csrc/api/include/:${LIBTORCH}/include/:${LIBTORCH}/include/torch:$CPATH
export INCLUDE=${LIBTORCH}/include/torch/csrc/api/include/:${LIBTORCH}/include/:${LIBTORCH}/include/torch:$INCLUDE
export LIBRARY_PATH=${LIBTORCH}/lib:$LIBRARY_PATH
export LD_LIBRARY_PATH=${LIBTORCH}/lib:$LD_LIBRARY_PATH

and then while configuring I do:

./configure --enable-libtorch

I hope it helps
Max
> To view this discussion visit https://groups.google.com/d/msgid/plumed-users/CAKC_24j7PdceS8o%2BwXrxLhLNk9%2BJH44vf376Q-gWVQ6E%3DbjPZQ%40mail.gmail.com.

Mandar Kulkarni

unread,
Oct 28, 2024, 3:49:47 AM10/28/24
to plumed...@googlegroups.com
Thanks for the suggestions.

This time PLUMED is linked with libtorch correctly. However, the same error still persisted.

Surprisingly, plumed driver command worked after sourcing sourceme.sh file as

source ~/softwares/gmx2021_5_plumed_dev29_emmivox/plumed2/sourceme.sh

Best Regards,
Mandar Kulkarni


Mandar Kulkarni

unread,
Oct 28, 2024, 4:56:56 AM10/28/24
to plumed...@googlegroups.com
Hi,

Current PLUMED master branch has Gromacs patches from Gromacs-2022.5 onwards.

However, I see EMMIVOX papers consistently with Gromacs-2021.5, just wanted to confirm there is no strict Gromacs version compatibility for EMMIVOX.

Best Regards,
Mandar Kulkarni

Massimiliano Bonomi

unread,
Oct 28, 2024, 4:58:10 AM10/28/24
to plumed...@googlegroups.com
There is not.
At the time of EMMIVOX development that version of GROMACS was supported.

MAx
> To view this discussion visit https://groups.google.com/d/msgid/plumed-users/CAKC_24jaAjoA2PjEuFb5tzCnsc2a6pCUtnWDyc3JVMgWoOdbwQ%40mail.gmail.com.


Giovanni Bussi

unread,
Oct 28, 2024, 5:00:45 AM10/28/24
to plumed...@googlegroups.com
Hi,

you should be able to use the patches released with plumed 2.9 together with plumed from master branch.

One way is to:
- make sure that gromacs is patched using the --runtime option
- separately build plumed 2.10 (or master branch) and set the PLUMED_KERNEL environment variable accordingly

Giovanni


Mandar Kulkarni

unread,
Oct 28, 2024, 7:04:59 AM10/28/24
to plumed...@googlegroups.com
Thanks for your replies. I am continuing with Gromacs 2023.5 as it has improved Verlet buffer estimation.

Best,
Mandar


jamesm...@gmail.com

unread,
Oct 3, 2025, 12:13:25 PM (yesterday) Oct 3
to PLUMED users
Hi everyone,

I am also having problems with the first plumed step of the EMMIVOX tutorial for optimizing the scale.

I have installed gromacs-2021.5 with plumed-2.10a checked out from github with libtorch-2.0.0 via scipion through the code at https://github.com/scipion-chem/scipion-chem-gromacs/blob/plumed/gromacs/__init__.py

It seems to be a problem with the EMMIVOX command in plumed.dat files generated. I am using a modified script at https://github.com/jamesmkrieger/EMMIVox/blob/scipion/tutorials/1-refinement/3-Map-Scaling/optimize_scale.sh that allows me to set file paths with input arguments and my generating command is the following:

bash ~/scipion/software/em/emmivox-0.1/emmivox-0.1/tutorials/1-refinement/3-Map-Scaling/optimize_scale.sh 8 log.preprocess step6.0_minimization.gro index.ndx step6_input_xtc.pdb step6.0_minimization.tpr step6.6_equilibration.xtc ~/scipion/software/em/emmivox-0.1/emmivox-0.1/tutorials/1-refinement/3-Map-Scaling/plumed_EMMI_template_BFACT.dat emd_plumed_aligned.dat

This generates plumed.dat files like the attached one and gives me errors like the following

terminate called after throwing an instance of 'PLMD::Plumed::ExceptionError'
  what():  
(core/PlumedMain.cpp:984) void PLMD::PlumedMain::readInputWords(const std::vector<std::__cxx11::basic_string<char> >&, const bool&)
ERROR
I cannot understand line: EMMIVOX LABEL=emmi TEMP=300.0 NL_STRIDE=1 NL_DIST_CUTOFF=1.0 NL_GAUSS_CUTOFF=3.0 ATOMS=system-map DATA_FILE=../emd_plumed_aligned.dat NORM_DENSITY=85508.111823 RESOLUTION=0.37 SIGMA_MIN=0.2 GPU STATUS_FILE=EMMIStatus WRITE_STRIDE=1 BFACT_NOCHAIN DBFACT=0.05 MCBFACT_STRIDE=1 BFACT_SIGMA=0.1 SCALE=0.70 CORRELATION
Maybe a missing space or a typo?
[fmg11:28441] *** Process received signal ***
[fmg11:28441] Signal: Aborted (6)
[fmg11:28441] Signal code:  (-6)
[fmg11:28441] [ 0] /lib64/libc.so.6(+0x3ebf0)[0x7fb76a23ebf0]
[fmg11:28441] [ 1] /lib64/libc.so.6(+0x8bedc)[0x7fb76a28bedc]
[fmg11:28441] [ 2] /lib64/libc.so.6(raise+0x16)[0x7fb76a23eb46]
[fmg11:28441] [ 3] /lib64/libc.so.6(abort+0xd3)[0x7fb76a228833]
[fmg11:28441] [ 4] /lib64/libstdc++.so.6(+0xa1b21)[0x7fb76a6a1b21]
[fmg11:28441] [ 5] /lib64/libstdc++.so.6(+0xad52c)[0x7fb76a6ad52c]
[fmg11:28441] [ 6] /lib64/libstdc++.so.6(+0xad597)[0x7fb76a6ad597]
[fmg11:28441] [ 7] /lib64/libstdc++.so.6(__cxa_rethrow+0x4d)[0x7fb76a6ad84d]
[fmg11:28441] [ 8] plumed[0x4059d3]
[fmg11:28441] [ 9] /lib64/libc.so.6(+0x295d0)[0x7fb76a2295d0]
[fmg11:28441] [10] /lib64/libc.so.6(__libc_start_main+0x80)[0x7fb76a229680]
[fmg11:28441] [11] plumed[0x405bf5]
[fmg11:28441] *** End of error message ***
/lmb/home/jkrieger/scipion/software/em/emmivox-0.1/emmivox-0.1/tutorials/1-refinement/3-Map-Scaling/optimize_scale.sh: line 27: 28441 Aborted                 (core dumped) plumed driver --plumed plumed.dat --mf_xtc $xtc > log.plumed

What would you suggest I do to fix it?

Many thanks
James
plumed.dat

Massimiliano Bonomi

unread,
Oct 3, 2025, 12:38:25 PM (yesterday) Oct 3
to plumed...@googlegroups.com
Hi,

It seems like the EMMIVOX action is not recognized by PLUMED.
This means one or the following:
 - you are using (maybe without realizing it) a version of PLUMED that is older and does not support EMMIVOX.
    This might happen when you have multiple PLUMED installations and you are using the wrong one. You can check the  version used in the GROMACS log file.
- Alternatively PLUMED was not correctly compiled with libtorch support. Check Makefile.conf if PLUMED_HAS_LIBTORCH=1

Max

Sent from my iPad

On 3 Oct 2025, at 18:13, jamesm...@gmail.com <jamesm...@gmail.com> wrote:


Reply all
Reply to author
Forward
0 new messages