Orbital Class Reference
The Orbital class, which stores orbitals, SCF energies, etc. for a single timestep.
More...
#include <Orbital.h>
List of all members.
Public Methods
Orbital (const float *atompos, const float *wave_function, const float *basis, const
basis_atom_t *bset, const int *types, const int *atom_sort, const int *atom_basis, const float **norm_factors, const int *num_shells_per_atom, const int *num_prim_per_shell, const int *orbital_symmetry, int numatoms, int numtypes, int num_wave_f, int num_basis_funcs, int orbid)
Return the max number of primitives that occur in a basis function. More...
Return maximum shell type contained in the orbital. More...
Count the max number of wave_f accesses for the shell types contained in this orbital. More...
Get the side lengths of the grid in Angstrom. More...
Get the number of voxels in each dimension. More...
void
get_grid_axes (float xaxis[3], float yaxis[3], float zaxis[3])
Get the axes of the volumetric grid as defined in volumetric_t. More...
Get the grid resolution, i.e. the side length of a voxel. More...
void
set_grid (float newori[3], float newdim[3], float voxelsize)
Set the grid size and resolution The given grid dimensions will be rounded to a multiple of the voxel size. More...
Change the resolution of the grid. More...
Get a pointer to the raw volumetric data. More...
Sets the grid dimensions to the bounding box of the given set of atoms *pos including a padding in all dimensions. The resulting grid dimensions will be rounded to a multiple of the voxel size. More...
Optimize position and dimension of current grid so that all orbital values higher than threshold are contained in the grid. More...
Check if all values in the boundary plane given by dir are below threshold. If not, jump back, decrease the stepsize and test again. Helper function for find_optimal_grid(). More...
Multiply wavefunction coefficients with the basis set normalization factors. More...
Compute the volumetric data for the orbital. More...
Compute the volumetric data for given point in space. More...
Compute total FLOPS executed for a single gridpoint. More...
Detailed Description
The Orbital class, which stores orbitals, SCF energies, etc. for a single timestep.
Definition at line 31 of file Orbital.h.
Constructor & Destructor Documentation
Orbital::Orbital
(
const float *
atompos,
const float *
wave_function,
const float *
basis,
const int *
types,
const int *
atom_sort,
const int *
atom_basis,
const float **
norm_factors,
const int *
num_shells_per_atom,
const int *
num_prim_per_shell,
const int *
orbital_symmetry,
int
numatoms,
int
numtypes,
int
num_wave_f,
int
num_basis_funcs,
int
orbid
)
Orbital::~Orbital
(
void
)
Member Function Documentation
Compute the volumetric data for the orbital.
Definition at line 501 of file Orbital.C.
References DrawMolecule::app, CPU_AVX2, CPU_AVX512ER, CPU_AVX512F, DrawMolecule::cpu_threadpool, VMDApp::cpucaps, DrawMolecule::cuda_devpool, evaluate_grid_fast, wkf_cpu_caps_struct::flags, flops_per_gridpoint, G_SHELL, max_primitives, max_shell_type, NULL, PROFILE_POP_RANGE, PROFILE_PUSH_RANGE, total_shells, VECPADMASK, vmd_cl_get_platform_index, vmd_cuda_evaluate_orbital_grid, vmd_opencl_create_orbital_handle, vmd_opencl_destroy_orbital_handle, vmd_opencl_evaluate_orbital_grid, VMDORBUSETHRPOOL, wkf_thread_numprocessors, wkf_timer_create, wkf_timer_destroy, wkf_timer_start, wkf_timer_stop, wkf_timer_time, and wkf_timerhandle.
int Orbital::check_plane
(
int
w,
float
threshold,
int
minstepsize,
int &
stepsize
)
float Orbital::evaluate_grid_point
(
float
grid_x,
float
grid_y,
float
grid_z
)
void Orbital::find_optimal_grid
(
float
threshold,
int
minstepsize,
int
maxstepsize
)
double Orbital::flops_per_gridpoint
(
)
void Orbital::get_grid_axes
(
float
xaxis[3],
float
yaxis[3],
float
zaxis[3]
)
[inline]
Get the axes of the volumetric grid as defined in volumetric_t.
Definition at line 130 of file Orbital.h.
float* Orbital::get_grid_data
(
)
[inline]
Get a pointer to the raw volumetric data.
Definition at line 149 of file Orbital.h.
const float* Orbital::get_gridsize
(
)
[inline]
Get the side lengths of the grid in Angstrom.
Definition at line 124 of file Orbital.h.
const int* Orbital::get_numvoxels
(
)
[inline]
Get the number of voxels in each dimension.
Definition at line 127 of file Orbital.h.
const float* Orbital::get_origin
(
)
[inline]
Get the grid origin.
Definition at line 121 of file Orbital.h.
float Orbital::get_resolution
(
)
[inline]
Get the grid resolution, i.e. the side length of a voxel.
Definition at line 138 of file Orbital.h.
int Orbital::max_primitives
(
void
)
Return the max number of primitives that occur in a basis function.
Definition at line 786 of file Orbital.C.
Referenced by calculate_mo.
int Orbital::max_shell_type
(
void
)
Return maximum shell type contained in the orbital.
Definition at line 805 of file Orbital.C.
Referenced by calculate_mo.
int Orbital::max_wave_f_count
(
void
)
Count the max number of wave_f accesses for the shell types contained in this orbital.
Definition at line 826 of file Orbital.C.
void Orbital::normalize_wavefunction
(
const float *
wfn
)
int Orbital::num_types
(
void
)
[inline]
void Orbital::print_wavefunction
(
)
void Orbital::set_grid
(
float
newori[3],
float
newdim[3],
float
voxelsize
)
Set the grid size and resolution The given grid dimensions will be rounded to a multiple of the voxel size.
Definition at line 305 of file Orbital.C.
References set_resolution.
int Orbital::set_grid_to_bbox
(
const float *
pos,
float
padding,
float
resolution
)
Sets the grid dimensions to the bounding box of the given set of atoms *pos including a padding in all dimensions. The resulting grid dimensions will be rounded to a multiple of the voxel size.
Definition at line 264 of file Orbital.C.
References set_resolution.
void Orbital::set_resolution
(
float
voxelsize
)
int Orbital::total_shells
(
)
[inline]
The documentation for this class was generated from the following files:
Generated on Mon Nov 17 02:48:52 2025 for VMD (current) by
doxygen1.2.14 written by Dimitri van Heesch,
© 1997-2002