View Javadoc
1   // ******************************************************************************
2   //
3   // Title:       Force Field X.
4   // Description: Force Field X - Software for Molecular Biophysics.
5   // Copyright:   Copyright (c) Michael J. Schnieders 2001-2024.
6   //
7   // This file is part of Force Field X.
8   //
9   // Force Field X is free software; you can redistribute it and/or modify it
10  // under the terms of the GNU General Public License version 3 as published by
11  // the Free Software Foundation.
12  //
13  // Force Field X is distributed in the hope that it will be useful, but WITHOUT
14  // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15  // FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
16  // details.
17  //
18  // You should have received a copy of the GNU General Public License along with
19  // Force Field X; if not, write to the Free Software Foundation, Inc., 59 Temple
20  // Place, Suite 330, Boston, MA 02111-1307 USA
21  //
22  // Linking this library statically or dynamically with other modules is making a
23  // combined work based on this library. Thus, the terms and conditions of the
24  // GNU General Public License cover the whole combination.
25  //
26  // As a special exception, the copyright holders of this library give you
27  // permission to link this library with independent modules to produce an
28  // executable, regardless of the license terms of these independent modules, and
29  // to copy and distribute the resulting executable under terms of your choice,
30  // provided that you also meet, for each linked independent module, the terms
31  // and conditions of the license of that module. An independent module is a
32  // module which is not derived from or based on this library. If you modify this
33  // library, you may extend this exception to your version of the library, but
34  // you are not obligated to do so. If you do not wish to do so, delete this
35  // exception statement from your version.
36  //
37  // ******************************************************************************
38  package ffx.potential.nonbonded.pme;
39  
40  import static ffx.utilities.PropertyGroup.ElectrostaticsFunctionalForm;
41  
42  import ffx.utilities.FFXProperty;
43  
44  @FFXProperty(name = "polarization", clazz = String.class,
45      propertyGroup = ElectrostaticsFunctionalForm, defaultValue = "mutual", description = """
46      [DIRECT / MUTUAL / NONE]
47      Selects between the use of direct and mutual dipole polarization for force fields
48      that incorporate the polarization term. The direct modifier avoids an iterative calculation by using only the
49      permanent electric field in computation of induced dipoles. The mutual option, which is the default in the
50      absence of the polarization property, iterates the induced dipoles to self-consistency.
51      The none option turns off polarization and takes precedence over the polarizeterm property.
52      """)
53  public enum Polarization {
54    MUTUAL,
55    DIRECT,
56    NONE
57  }