diff --git a/doc/src/fix_polarize.rst b/doc/src/fix_polarize.rst index 6a997aa7ea..1101fb65ae 100644 --- a/doc/src/fix_polarize.rst +++ b/doc/src/fix_polarize.rst @@ -31,7 +31,7 @@ Examples fix 2 interface polarize/bem/gmres 5 0.0001 fix 1 interface polarize/bem/icc 1 0.0001 - fix 3 interface polarize/functional 1 0.001 + fix 3 interface polarize/functional 1 0.0001 Used in input scripts: @@ -69,8 +69,9 @@ along the normal vector is then 78 - 4 = 74, the mean dielectric value is (78 + 4) / 2 = 41. Each boundary element also has its area and the local mean curvature, which is used by these fixes for computing a correction term in the local electric field. To model charged -interfaces, the interface particle will have a non-zero charge value, -coming from its area and surface charge density. +interfaces, an interface particle will have a non-zero charge value, +coming from its area and surface charge density, and its local dielectric +constant set to the mean dielectric value. For non-interface particles such as atoms and charged particles, the interface normal vectors, element area, and dielectric mismatch are @@ -223,7 +224,7 @@ Related commands Default """"""" -*iter_max* = 20 +*iter_max* = 50 *kspace* = yes diff --git a/examples/PACKAGES/dielectric/in.confined b/examples/PACKAGES/dielectric/in.confined index 0f9dab7bba..314409fc17 100644 --- a/examples/PACKAGES/dielectric/in.confined +++ b/examples/PACKAGES/dielectric/in.confined @@ -67,10 +67,10 @@ if "${method} == gmres" then & "fix 3 interface polarize/bem/gmres 1 1.0e-4" & "fix_modify 3 itr_max 50 dielectrics ${ed} ${em} ${epsilon} ${area} NULL" & elif "${method} == icc"& - "fix 3 interface polarize/bem/icc 1 1.0e-4 itr_max 50" & + "fix 3 interface polarize/bem/icc 1 1.0e-4" & "fix_modify 3 itr_max 50 dielectrics ${ed} ${em} ${epsilon} ${area} NULL" & elif "${method} == dof" & - "fix 3 interface polarize/functional 1 0.001" & + "fix 3 interface polarize/functional 1 0.0001" & "fix_modify 3 dielectrics ${ed} ${em} ${epsilon} ${area} NULL" & else & "print 'Unsupported polarization solver' " diff --git a/src/DIELECTRIC/fix_polarize_bem_gmres.cpp b/src/DIELECTRIC/fix_polarize_bem_gmres.cpp index 14a645bb30..dafe4dc8e0 100644 --- a/src/DIELECTRIC/fix_polarize_bem_gmres.cpp +++ b/src/DIELECTRIC/fix_polarize_bem_gmres.cpp @@ -81,7 +81,7 @@ FixPolarizeBEMGMRES::FixPolarizeBEMGMRES(LAMMPS *_lmp, int narg, char **arg) : double tol = utils::numeric(FLERR, arg[4], false, lmp); tol_abs = tol_rel = tol; - itr_max = 20; + itr_max = 50; mr = 0; randomized = 0; ave_charge = 0; diff --git a/src/DIELECTRIC/fix_polarize_bem_icc.cpp b/src/DIELECTRIC/fix_polarize_bem_icc.cpp index 177332546a..034ada48ab 100644 --- a/src/DIELECTRIC/fix_polarize_bem_icc.cpp +++ b/src/DIELECTRIC/fix_polarize_bem_icc.cpp @@ -67,7 +67,7 @@ FixPolarizeBEMICC::FixPolarizeBEMICC(LAMMPS *_lmp, int narg, char **arg) : Fix(_ double tol = utils::numeric(FLERR, arg[4], false, lmp); tol_abs = tol_rel = tol; - itr_max = 20; + itr_max = 50; omega = 0.7; randomized = 0; ave_charge = 0;