MDPOW icon indicating copy to clipboard operation
MDPOW copied to clipboard

"No such group" during solvation step with octanol and charged solute

Open rsexton2 opened this issue 4 years ago • 2 comments

I'm trying to run

mdpow-equilibrium --solvent octanol glyh101.yml I did the same with --solvent water and had no issues.

I copied the runinput.yml from the templates and made a few changes (copied here as .txt). glyh101.txt

Here are the structure (step4.1_equilibration.gro) and topology (Glyh101.ipt) input files (copied here as .txt). Glyh101.txt step4.1_equilibration.txt

I got the following error

GROMACS:      gmx genion, version 2021.1
Executable:   /nfs/homes/rsexton/Library/miniconda3/envs/glyh101/bin/gmx
Data prefix:  /nfs/homes/rsexton/Library/miniconda3/envs/glyh101
Working dir:  /nfs/homes/rsexton/Projects/CFTR/glyh101/mdpow/glyh101/Equilibrium/octanol/solvation
Command line:
  gmx genion -nn 0 -o ionized.gro -p /nfs/homes/rsexton/Projects/CFTR/glyh101/mdpow/glyh101/Equilibrium/octanol/top/system.top -s topol.tpr -pname NA -np 1 -nname CL

Reading file topol.tpr, VERSION 2021.1 (single precision)
Reading file topol.tpr, VERSION 2021.1 (single precision)
Will try to add 1 NA ions and 0 CL ions.
Select a continuous group of solvent molecules
Group     0 (         System) has  7468 elements
Group     1 (          Other) has  7468 elements
Group     2 (            GYH) has    43 elements
Group     3 (           OcOH) has  7425 elements
Select a group: Error: No such group 'SOL'
Select a group: 
-------------------------------------------------------
Program:     gmx genion, version 2021.1
Source file: src/gromacs/topology/index.cpp (line 902)

Fatal error:
Cannot read from input

For more information and tips for troubleshooting, please check the GROMACS
website at http://www.gromacs.org/Documentation/Errors
-------------------------------------------------------
Traceback (most recent call last):
  File "/nfs/homes/rsexton/Library/miniconda3/envs/mdpow/bin/mdpow-equilibrium", line 62, in <module>
    S = equilibrium_simulation(cfg, opts.solvent, dirname=opts.dirname)
  File "/nfs/homes/rsexton/Library/miniconda3/envs/mdpow/lib/python2.7/site-packages/mdpow/run.py", line 227, in equilibrium_simulation
    maxwarn=maxwarn)
  File "/nfs/homes/rsexton/Library/miniconda3/envs/mdpow/lib/python2.7/site-packages/mdpow/equil.py", line 394, in solvate
    params = self._setup_solvate(**kwargs)
  File "/nfs/homes/rsexton/Library/miniconda3/envs/mdpow/lib/python2.7/site-packages/mdpow/equil.py", line 348, in _setup_solvate
    return gromacs.setup.solvate(**kwargs)
  File "/nfs/homes/rsexton/Library/miniconda3/envs/mdpow/lib/python2.7/site-packages/gromacs/setup.py", line 626, in solvate
    **kwargs)
  File "/nfs/homes/rsexton/Library/miniconda3/envs/mdpow/lib/python2.7/site-packages/gromacs/setup.py", line 492, in solvate_ion
    input=solvent_name)
  File "/nfs/homes/rsexton/Library/miniconda3/envs/mdpow/lib/python2.7/site-packages/gromacs/core.py", line 398, in __call__
    return self.run(*args, **kwargs)
  File "/nfs/homes/rsexton/Library/miniconda3/envs/mdpow/lib/python2.7/site-packages/gromacs/core.py", line 178, in run
    results, p = self._run_command(*_args, **_kwargs)
  File "/nfs/homes/rsexton/Library/miniconda3/envs/mdpow/lib/python2.7/site-packages/gromacs/core.py", line 611, in _run_command
    self.check_failure(result, command_string=p.command_string)
  File "/nfs/homes/rsexton/Library/miniconda3/envs/mdpow/lib/python2.7/site-packages/gromacs/core.py", line 566, in check_failure
    raise GromacsError(rc, msg)
gromacs.exceptions.GromacsError: [Errno 1] Gromacs tool failed
Command invocation: printf "SOL\n" | gmx genion -nn 0 -o ionized.gro -p /nfs/homes/rsexton/Projects/CFTR/glyh101/mdpow/glyh101/Equilibrium/octanol/top/system.top -s topol.tpr -pname NA -np 1 -nname CL

rsexton2 avatar Jun 29 '21 23:06 rsexton2

@rsexton2

Please check with @VOD555 for allowed values, but I don't think that solvent_name should be "OcOH", I would say rather "octanol", or better nothing, in this latter case it will take the default value from the option "--solvent octanol".

Also your molecule seems to be charged, but for solvation free energies and partition coefficients calculations we use only neutral form of the compounds.

iorga avatar Jun 29 '21 23:06 iorga

@iorga The solvent_name is the molecule type defined in the itp file. Althought it's SOL in [ moleculetype ] but gromacs still uses the atomtype in [ atom ] which is OcOH. I checked the itp files for water, they are all defined as SOL.

For octanol, the molecule type should be changed to SOL as well.

I will do this after finishing the PR #150

VOD555 avatar Jun 30 '21 02:06 VOD555