changa 3.5
Loading...
Searching...
No Matches
GravityCompute Class Reference

Class to compute gravity using a "bucket walk". More...

#include <Compute.h>

Inheritance diagram for GravityCompute:
Compute

Public Member Functions

int doWork (GenericTreeNode *, TreeWalk *tw, State *state, int chunk, int reqID, bool isRoot, bool &didcomp, int awi)
 Work to be done at each node.
 
int openCriterion (TreePiece *ownerTP, GenericTreeNode *node, int reqID, State *state)
 
int computeParticleForces (TreePiece *owner, GenericTreeNode *node, ExternalGravityParticle *part, int reqID)
 Calculate forces due to particles in a node.
 
void nodeMissedEvent (int reqID, int chunk, State *state, TreePiece *tp)
 Allow book-keeping of a cache miss.
 
void nodeRecvdEvent (TreePiece *owner, int chunk, State *state, int bucket)
 Allow book-keeping of a cache receive event.
 
void recvdParticles (ExternalGravityParticle *egp, int num, int chunk, int reqID, State *state, TreePiece *tp, Tree::NodeKey &remoteBucket)
 Allow book-keeping of a cache receive event.
 
void reassoc (void *cE, int activeRung, Opt *o)
 
- Public Member Functions inherited from Compute
void setOpt (Opt *opt)
 
virtual void stateReady (State *state, TreePiece *owner, int chunk, int start, int end)
 
virtual void stateReadyPar (TreePiece *tp, int start, int end, CkVec< OffsetNode > &clist, CkVec< RemotePartInfo > &rpilist, CkVec< LocalPartInfo > &lpilist)
 
virtual void fillLists (State *state_, TreePiece *tp, int chunk, int start, int end, CkVec< OffsetNode > &clistforb, CkVec< RemotePartInfo > &rplistforb, CkVec< LocalPartInfo > &lplistforb)
 
virtual void init (void *cE, int activeRung, Opt *opt)
 Associate computeEntity (target bucket or node), activeRung and Optimization with this Compute object.
 
ComputeType getSelfType ()
 
OptType getOptType ()
 
int getActiveRung ()
 
virtual void initState (State *state)
 
virtual void startNodeProcessEvent (State *state)
 
virtual void finishNodeProcessEvent (TreePiece *owner, State *state)
 Allow book-keeping when finished with a node.
 
virtual void recvdParticlesFull (GravityParticle *egp, int num, int chunk, int reqID, State *state, TreePiece *tp, Tree::NodeKey &remoteBucket)
 Allow book-keeping of a cache receive event.
 
virtual void walkDone (State *state)
 
virtual void setComputeEntity (void *ce)
 
virtual void * getComputeEntity ()
 
virtual StategetNewState (int d1, int d2)
 
virtual StategetNewState (int d1)
 
virtual StategetNewState ()
 
virtual void freeState (State *state)
 

Additional Inherited Members

- Public Attributes inherited from Compute
int nActive
 
- Protected Member Functions inherited from Compute
 Compute (ComputeType t)
 
- Protected Attributes inherited from Compute
Optopt
 
void * computeEntity
 
int activeRung
 
ComputeType type
 

Detailed Description

Class to compute gravity using a "bucket walk".

Member Function Documentation

◆ computeParticleForces()

int GravityCompute::computeParticleForces ( TreePiece * ownerTP,
GenericTreeNode * node,
ExternalGravityParticle * part,
int reqID )

Calculate forces due to particles in a node.

Parameters
ownerTPTreePiece of target particles
nodeGenericTreeNode containing source particles
partarray of source particles
reqIDbucket number of target particles and offset

◆ doWork()

int GravityCompute::doWork ( GenericTreeNode * ,
TreeWalk * tw,
State * state,
int chunk,
int reqID,
bool isRoot,
bool & didcomp,
int awi )
virtual

Work to be done at each node.

Implements Compute.

◆ nodeMissedEvent()

void GravityCompute::nodeMissedEvent ( int reqID,
int chunk,
State * state,
TreePiece * tp )
virtual

Allow book-keeping of a cache miss.

Reimplemented from Compute.

◆ nodeRecvdEvent()

void GravityCompute::nodeRecvdEvent ( TreePiece * owner,
int chunk,
State * state,
int bucket )
virtual

Allow book-keeping of a cache receive event.

Reimplemented from Compute.

◆ openCriterion()

int GravityCompute::openCriterion ( TreePiece * ownerTP,
GenericTreeNode * node,
int reqID,
State * state )
virtual

Implements Compute.

◆ reassoc()

void GravityCompute::reassoc ( void * cE,
int activeRung,
Opt * o )
virtual

Reimplemented from Compute.

◆ recvdParticles()

void GravityCompute::recvdParticles ( ExternalGravityParticle * egp,
int num,
int chunk,
int reqID,
State * state,
TreePiece * tp,
Tree::NodeKey & remoteBucket )
virtual

Allow book-keeping of a cache receive event.

Reimplemented from Compute.


The documentation for this class was generated from the following files: