Two walls set up

Dear Gmx users,

Currently, I am working on membrane protein systems using CHARMM36 force field.
I would like to use PBC for the x and y-axis and use the external electric field along the z-axis.
I would like to restrict the PBC movement of ions along the z-axis.

Can I use two walls in the CHARMM36 force field?
Is there any possibility to use a vacuum slab?

Best regards,


I appreciate any comments.

Walls will introduce artifacts to the behaviour of all molecules/atoms. So that might not be what you really want to do.

What exactly are you hoping to do to the ions? Keep them in an x-y plane? Individually, or all of them as a group? Keep them restrained into a thin x-y slab? Keep them around a particular point?

Dear Dr. DBW,

Thank you very much for your reply.

I would like to perform MD simulation of pore structure in a membrane with the external electric field.

  1. I would like to check the ion transfer through the pore.
  2. The structural changes and dynamics of the peptide pore during the simulations.

I actually tried short NVT simulations with the vacuum slabs top and bottom of the box around 1/3 of size along the z-axis. The system was equilibrated for 100 ns under 3D PBC condition.

the mdp options were inserted as follows:
pbc = xy
nwall = 2
wall-type = 10-4
wall-density = 50 50
wall-atomtype = CA CA
wall-r-linpot = 3
ewald-geometry = 3dc
wall-ewald-zfac = 3

electric-field-z = 0.01 0 0 0

However, the simulations were stopped.
Do you have any comment, please?

Nothing other than “However, the simulations were stopped.” provides no information for people to be able to provide help. What command did you use? What was the output? Copy and paste the information, don’t type it out/filter it through your brain.

Dear Dr. DBW,

I am sorry for this inconsistency.

  1. The command is:
    gmx mdrun -v -deffnm nvt -field

for some options in mdp file

continuation = no
constraint_algorithm = lincs
constraints = all-bonds
lincs_iter = 1
lincs_order = 4
; Neighborsearching
cutoff-scheme = Verlet
ns_type = grid
nstlist = 10
rlist = 1.2
rcoulomb = 1.2
rvdw = 1.2
; Electrostatics
coulombtype = PME
pme_order = 4
fourierspacing = 0.16
; Temperature coupling is on
tcoupl = V-rescale
tc-grps = Protein_DOPC Water_and_ions
tau_t = 0.1 0.1
ref_t = 300 300
; Pressure coupling is off
pcoupl = no ; no pressure coupling in NVT

; Dispersion correction
DispCorr = EnerPres
; Velocity generation
gen_vel = yes
gen_temp = 300
gen_seed = -1

;nstcomm = 10
;nstcalcenergy = 10
;comm-mode = no ;Linear
;comm-grps = Protein_DOPC Water_and_ions

pbc = xy ; pbc in xy only
nwall = 2 ; wall at z=0 and z=z-box
wall-type = 10-4 ; direct 12-6 LJ as fn of distance from wall
wall-density = 50 50
wall-atomtype = CA CA
wall-r-linpot = 3
ewald-geometry = 3dc ; Only Ewald sum compatible with slab geometry, requires box_height >= slab_height * 3
wall-ewald-zfac = 3 ; Extra empty space for slab geometry calculation (reducing coulomb interaction)

electric-field-z = 0.01 0 0 0

The simulation was stopped at around 200 ps.
The output error is as follows:

Program: gmx mdrun, version 2018.7
Source file: src/gromacs/mdlib/nbnxn_grid.cpp (line 402)

Software inconsistency error:
Lost particles while sorting

For more information and tips for troubleshooting, please check the GROMACS
website at

Thank you very much for your time.

Best regards,

Hi, I encountered the exact same issue. The solution for me was to use gmx editconf -box to make the box bigger in the z-direction such that there are some vacuum space above and below the system. This will make sure that there are no atom within the artificial wall. Try it, and hopefully it will work for you too.