Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

Orbital.C File Reference

#include <math.h>
#include <stdio.h>
#include "Orbital.h"
#include "DrawMolecule.h"
#include "utilities.h"
#include "Inform.h"
#include "WKFThreads.h"
#include "WKFUtils.h"

Go to the source code of this file.

Compounds

union  flint_t
struct  orbthrparms

Defines

#define VMDORBUSESSE   1
#define ANGS_TO_BOHR   1.88972612478289694072f
#define XNEG   0
#define YNEG   1
#define ZNEG   2
#define XPOS   3
#define YPOS   4
#define ZPOS   5
#define SSEPADSZ   4
#define SSEPADMASK   (SSEPADSZ - 1)
#define MLOG2EF   -1.44269504088896f
#define SCEXP0   1.0000000000000000f
#define SCEXP1   0.6987082824680118f
#define SCEXP2   0.2633174272827404f
#define SCEXP3   0.0923611991471395f
#define SCEXP4   0.0277520543324108f
#define EXPOBIAS   127
#define EXPOSHIFT   23
#define ACUTOFF   -10
#define S_SHELL   0
#define P_SHELL   1
#define D_SHELL   2
#define F_SHELL   3
#define G_SHELL   4
#define H_SHELL   5

Typedefs

typedef flint_t flint

Functions

float cephesfastexpf (float x)
float aexpfnx (float x)
int evaluate_grid (int numatoms, const float *wave_f, const float *basis_array, const float *atompos, const int *atom_basis, const int *num_shells_per_atom, const int *num_prim_per_shell, const int *shell_types, const int *numvoxels, float voxelsize, const float *origin, int density, float *orbitalgrid)
void * orbitalthread (void *voidparms)
int evaluate_grid_fast (int numatoms, const float *wave_f, const float *basis_array, const float *atompos, const int *atom_basis, const int *num_shells_per_atom, const int *num_prim_per_shell, const int *shell_types, const int *numvoxels, float voxelsize, const float *origin, int density, float *orbitalgrid)

Variables

const float MAXNUMF = 3.4028234663852885981170418348451692544e38f
const float MAXLOGF = 88.72283905206835f
const float MINLOGF = -103.278929903431851103f
const float LOG2EF = 1.44269504088896341f
const float C1 = 0.693359375f
const float C2 = -2.12194440e-4f


Define Documentation

#define ACUTOFF   -10
 

Definition at line 859 of file Orbital.C.

Referenced by aexpfnx.

#define ANGS_TO_BOHR   1.88972612478289694072f
 

Definition at line 46 of file Orbital.C.

Referenced by evaluate_grid, and Orbital::evaluate_grid_point.

#define D_SHELL   2
 

Definition at line 892 of file Orbital.C.

Referenced by evaluate_grid, and Orbital::flops_per_gridpoint.

#define EXPOBIAS   127
 

Definition at line 855 of file Orbital.C.

Referenced by aexpfnx.

#define EXPOSHIFT   23
 

Definition at line 856 of file Orbital.C.

Referenced by aexpfnx.

#define F_SHELL   3
 

Definition at line 893 of file Orbital.C.

Referenced by evaluate_grid, and Orbital::flops_per_gridpoint.

#define G_SHELL   4
 

Definition at line 894 of file Orbital.C.

Referenced by Orbital::calculate_mo, evaluate_grid, and Orbital::flops_per_gridpoint.

#define H_SHELL   5
 

Definition at line 895 of file Orbital.C.

#define MLOG2EF   -1.44269504088896f
 

Definition at line 842 of file Orbital.C.

Referenced by aexpfnx.

#define P_SHELL   1
 

Definition at line 891 of file Orbital.C.

Referenced by evaluate_grid, and Orbital::flops_per_gridpoint.

#define S_SHELL   0
 

Definition at line 890 of file Orbital.C.

Referenced by evaluate_grid, and Orbital::flops_per_gridpoint.

#define SCEXP0   1.0000000000000000f
 

Definition at line 848 of file Orbital.C.

Referenced by aexpfnx.

#define SCEXP1   0.6987082824680118f
 

Definition at line 849 of file Orbital.C.

Referenced by aexpfnx.

#define SCEXP2   0.2633174272827404f
 

Definition at line 850 of file Orbital.C.

Referenced by aexpfnx.

#define SCEXP3   0.0923611991471395f
 

Definition at line 851 of file Orbital.C.

Referenced by aexpfnx.

#define SCEXP4   0.0277520543324108f
 

Definition at line 852 of file Orbital.C.

Referenced by aexpfnx.

#define SSEPADMASK   (SSEPADSZ - 1)
 

#define SSEPADSZ   4
 

#define VMDORBUSESSE   1
 

