coulomb module
Full Documentation for hippynn.layers.physics.coulomb module.
Click here for a summary page.
Layers for physical operations
- class ChEQ(units={'energy': 'eV', 'length': 'Angstrom'}, lower_bound=0.0)[source]
Bases:
Module- forward(species, coordinates, U, chi)[source]
species : shape (n_molecule, n_atom) coordinates : shape (n_molecule, n_atom, 3), unit Angstrom or bohr U : Hubbard U, diagonal part of A, shape (n_real_atom, 1), output from HCharge Node chi : Electronegatvitiy, shape (n_real_atom, 1), output from HCharge Node
- dipole = <torch.jit.torch.jit.ScriptFunction object>
- exact_charge = <torch.jit.torch.jit.ScriptFunction object>
- class CombineScreenings(screening_list)[source]
Bases:
ModuleReturns products of different screenings for Screened Coulomb Interactions.
- forward(pair_dist, radius)[source]
Product of different screenings applied to pair_dist upto radius.
- Parameters:
pair_dist – torch.tensor, dtype=float64: ‘Neighborlist’ distances for coulomb energies.
radius – Maximum radius that Screened-Coulomb is evaluated upto.
- Return screening:
Weights for screening for all pair_dist.
- class CoulombEnergy(energy_conversion_factor)[source]
Bases:
ModuleComputes the Coulomb Energy of the molecule/configuration.
Coulomb energies is defined for pairs of atoms. Here, we adopt the convention that the Coulomby energy for a pair of atoms is evenly partitioned to both atoms as the ‘per-atom energies’. Therefore, the atom energies sum to the molecular energy; similar to the HEnergy.
- forward(charges, pair_dist, pair_first, pair_second, system_index, n_systems)[source]
Define the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Moduleinstance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
- class EwaldRealSpaceScreening(alpha)[source]
Bases:
AlphaScreening- forward(pair_dist, radius)[source]
Define the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Moduleinstance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
- class LocalDampingCosine(alpha)[source]
Bases:
AlphaScreeningLocal damping using complement of the hipnn cutoff function. (‘glue-on’ method) g = 1 if pair_dist > R_cutoff, 1 - [cos(pi/2 * dist * R_cutoff)]^2 otherwise
- class QScreening(p_value)[source]
Bases:
Module- forward(pair_dist, radius)[source]
Define the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Moduleinstance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
- property p_value
- class ScreenedCoulombEnergy(energy_conversion_factor, screening, radius=None)[source]
Bases:
CoulombEnergyComputes the Coulomb Energy of the molecule/configuration.
The convention for the atom energies is the same as CoulombEnergy and the HEnergy.
- forward(charges, pair_dist, pair_first, pair_second, system_index, n_systems)[source]
Define the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Moduleinstance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
- class WolfScreening(alpha)[source]
Bases:
AlphaScreening- forward(pair_dist, radius)[source]
Define the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Moduleinstance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.