Research theme · Automated exploration

PyAR: automated exploration of molecular structures and reactions

PyAR is our open-source structure-search package for exploring molecular aggregates, reaction candidates, solvation structures and chemical space.

PyAR—Python program for aggregation and reaction—is an open-source structure-search package developed within our group. It generates, optimises and selects candidate geometries for chemical problems in which the relevant structures or reaction pathways are not known in advance.

The central question is: how can we explore molecular and reaction space without depending entirely on structures guessed by the researcher?

PyAR does not replace chemical reasoning or accurate electronic-structure calculations. It broadens the search, reduces dependence on manually constructed starting geometries and produces candidates for further analysis and validation.

What PyAR does

PyAR supports four related forms of chemical exploration:

  • Aggregation and cluster search: candidate low-energy structures of molecular aggregates, noncovalent complexes, nanoclusters and nanoalloys.
  • Reaction search: AFIR-style biased optimisation to explore possible products and bond rearrangements between reactants.
  • Solvation and sequential growth: addition of solvent molecules, ligands or other fragments around a molecular or atomic core.
  • Bond scans: variation of an interfragment distance as a simple reaction-coordinate probe.

How the search works

PyAR generates diverse relative orientations or trial structures and optimises them using a selected computational backend. Similar structures are removed, chemically distinct candidates are retained, and selected structures can be used in the next cycle of a recursive search.

For cluster growth, this means constructing larger systems from the low-energy structures of smaller ones. For reaction exploration, an artificial-force bias brings reactants into different chemically relevant orientations, after which the resulting products or intermediates can be relaxed and examined.

The search can be coupled to methods ranging from xTB and machine-learned potentials to electronic-structure programs such as ORCA, Gaussian, Psi4 and MOPAC.

Research developed through PyAR

Molecular aggregates and nanoclusters

The original PyAR strategy combined orientation sampling, local optimisation and a Tabu list that discourages repeated exploration of similar structures. Recursive fragment addition has been used to study molecular aggregates, homometallic clusters, binary nanoalloys and ternary clusters.

Explore our research on molecular aggregates, nanoclusters and nanoalloys →

Automated reaction discovery

Alternative reactant orientations and AFIR-style biased optimisation provide starting points for discovering products, intermediates and competing reaction channels. We have used this approach to investigate prebiotic networks involving HCN, NH₃ and related species—systems in which even small reactants generate a large and unintuitive chemical space.

Explore our research on automated reaction discovery and astrochemical space →

Catalyst formation and molecular assembly

The same framework can follow stepwise ligand addition and structural reorganisation around a catalytic core. It has been applied to active palladium catalyst formation from dinuclear palladium acetate.

Machine-learned potential-energy surfaces

Recent work combines PyAR's search algorithms with neural-network potentials to explore larger regions of chemical space at reduced computational cost. Selected structures can then be refined using conventional quantum-chemical methods. The purpose is not simply to replace quantum chemistry with a faster predictor, but to use machine learning to expand the search while keeping transferability, uncertainty and validation visible.

The structures generated by PyAR are candidates, not final answers. Search quality depends on the sampling strategy, computational method, charge and spin states, convergence criteria and the extent to which alternative regions of the potential-energy surface have been explored.

Reaction candidates do not by themselves establish a mechanism. Transition-state optimisation, intrinsic reaction-coordinate calculations, frequency analysis, thermochemistry and kinetics may require separate treatment. Cluster searches likewise require checks for sampling completeness and sensitivity to the underlying energy model.

PyAR therefore expands the set of hypotheses considered by the computational chemist while leaving scientific judgement and validation explicit.

Software and documentation

PyAR is publicly developed under the GPL-3.0 licence.

The Python distribution is named pyar-chem:

python -m pip install pyar-chem
pyar-cli --help

External computational programs are installed separately and remain subject to their own licences and requirements.

Selected papers

The methodological foundations are described in:

Representative applications include:

Development and collaboration

PyAR remains both research software and an evolving scientific programme. Contributions may involve computational chemistry, structure-search algorithms, molecular representations, software engineering, machine-learned potentials, validation or applications to new chemical systems.

Researchers interested in using or extending PyAR can begin with the documentation or participate through the GitHub repository.

Explore clusters and nanoalloys · Explore astrochemical reaction discovery · Explore functional molecular discovery · How collaborations shaped the programme · Return to the research overview · Visit AnoopLab · Browse our software