Skip to content

Discrepancy in E_norm Calculation Between GISTTOOLS and GIST Tutorial #83

@gkxiao

Description

@gkxiao

Description:

I’ve noticed a significant difference in how the normalized total energy E_norm is computed between GISTTOOLS and the official GIST Tutorial.

  1. In GISTTOOLS (gist.py line 1071):
  • The _recipe_A_norm method defines:
    def _recipe_A_norm(self, index):
        """Create A_norm."""
        return (
            self.loc[index, "Eww_norm"]
            + self.loc[index, "Esw_norm"]
            - self.loc[index, 'dTSsix_norm']
        )

It means:

A_norm = Eww_norm + Esw_norm - dTSsix_norm      (1)

and:

E_norm = Eww_norm + Esw_norm         (2)
  1. In the GIST Tutorial (Python example for figure 5.):
import gisttools as gt
# Load the GIST data, make sure to set the correct reference energy
gist = gt.gist.load_gist_file('gist.dat',
struct='solute-centered.pdb', eww_ref=-9.5398)
# Calculate the total energy without double counting
gist['E_norm'] = gist['Eww_norm'] * 2 + gist['Esw_norm']
# Set the energy to zero for all voxels with no population
gist.loc[gist['population'] == 0, 'E_norm'] = 0
# Save the new energy to a dx file
gist.save_dx('E_norm', 'gist-E-per-mol-norm.dx')

Where, the comment claims double counting is avoided, but the code includes a factor of 2 for Eww_norm,

E_norm = 2 * Eww_norm + Esw_norm       (3)

which may imply double counting rather than avoidance. The intention behind this should be clarified.

Eqation 3 effectively doubles the water-water interaction term.

This discrepancy raises concerns about consistency and physical interpretation:

  • Multiplying by 2 implies a correction for double counting, but it’s unclear whether this factor is already embedded in the Eww_norm values provided by GIST.
  • If Eww_norm is already computed per interaction (not per molecule), then multiplying by 2 would be incorrect.
  • Conversely, if Eww_norm is defined per molecule, then doubling would be appropriate for the total.

Question: Could you please clarify the definition of Eww_norm in the GIST output and confirm which version of the E_norm formula is correct for standard GIST analysis?

This is important for ensuring consistency when using GISTTOOLS for visualization, scoring, or comparison with literature results.

Thank you!
— Gaokeng Xiao

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions