MullerBrown
List of Methods
- class taps.models.mullerbrown.MullerBrown(results=None, label=None, prj=None, _cache=None, unit='eV')
Muller Brown Potential
\[\begin{equation} V\left(x,y\right) = \sum_{\mu=1}^{4}{A_\mu e^{a_\mu \left(x-x_\mu^0\right)^2 + b_\mu \left(x-x_\mu^0\right) \left(y-y_\mu^0\right) + c_\mu\left(y-y_\mu^0\right)^2}} \end{equation}\]Initial position = (-0.55822365, 1.44172582)
Final position = (0.6234994, 0.02803776)
- Parameters:
np.array([-200 (A =) –
-100 –
-170 –
15]) –
np.array([-1 (a =) –
-1 –
-6.5 –
0.7]) –
np.array([0 (y0 =) –
0 –
11 –
0.6]) –
np.array([-10 (c =) –
-10 –
-6.5 –
0.7]) –
np.array([1 (x0 =) –
0 –
-0.5 –
-1]) –
np.array([0 –
0.5 –
1.5 –
1]) –
'unitless' (potential_unit =) –
Example
>>> import numpy as np >>> N = 300 >>> x = np.linspace(-0.55822365, 0.6234994, N) >>> y = np.linspace(1.44172582, 0.02803776, N) >>> paths.coords = np.array([x, y])
Methods
__call__(coords)Call self as a function.
calculate(coords[, properties])x : N shape array y : N shape array return D x N
generate_unique_hash(positions)return string that explains current calculation
get_properties([paths, properties, index, ...])pre-calculation rutine.
get_covariance
get_directory
get_finite_gradients
get_finite_hessian
get_forces
get_gradient
get_gradients
get_hessian
get_label
get_potential
get_potential_energies
get_potential_energy
get_potentials
get_state_info
save
- calculate(coords, properties=['potential'], **kwargs)
x : N shape array y : N shape array return D x N