Change Log
2026-03-29
Add Change Log to documentation site
Automatically link to issues in CHANGELOG.md
Remove duplicated attribute validation checks. These are mostly handled by the attribute get functions.
Pre-collect coordinates from igraph to significantly improve zmatrix_search speed. Up to 30% faster observed. (#298 )
Fix TOTAL commands not being executed due to input file parsing bug
Allow multiple TOTAL commands per ZMATRIX block
Write TOTAL command results to .zmt output files
TOTAL = SUM will attempt to convert string attributes to numeric values
Reduced the number of mid-loop vector allocations for significant speedups.
2026-03-26
Add error message input to validate_true_false util function.
Use validate_string util function in more places.
Use ChemRXiv citation
Consolidate the text to boolean operation functions into Utils::Comparison. Also adds "!=" to delete_* analyses
Re-implement ZMATRIX.TOTAL
Rename ZMATRIX.TOTAL PE command to SUM, and adjust accordingly
Use the correct name "Z-matrix" where appropriate in the docs.
2026-03-24
Fix links in docs that prevented proper doc compilation.
Changed documentation backend to use Zensical instead of mkdocs (#295 )
Added links to example folders on gitlab in the docs.
Added links to wikipedia articles for a few graph theory terms.
Added attr_hist analysis (#261 )
Added GRAPH.ADD.GRAPH command to copy a graph from another block. (#289 )
Safer internal input file data accessing. Bad cm*-> accesses should throw errors instead of seg-faulting now. (#296 )
2026-03-19
Add averaged option to steinhardt parameter based on J Chem Phys, 129, 114707 (2008). (#291 )
Improve documentation of merge_equal_nodes analysis (#293 )
Fix gitlab link in docs. (#294 )
Remove duplicate PBC logging (#292 )
Consolidate internal utils to src/utils (#277 )
2026-03-17
Fix error message for invalid node attribute types in write_node_file.hpp
Fix bug in delete_* analyses where the attribute would only be deleted if it was lowercase.
Reduce file reading operations in ADD.NODES/EDGES.FROM_FILE commands (#290 )
Read tilt factors from trajectories. Remove angular PBC parameters. (#2 )
2026-03-15
Fix subgraph_* analyses improperly skipping edges in directed graphs. (#282 )
Move validation step in edg/nds readers to execute block (#283 )
Guard a delimiter write when no node attributes are supplied in edg/nds files (#284 )
Fix seg-fault when trying to write PBC bounds for a graph block with no trajectory (#287 )
Remove old gitlab links and repo name (#286 )
Add rename_attr analysis (#285 )
Allow GRAPH.DIRECTED to be called multiple times (#288 )
2026-03-08
Replace ghost particle approach with minimum image convention (MIC) for periodic boundary conditions (PBCs) (#279 )
Remove PBC.CUTOFF setting, add_ghosts analysis, and delete_ghosts analysis
Support triclinic (non-orthogonal) cells via upper-triangular box matrix (Initial work towards #2 )
Apply MIC to all distance, angle, and dihedral calculations
Apply MIC to neighbor lists
Apply MIC to edge attributes
Update tutorial and all relevant docs
Update ghost node ghost_of attribute when deleting or merging nodes. Only relevant if analyses were run before the
last ZMATRIX_SEARCH. (#274 ) Superceded by MIC changes in #279
Use igraph_incident to handle multi-edges. (#280 )
2026-03-03
Fix a link in the docs
Fix the nav menu's hiding behavior when zooming in the docs (#270 )
Fix steinhardt analysis overwriting previous steinhardt calculations with default value (#272 )
Fix bug where GRAPH.DIRECTED wouldn't use the default combination method when not specified (#273 )
Fix attribute validation in edge file writer (#278 )
Fix bug where WRITE.EDGES.ATTRIBUTES.EDGES would fail to write an attribute from ADD.ATTRIBUTE.EDGE.EDGE because there
were no edges in the graph.
2026-02-26
Add analysis_utils.hpp to consolidate shared analysis logic
Add subgraph_search analysis (#267 )
Add subgraph_enumerate analysis (#268 )
Fix the ordering of analysis commands to be alphabetical in the docs
Add steinhardt analysis (#269 )
2026-02-24
Require that attributes exist before attempting to read from them (#263 )
Properly skip timestep header row in ADD.EDGES.FROM_FILE (#264 )
Update error message when attempting out-of-bounds tokens in tokenizer
Add missing delimiter between last i attribute and j. (#265 )
Add subgraph_census analysis (#266 )
2026-02-22
Significant updates to docs (#257 )
Remove the range restriction on angle command parameters (#260 )
Made compilation flags case-insensitive (#258 )
Added timestep to the edge file headers (#259 )
Allow multiple edge file locations (#256 )
Use an enum instead of manually defined integers for command component types
Properly complain when a command component is doubly defined (#262 )
Refactor input file header parsing
Fix appending to the auto-generated header files rather than building from scratch on configuration.
Prevent redefinition of the NAME variable
Properly require NAME commands at the top of consecutive blocks of the same type
Add label_nodes analysis (#255 )
2026-02-16
Add CHANGELOG.md
Update documentation content and style
Back to top