Definition at line 24 of file Orbital.C.

#define XNEG   0
 

Definition at line 208 of file Orbital.C.

Referenced by Orbital::find_optimal_grid.

#define XPOS   3
 

Definition at line 211 of file Orbital.C.

Referenced by Orbital::find_optimal_grid.

#define YNEG   1
 

Definition at line 209 of file Orbital.C.

Referenced by Orbital::find_optimal_grid.

#define YPOS   4
 

Definition at line 212 of file Orbital.C.

Referenced by Orbital::find_optimal_grid.

#define ZNEG   2
 

Definition at line 210 of file Orbital.C.

Referenced by Orbital::find_optimal_grid.

#define ZPOS   5
 

Definition at line 213 of file Orbital.C.

Referenced by Orbital::find_optimal_grid.


Typedef Documentation

typedef union flint_t flint
 


Function Documentation

float aexpfnx float    x
 

Definition at line 866 of file Orbital.C.

References ACUTOFF, EXPOBIAS, EXPOSHIFT, flint_t::f, MLOG2EF, flint_t::n, SCEXP0, SCEXP1, SCEXP2, SCEXP3, and SCEXP4.

float cephesfastexpf float    x [inline, static]
 

Definition at line 774 of file Orbital.C.

References C1, C2, LOG2EF, MAXLOGF, MAXNUMF, and MINLOGF.

Referenced by evaluate_grid.

int evaluate_grid int    numatoms,
const float *    wave_f,
const float *    basis_array,
const float *    atompos,
const int *    atom_basis,
const int *    num_shells_per_atom,
const int *    num_prim_per_shell,
const int *    shell_types,
const int *    numvoxels,
float    voxelsize,
const float *    origin,
int    density,
float *    orbitalgrid
 

Definition at line 897 of file Orbital.C.

References aexpfnx, ANGS_TO_BOHR, cephesfastexpf, D_SHELL, F_SHELL, G_SHELL, P_SHELL, and S_SHELL.

int evaluate_grid_fast int    numatoms,
const float *    wave_f,
const float *    basis_array,
const float *    atompos,
const int *    atom_basis,
const int *    num_shells_per_atom,
const int *    num_prim_per_shell,
const int *    shell_types,
const int *    numvoxels,
float    voxelsize,
const float *    origin,
int    density,
float *    orbitalgrid
 

Definition at line 1577 of file Orbital.C.

References orbthrparms::atom_basis, orbthrparms::atompos, orbthrparms::basis_array, orbthrparms::density, wkf_tasktile_struct::end, orbthrparms::num_prim_per_shell, orbthrparms::num_shells_per_atom, orbthrparms::numatoms, orbthrparms::numvoxels, orbthrparms::orbitalgrid, orbitalthread, orbthrparms::origin, orbthrparms::shell_types, wkf_tasktile_struct::start, orbthrparms::voxelsize, orbthrparms::wave_f, wkf_thread_numprocessors, and wkf_threadlaunch.

void* orbitalthread void *    voidparms
 

Definition at line 1523 of file Orbital.C.

References orbthrparms::atom_basis, orbthrparms::atompos, orbthrparms::basis_array, orbthrparms::density, wkf_tasktile_struct::end, evaluate_grid, NULL, orbthrparms::num_prim_per_shell, orbthrparms::num_shells_per_atom, orbthrparms::numatoms, orbthrparms::numvoxels, orbthrparms::orbitalgrid, orbthrparms::origin, orbthrparms::shell_types, wkf_tasktile_struct::start, orbthrparms::voxelsize, orbthrparms::wave_f, WKF_SCHED_DONE, wkf_threadlaunch_getdata, and wkf_threadlaunch_next_tile.

Referenced by evaluate_grid_fast.


Variable Documentation

const float C1 = 0.693359375f [static]
 

Definition at line 771 of file Orbital.C.

Referenced by cephesfastexpf.

const float C2 = -2.12194440e-4f [static]
 

Definition at line 772 of file Orbital.C.

Referenced by cephesfastexpf.

const float LOG2EF = 1.44269504088896341f [static]
 

Definition at line 770 of file Orbital.C.

Referenced by cephesfastexpf.

const float MAXLOGF = 88.72283905206835f [static]
 

Definition at line 768 of file Orbital.C.

Referenced by cephesfastexpf.

const float MAXNUMF = 3.4028234663852885981170418348451692544e38f [static]
 

Definition at line 767 of file Orbital.C.

Referenced by cephesfastexpf.

const float MINLOGF = -103.278929903431851103f [static]
 

Definition at line 769 of file Orbital.C.

Referenced by cephesfastexpf.


Generated on Wed May 22 01:49:25 2013 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002