Feature map
Use this page as a checklist of matmalib's public feature families. Each row links to a tutorial; the API reference includes every public class, function, and method defined in the package's public modules.
Molecular systems and geometry
| Feature |
Public API |
Tutorial |
| Atoms, coordinate arrays, mass attributes |
Atom, Fragment, State, xyz, Mass, mass |
Molecules |
| Add and remove atoms |
State.add_atoms, State.remove_atoms |
Molecules |
| Measure distance, angle, and torsion |
State.measure_internal, StateEditor.get_distance, get_angle, get_dihedral, measure |
Molecules |
| Edit coordinates and carried atoms |
State.set_internal, StateEditor.set_distance, set_angle, set_dihedral, determine_carried_atoms |
Molecules |
| Infer, edit, and split connectivity |
State.connectivity_matrix, system_split, StateEditor.adjacent_atoms, connect_atoms, disconnect_atoms |
Molecules |
| Notebook molecular display |
State.show |
Molecules |
| Atomic number and symbol lookup |
ELEMENT_SYMBOLS, ELEMENT_NUMBERS, State.element_symbol, StateBuilder.element_symbol, InputBuilder.element_number |
Molecules |
Files and ensembles
| Feature |
Public API |
Tutorial |
| Structure readers and format limitations |
State.from_file, StateBuilder.gaussian, cp2k_geom, orca, build |
File I/O |
| Numeric data and trajectory readers |
Data, Data.from_file, DataBuilder.cp2k_md, gromacs, csv, build |
File I/O |
| Read all XYZ frames and calculation directories |
Space.from_xyz, Space.from_dir |
File I/O |
| Write XYZ, Gaussian, and legacy FHI-aims inputs |
Space.to_file, InputBuilder.build, gaussian, fhiaims, xyz |
File I/O |
| Manage collections, sort, tabulate |
Space, Space.add, remove, sort, table |
Ensembles |
| Electronic energies, enthalpies, free energies |
Space.energies, enthalpies, free_energies, sum, diff |
Ensembles |
Some legacy paths are incomplete. These tutorials state their current behavior and offer alternatives; inclusion in the reference does not imply every software format is fully supported. See the behavior matrix.
| Feature |
Public API |
Tutorial |
| Sugar detection, monomers, explicit assignments |
Glycan, Glycan.from_state, Glycan.from_file |
Glycans |
| Sugar identity and stereochemistry |
Glycan.identify_sugars |
Glycans |
| Glycosidic and hydroxymethyl torsions |
Glycan.glycosidic_torsions, backbone_torsions |
Glycans |
| SNFG symbols, branches, and custom layouts |
Glycan.snfg, draw_snfg, Plot.snfg |
Glycans |
| Five- and six-membered Cremer–Pople coordinates |
cremer_pople, Glycan.cremer_pople |
Puckering |
| Canonical puckers and ring dihedrals |
classify_ring_pucker, ring_dihedrals, Glycan.identify_ring_puckers |
Puckering |
| Coordinate-array, State, and streamed trajectories |
cremer_pople_trajectory, Glycan.cremer_pople_trajectory, Data.from_file |
Trajectories |
| Aligned RMSD and atom selection |
rmsd, rmsd_matrix, Space.rmsd_matrix |
Conformers |
| Hierarchical clusters, representatives, energy filtering |
cluster_conformers, Space.cluster, ClusterResult |
Conformers |
| Duplicate removal |
Space.remove_duplicates |
Conformers |
| Dendrograms and cluster exports |
Plot.cluster_dendrogram |
Conformers |
Machine-learning simulations
| Feature |
Public API |
Tutorial |
| AIMNet ensembles, inference weights, devices, custom ASE calculators |
mlmd(...) |
Run MLMD |
| Geometry relaxation and convergence |
mlmd.minimize, MinimizationConfig |
Run MLMD |
| Equilibration, production, NVE/NVT/NPT, thermostats and barostats |
mlmd.equilibrate, run_md, EquilibrationConfig, MDConfig |
Run MLMD |
| Charges, cells, constraints, mass/velocity settings, streaming diagnostics |
SystemConfig, MDConfig, mlmd.data |
Run MLMD, Configuration |
| Periodic solvation, counterions, density, dry runs, Packmol diagnostics |
mlmd.solvate, SolvationConfig |
Solvation |
| Generated/custom PLUMED, collective variables, walls, normalization and bias continuation |
MetadynamicsConfig, MDConfig.mode |
Metadynamics |
| Checkpoint schedules, positions/momenta, RNG/integrator state and bias history |
MDConfig.checkpoint_file, mlmd.restart_md |
Save and restart |
| Existing FES, COLVAR reweighting, HILLS reconstruction, basins and projected barriers |
mlmd.analyze_metadynamics, AnalysisConfig |
FES analysis |
| Infrequent first-passage statistics, censored trajectories and diagnostics |
AnalysisConfig.infrequent |
Kinetics analysis |
| CSV/JSON/PNG exports and 1D FES rendering |
AnalysisConfig.output_dir, Plot.fes_1d |
FES analysis |
Run simulations in a local environment with the relevant optional dependencies. The live browser cells cover configurations and file-based FES analysis; they do not load ML models or run native simulation engines.
| Feature |
Public API |
Tutorial |
| Configuration, palettes, axes, and export |
Plot, Plot.Config, set_config, cmap, set_colors, set_axes, savefig |
Plotting |
| Time series, histograms, smoothing, multiple runs |
Plot.trajectory |
Plotting |
| Scatter plots |
Plot.scatter |
Plotting |
| Two-dimensional population free energies |
Plot.fes |
Free energy |
| One-dimensional metadynamics free energies and basin overlays |
Plot.fes_1d |
MLMD FES analysis |
| XPM contour matrices |
Plot.contour |
Free energy |
| Cremer–Pople population and free-energy maps |
Plot.cremer_pople_sphere, trajectory(projection="mollweide") |
Free energy |
| Gaussian-broadened IR spectra |
Plot.gaussian_broadening, Plot.ir |
Spectra |
| Reaction energy profiles |
Plot.foo_plot, Plot.space |
Plotting |
The private modules _carbohydrates, _geometry, _glycan_analysis, and _pucker_reference support these public interfaces. Their internals are deliberately not exposed as a stable API.