Path Integral Quantum Monte Carlo
|
Contains information on the worm. More...
#include <worm.h>
Public Member Functions | |
Worm (int) | |
Constructor. More... | |
~Worm () | |
Destructor. | |
int | beadOn (int, int) const |
Safely get a bead (int indexed) | |
int | beadOn (const beadLocator &) const |
Safely get a bead (beadLocator indexed) | |
beadState | getState (const beadLocator &) const |
Get the state of the supplied bead? | |
double | factor (const beadState, const beadLocator &) const |
Compute the value of the potential action trajectory factor. | |
double | factor (const beadState state1) const |
void | delBead (int, int) |
Safely delete a bead (int indexed) | |
void | addBead (int, int) |
Safely add a bead (int indexed) | |
void | delBead (const beadLocator &) |
Safely delete a bead (beadLocator indexed) | |
void | addBead (const beadLocator &) |
Safely add a bead (beadLocator indexed) | |
void | reset () |
Reset the worm to a null state. | |
void | update (Path &, const beadLocator &, const beadLocator &) |
We update all worm properties for a new head and tail. More... | |
bool | foundBead (const Path &, const beadLocator &) |
Test to see if a supplied bead is located on a worm. | |
bool | tooCostly () |
Return true if the worm is too costly. | |
bool | tooCostly (const dVec &_sep, int _gap) |
Return true if the worm is too costly. | |
const Array< unsigned int, 2 > & | getBeads () const |
Return the bead list. | |
int | getNumBeadsOn () const |
Return the number of active beads. | |
void | incNumBeadsOn () |
Increment the number of active beads. | |
void | decNumBeadsOn () |
Decrement the number of active beads. | |
void | resetNumBeadsOn () |
Reset the number of active beads. | |
Data Fields | |
beadLocator | head |
The coordinates of the worm head. | |
beadLocator | tail |
The coordinates of the worm tail. | |
beadLocator | special1 |
Special bead, used in move updates. | |
beadLocator | special2 |
Special bead, used in move updates. | |
double | maxWormCost |
The maximum 'cost' of inserting a worm. | |
dVec | sep |
The spatial separation between head and tail. | |
int | length |
The length of the worm. | |
int | gap |
numTimeSlices - length | |
bool | isConfigDiagonal |
Stores the diagonality of the configuration. | |
Friends | |
class | Path |
class | PathIntegralMonteCarlo |
Contains information on the worm.
In a grand-canonical or worm simulation, one world line may lose its periodicity in imaginary time. This class holds all parameters and methods used to describe worm configurations.
Worm::Worm | ( | int | numParticles | ) |
Constructor.
Initialize the worm object.
numParticles | The number of particles |
Definition at line 22 of file worm.cpp.
void Worm::update | ( | Path & | path, |
const beadLocator & | newHead, | ||
const beadLocator & | newTail | ||
) |
We update all worm properties for a new head and tail.
Given new head and tail positions, we assign them and compute the gap, length and separation, while turning off all special flags.
Definition at line 69 of file worm.cpp.