chemparseplot.plot.neb

Module Contents

Classes

SmoothingParams

Functions

render_structure_to_image

Renders an ASE atoms object to a numpy image array.

plot_structure_strip

Renders a horizontal gallery of atomic structures.

plot_structure_inset

Plots a single structure as an annotation inset.

plot_energy_path

Plots 1D energy profile with optional Hermite spline interpolation.

plot_eigenvalue_path

Plots 1D eigenvalue profile.

_augment_minima_points

Creates a ‘collar’ of synthetic points around the endpoints. This forces the RBF interpolator to curve upwards around these points, preventing artificial wells (overshooting) where the physics dictates a minimum.

_augment_with_gradients

Uses projected gradients to create helper points slightly offset from the path. This effectively tells the RBF interpolator the local slope.

plot_landscape_surface

Plots the 2D landscape surface using RBF or Grid interpolation.

plot_landscape_path_overlay

Overlays the colored path line on the landscape.

Data

log

InsetImagePos

MIN_PATH_LENGTH

API

chemparseplot.plot.neb.log

‘getLogger(…)’

chemparseplot.plot.neb.InsetImagePos

‘namedtuple(…)’

class chemparseplot.plot.neb.SmoothingParams
window_length: int

5

polyorder: int

2

chemparseplot.plot.neb.MIN_PATH_LENGTH

1e-06

chemparseplot.plot.neb.render_structure_to_image(atoms, zoom, rotation)

Renders an ASE atoms object to a numpy image array.

chemparseplot.plot.neb.plot_structure_strip(ax, atoms_list, labels, zoom=0.3, rotation='0x,90y,0z', theme_color='black', max_cols=6)

Renders a horizontal gallery of atomic structures.

chemparseplot.plot.neb.plot_structure_inset(ax, atoms, x, y, xybox, rad, zoom=0.4, rotation='0x,90y,0z', arrow_props=None)

Plots a single structure as an annotation inset.

chemparseplot.plot.neb.plot_energy_path(ax, rc, energy, f_para, color, alpha, zorder, method='hermite', smoothing=None)

Plots 1D energy profile with optional Hermite spline interpolation.

chemparseplot.plot.neb.plot_eigenvalue_path(ax, rc, eigenvalue, color, alpha, zorder, grid_color='white')

Plots 1D eigenvalue profile.

chemparseplot.plot.neb._augment_minima_points(rmsd_r, rmsd_p, z_data, radius=0.01, dE=0.02, num_pts=12)

Creates a ‘collar’ of synthetic points around the endpoints. This forces the RBF interpolator to curve upwards around these points, preventing artificial wells (overshooting) where the physics dictates a minimum.

chemparseplot.plot.neb._augment_with_gradients(r, p, z, gr, gp, epsilon=0.05)

Uses projected gradients to create helper points slightly offset from the path. This effectively tells the RBF interpolator the local slope.

Creates 4 helper points for every real point: (r +/- eps, p) and (r, p +/- eps)

chemparseplot.plot.neb.plot_landscape_surface(ax, rmsd_r, rmsd_p, grad_r, grad_p, z_data, step_data=None, method='grad_matern', rbf_smooth=None, cmap='viridis', show_pts=True)

Plots the 2D landscape surface using RBF or Grid interpolation.

Unified pipeline:

  1. Hyperparameter Optimization: Learn LS/Noise on the ‘clean’ final path.

  2. Augmentation: Add synthetic points (minima rings) and helper points (gradients).

  3. Final Fit: Generate surface using learned params + augmented data.

chemparseplot.plot.neb.plot_landscape_path_overlay(ax, r, p, z, cmap, z_label)

Overlays the colored path line on the landscape.