Langmuir
Simulation
|
A class to represent moving positive charges. More...
#include <chargeagent.h>
Public Member Functions | |
HoleAgent (World &world, int site, QObject *parent=0) | |
Construct HoleAgent. More... | |
Public Member Functions inherited from LangmuirCore::ChargeAgent | |
ChargeAgent (Agent::Type getType, World &world, Grid &grid, int site, QObject *parent=0) | |
Construct charge. More... | |
virtual | ~ChargeAgent () |
Destroy charge. More... | |
int | charge () |
Get the charge of the ChargeAgent. More... | |
void | chooseFuture () |
Propose a random site to move to. More... | |
void | decideFuture () |
Decide what should happen, called after chooseFuture. More... | |
void | completeTick () |
Perform action, called after decideFuture. More... | |
bool | removed () |
True if decideFuture removed the charge from the grid. More... | |
int | lifetime () |
Number of steps ChargeAgent has existed. More... | |
int | pathlength () |
Number of sites ChargeAgent has traversed. More... | |
void | setOpenCLID (int id) |
Set the ChargeAgent OpenCL identifier. More... | |
int | getOpenCLID () |
Get the ChargeAgent OpenCL identifier. More... | |
double | coulombInteraction () |
Perform coulombCPU() or coulombGPU() More... | |
void | coulombCPU () |
Calculate the Coulomb potential on the CPU. More... | |
void | coulombGPU () |
Retrieve the Coulomb potential from the GPU More... | |
void | compareCoulomb () |
compare results for CPU and GPU Coulomb (assumes kernel was called) More... | |
Grid & | getGrid () |
Get the grid this ChargeAgent exists in. More... | |
void | setRemoved (const bool &status=true) |
Set the removed status of this ChargeAgent. More... | |
Public Member Functions inherited from LangmuirCore::Agent | |
Agent (Type type, World &world, int site=0, QObject *parent=0) | |
Create an Agent. More... | |
virtual | ~Agent () |
Destroy Agent. More... | |
const QVector< int > & | getNeighbors () const |
Get Agent neighbor list. More... | |
void | setNeighbors (QVector< int > neighbors) |
Set Agent neighbor list. More... | |
int | getCurrentSite () const |
Get Agent current site. More... | |
int | getFutureSite () const |
Get Agent future site. More... | |
void | setCurrentSite (int site) |
Set Agent current site. More... | |
void | setFutureSite (int site) |
Set Agent future site. More... | |
Type | getType () const |
Get Agent::Type enum. More... | |
World & | getWorld () const |
Get Langmuir::World reference. More... | |
Protected Member Functions | |
virtual double | bindingPotential (int site) |
Calculate Exciton Binding Energy. More... | |
virtual Agent::Type | otherType () |
Return other Agent::Type. More... | |
virtual Grid & | otherGrid () |
Return other Grid. More... | |
Additional Inherited Members | |
Public Types inherited from LangmuirCore::Agent | |
enum | Type { Empty = 0, Electron = 1, Hole = 2, Defect = 3, Source = 4, Drain = 5, SIZE = 6 } |
An identifier for the type of Agent. More... | |
Static Public Member Functions inherited from LangmuirCore::Agent | |
static QString | toQString (const Agent::Type e) |
Convert Agent type enum to QString. More... | |
Protected Attributes inherited from LangmuirCore::ChargeAgent | |
int | m_charge |
Charge of ChargeAgent (in units of e) More... | |
bool | m_removed |
Removed status of ChargeAgent. More... | |
int | m_lifetime |
Number of steps ChargeAgent as been in existance. More... | |
int | m_pathlength |
Number of grid spaces ChargeAgent has moved. More... | |
Grid & | m_grid |
The Grid the ChargeAgent lives in. More... | |
int | m_openClID |
The index of the Charge in the OpenCL vectors (see OpenClHelper) More... | |
double | m_de |
The difference in Coulomb potential between ChargeAgent::m_site and ChargeAgent::m_fSite. More... | |
Protected Attributes inherited from LangmuirCore::Agent | |
int | m_site |
Current site the Agent occupies. More... | |
int | m_fSite |
Future site the Agent will occupy. More... | |
World & | m_world |
Reference to World object. More... | |
QVector< int > | m_neighbors |
List fo neighboring site ids. More... | |
Type | m_type |
Agent Type enum. More... | |
A class to represent moving positive charges.
LangmuirCore::HoleAgent::HoleAgent | ( | World & | world, |
int | site, | ||
QObject * | parent = 0 |
||
) |
Construct HoleAgent.
|
protectedvirtual |
Calculate Exciton Binding Energy.
site | the site to check in other Grid |
Implements LangmuirCore::ChargeAgent.
|
protectedvirtual |
|
protectedvirtual |