Files | |
| file | energy.h |
| Data members and function declarations for class energy. | |
Compounds | |
| struct | energy |
| Class, which unites various energy variables. More... | |
Defines | |
| #define | _ENERGY_H_ 1 |
| Environment variable for 'energy.h'. | |
Functions | |
| energy * | energy_ctor () |
| Constructor for the energy object. More... | |
| void | energy_dtor (energy *thee) |
| Destructor for the energy object. More... | |
| void | energy_all_interactions (energy *thee, ionlist *ions, int types) |
| Calculate the total sum of pair interactions for all ions specified in an array of ionlists. More... | |
| double | energy_all_interactions2 (energy *thee, ionlist *ions, int types, double *siasnew[], double *eiasnew[], double *coordsnew[]) |
| Calculate the total sum of pair interactions for all ions specified in an array of ionlists working on temporary/VEXTERNCal arrays. More... | |
| void | energy_added_ion (energy *thee, ionlist *ions, int types, int type, double *xyz, double *siasnew[], double *eiasnew[]) |
| Calculate the energy for adding an ion with specified type and coordinates. More... | |
| void | energy_deleted_ion (energy *thee, ionlist *ions, int types, int type, int pos, double *xyz, double *siasnew[], double *eiasnew[]) |
| Calculate the energy change for deletion of an ion with specified type and former coordinates. More... | |
| void | energy_moved_ion (energy *thee, ionlist *ions, int types, double *oldxyz, int type, int pos, double *siasnew[], double *eiasnew[]) |
| Calculate the energy change for movement of an ion with specified type and old+new coordinates. More... | |
| void | energy_some_interactions (energy *thee, ionlist *ions, int types, int type, int first, int last, double *siasnew[], double *eiasnew[], double *coordsnew[]) |
| Calculate the change in the total sum of pair interactions due to the movement of some ions of one specified type. More... | |
| double | energy_get_pot (ionlist *ions, int types, double *xyz) |
| Get value for electrostatic potential due to explicit ions at given point (takes no this/thee-pointer). More... | |
| void | energy_update (energy *thee) |
| Update energy variables (simply adds value stored in change variables 'DW...' to absolute values). More... | |
The functions herein are partially redundant and look much too complicated for their purpose (i.e., they are not optimized in terms of code reduction and programming elegance)
|
||||||||||||||||||||||||||||||||
|
Calculate the energy for adding an ion with specified type and coordinates. Routine assigns the values in both temporary interaction arrays ('siasnew[]' and 'eiasnew[]') according to the addition of the specified ion and assuming that the interaction arrays within the ionlist objects represent the state prior to the addition The energy change is assigned to 'thee->DWelec'
|
|
||||||||||||||||
|
Calculate the total sum of pair interactions for all ions specified in an array of ionlists. Routine deletes and re-assigns the values to both single interaction arrays hidden in the ionlists and writes final energy result directly to 'thee->Welec'
|
|
||||||||||||||||||||||||||||
|
Calculate the total sum of pair interactions for all ions specified in an array of ionlists working on temporary/VEXTERNCal arrays.
Routine deletes and re-assigns the values to both temporary interaction arrays ('siasnew[]' and 'eiasnew[]') based on the general ion type information in 'ions' with the exception of the coordinates, which are provided by 'coordsnew' The final energy result is returned to the user
|
|
|
Constructor for the energy object.
|
|
||||||||||||||||||||||||||||||||||||
|
Calculate the energy change for deletion of an ion with specified type and former coordinates. Routine assigns the values in both temporary interaction arrays ('siasnew[]' and 'eiasnew[]') according to the deletion of the specified ion and assuming that the interaction arrays within the ionlist objects represent the state prior to the deletion The energy change is assigned to 'thee->DWelec'
|
|
|
Destructor for the energy object.
|
|
||||||||||||||||
|
Get value for electrostatic potential due to explicit ions at given point (takes no this/thee-pointer).
|
|
||||||||||||||||||||||||||||||||||||
|
Calculate the energy change for movement of an ion with specified type and old+new coordinates. Routine assigns the values in both temporary interaction arrays ('siasnew[]' and 'eiasnew[]') according to the movement of the specified ion and assuming that the interaction arrays within the ionlist objects represent the state prior to the movement The energy change is assigned to 'thee->DWelec'
|
|
||||||||||||||||||||||||||||||||||||||||
|
Calculate the change in the total sum of pair interactions due to the movement of some ions of one specified type.
Routine assigns the values in both temporary interaction arrays ('siasnew[]' and 'eiasnew[]') according to the movement of the specified ions and assuming that the interaction arrays within the ionlist objects represent the state prior to the movement The energy change is assigned to 'thee->DWelec'
|
|
|
Update energy variables (simply adds value stored in change variables 'DW...' to absolute values).
|
1.2.14 written by Dimitri van Heesch,
© 1997-2002