Molecular axis calculator class.
More...
#include <molecular_axis.h>
Molecular axis calculator class.
◆ MolecularAxisCalculator()
Construct a molecular axis calculator.
- Parameters
-
wfn | The wavefunction to analyze |
◆ apply_molecular_transformation()
Apply molecular transformation to wavefunction.
- Parameters
-
wfn | Wavefunction to transform (modified in place) |
result | Axis calculation result containing transformation |
◆ axis_method_to_string()
static std::string occ::core::MolecularAxisCalculator::axis_method_to_string |
( |
AxisMethod |
method | ) |
|
|
static |
Convert AxisMethod enum to string.
- Parameters
-
- Returns
- String representation
◆ calculate_axes()
Calculate molecular axes using specified method.
- Parameters
-
method | The axis calculation method to use |
axis_atoms | Atom indices for neighcrys method (ignored for other methods) |
- Returns
- MolecularAxisResult containing axes and metadata
◆ calculate_bond_separation()
int occ::core::MolecularAxisCalculator::calculate_bond_separation |
( |
int |
atom_i, |
|
|
int |
atom_j |
|
) |
| const |
Calculate bond path separation between two atoms.
- Parameters
-
atom_i | First atom index |
atom_j | Second atom index |
- Returns
- Estimated bond path separation
◆ calculate_moi_axes()
Calculate molecular axes using moment of inertia method.
- Returns
- MolecularAxisResult containing axes and metadata
◆ calculate_neighcrys_axes()
MolecularAxisResult occ::core::MolecularAxisCalculator::calculate_neighcrys_axes |
( |
const std::vector< int > & |
axis_atoms | ) |
const |
Calculate molecular axes using neighcrys method.
- Parameters
-
axis_atoms | Vector of 3 atom indices (0-based) defining the axis system |
- Returns
- MolecularAxisResult containing axes and metadata
◆ calculate_pca_axes()
Calculate molecular axes using PCA method.
- Returns
- MolecularAxisResult containing axes and metadata
◆ center_of_mass()
Vec3 occ::core::MolecularAxisCalculator::center_of_mass |
( |
| ) |
const |
Get center of mass of the molecule.
- Returns
- Center of mass position vector
◆ generate_neighcrys_info()
NeighcrysAxisInfo occ::core::MolecularAxisCalculator::generate_neighcrys_info |
( |
const std::vector< int > & |
axis_atoms | ) |
const |
Generate neighcrys axis information.
- Parameters
-
axis_atoms | Atoms defining the axis system |
- Returns
- NeighcrysAxisInfo structure
◆ generate_neighcrys_labels()
std::vector< std::string > occ::core::MolecularAxisCalculator::generate_neighcrys_labels |
( |
| ) |
const |
Generate neighcrys-compatible atom labels.
- Returns
- Vector of neighcrys-style atom labels
◆ string_to_axis_method()
static AxisMethod occ::core::MolecularAxisCalculator::string_to_axis_method |
( |
const std::string & |
method_str | ) |
|
|
static |
Convert string to AxisMethod enum.
- Parameters
-
method_str | String representation |
- Returns
- AxisMethod enum value
◆ write_neighcrys_axis_file()
static void occ::core::MolecularAxisCalculator::write_neighcrys_axis_file |
( |
const std::string & |
filename, |
|
|
const NeighcrysAxisInfo & |
axis_info |
|
) |
| |
|
static |
Write neighcrys-compatible axis file.
- Parameters
-
filename | Output filename |
axis_info | Neighcrys axis information |
◆ write_oriented_xyz()
static void occ::core::MolecularAxisCalculator::write_oriented_xyz |
( |
const std::string & |
filename, |
|
|
const occ::qm::Wavefunction & |
wfn, |
|
|
const std::string & |
title = "Oriented molecule from OCC" |
|
) |
| |
|
static |
Write oriented molecule in XYZ format.
- Parameters
-
filename | Output filename |
wfn | Wavefunction (should be oriented) |
title | Optional title for XYZ file |
The documentation for this class was generated from the following file: