OpenAtom
Version1.5a
|
cpaimd-charm-driver More...
#include "cpaimd.h"
#include "InstanceController.h"
#include "ENL_EKE_Collector.h"
#include "pcCreationManager.h"
#include "eesCache.h"
#include "AtomsCache.h"
#include "AtomsCompute.h"
#include "energyGroup.h"
#include "cp_state_ctrl/CP_State_Plane.h"
#include "cp_state_ctrl/CP_State_ParticlePlane.h"
#include "fft_slab_ctrl/fftCacheSlab.h"
#include "structure_factor/StructFactorCache.h"
#include "structure_factor/StructureFactor.h"
#include "paircalc/pcMapConfig.h"
#include "load_balance/PeList.h"
#include "utility/MapFile.h"
#include "PIBeadAtoms.h"
#include "utility/util.h"
#include "src_piny_physics_v1.0/include/class_defs/Interface_ctrl.h"
#include "src_piny_physics_v1.0/include/class_defs/PINY_INIT/PhysicsParamTrans.h"
#include "src_piny_physics_v1.0/include/class_defs/PINY_INIT/PhysicsAtomPosInit.h"
#include "MeshStreamingStrategy.h"
#include "MultiRingMulticast.h"
#include "OneTimeMulticastStrategy.h"
#include "TopoManager.h"
#include "TimeKeeper.h"
#include "charm++.h"
#include "PhysScratchCache.h"
#include <cmath>
#include <unistd.h>
#include <iostream>
#include <sstream>
#include <string>
#include <assert.h>
#include "mapvariables.h"
#include "commlibhandles.h"
#include "initializeUber.C"
#include "CPcharmParaInfo.def.h"
#include "timeKeeper.def.h"
#include "startupMessages.def.h"
#include "cp_state_ctrl/CP_State_GSpacePlane.h"
#include "cpaimd.def.h"
Go to the source code of this file.
Macros | |
#define | OPENATOM_REVISION Unknown |
The build system should define this macro to be the commit identifier. | |
#define | _QUOTEIT(x) #x |
#define | INQUOTES(x) _QUOTEIT(x) |
Functions | |
void | initFFTLock (void) |
void | init_commlib_strategies (int numRhoG, int numReal, int numRhoRhart, UberCollection thisInstance) |
Initialize Commlib communication strategies. | |
void | init_PIBeads (CPcharmParaInfo *sim, UberCollection thisInstance) |
Create the PIBeadAtoms array. More... | |
void | init_state_chares (int natm_nl, int natm_nl_grp_max, int numSfGrps, int doublePack, CPcharmParaInfo *sim, UberCollection thisInstance) |
Create the array elements for the GSpace, Particle and Real Space planes /////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////. More... | |
int | init_rho_chares (CPcharmParaInfo *sim, UberCollection thisInstance) |
Creating arrays CP_Rho_GSpacePlane, CP_Rho_GSpacePlaneHelper and CP_Rho_RealSpacePlane. More... | |
void | control_physics_to_driver (UberCollection thisInstance) |
Get the atoms and the parainfo /////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////. More... | |
static CkReductionMsg * | complexSum (int nMsg, CkReductionMsg **msgs) |
void | get_grp_params (int natm_nl, int numSfDups, int indexSfGrp, int planeIndex, int *n_ret, int *istrt_ret, int *iend_ret) |
int | atmGrpMap (int istart, int nsend, int listsize, int *listpe, int AtmGrp, int dup, int planeIndex) |
int | gsprocNum (CPcharmParaInfo *sim, int state, int plane, int numInst) |
void | mapOutput () |
bool | findCuboid (int &x, int &y, int &z, int &order, int maxX, int maxY, int maxZ, int maxT, int volume, int vn) |
return the cuboid x,y,z of a subpartition exactly matching that volume | |
void | registersumFastDouble (void) |
CkReductionMsg * | sumFastDouble (int nMsg, CkReductionMsg **msgs) |
sum together matrices of doubles possibly faster than sum_double due to minimizing copies and using sameer's fastadd | |
void | create_Rho_fft_numbers (int nchareR, int nchareRHart, int rhoRsubplanes, int nplane, int sizeY, int ngridbHart, int *numRXRho, int *numRYRho, int *numRXEext, int *numRYEext, int *numSubGx) |
void | setTraceUserEvents () |
void | computeMapOffsets () |
void | paircalcstartup (pc::pcConfig *cfgSymmPC, pc::pcConfig *cfgAsymmPC, CPcharmParaInfo *sim, int doublePack) |
stuff to be include before the decl or else | |
void | orthostartup (cp::ortho::orthoConfig *orthoCfg, pc::pcConfig *cfgSymmPC, pc::pcConfig *cfgAsymmPC, CPcharmParaInfo *sim, PeListFactory *peList4PCmapping) |
void | init_eesNL_chares (int natm_nl, int natm_nl_grp_max, int doublePack, PeList *exclusion, CPcharmParaInfo *sim, UberCollection thisInstance) |
/addtogroup Particle More... | |
Variables | |
int | TimeKeeperID =0 |
std::vector< std::string > | TimeKeeperNames |
UberCollection | thisInstance |
int | numPes |
bool | fakeTorus |
readonly defined in cpaimd.C | |
MDINTEGRATE | readonly_mdintegrate |
MDATOMS | readonly_mdatoms |
MDINTER | readonly_mdinter |
MDINTRA | readonly_mdintra |
GENERAL_DATA | readonly_general_data |
CP | readonly_cp |
double | Timer |
readonly globals | |
int | nstates |
int | sizeX |
int | nchareG |
int | Ortho_UE_step2 |
int | Ortho_UE_step3 |
int | Ortho_UE_error |
bool | Ortho_use_local_cb |
int | done_init =0 |
int | planes_per_pe |
CkGroupID | mCastGrpId |
Multicast manager group that handles many mcast/redns in the code. Grep for info. | |
CkReduction::reducerType | complexVectorAdderType |
const char | OpenAtomRevision [] = INQUOTES(OPENATOM_REVISION) |
A global constant for use in the code. | |
CkReduction::reducerType | sumFastDoubleType |
cpaimd-charm-driver
This file contains cpaimd-charm-driver main. It creates and initializes all the arrays and libraries.
Definition in file cpaimd.C.
void control_physics_to_driver | ( | UberCollection | thisInstance | ) |
Get the atoms and the parainfo /////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////.
make a group : create a proxy for the atom class and also a reduction client
void create_Rho_fft_numbers | ( | int | nchareR, |
int | nchareRHart, | ||
int | rhoRsubplanes, | ||
int | nplane, | ||
int | sizeY, | ||
int | ngridbHart, | ||
int * | numRXRho, | ||
int * | numRYRho, | ||
int * | numRXEext, | ||
int * | numRYEext, | ||
int * | numSubGx | ||
) |
Simple case : everyone is the same size
Subplane case : different sizes with subplanes label
Definition at line 2948 of file cpaimd.C.
Referenced by init_state_chares().
void init_eesNL_chares | ( | int | natm_nl, |
int | natm_nl_grp_max, | ||
int | doublePack, | ||
PeList * | exclusion, | ||
CPcharmParaInfo * | sim, | ||
UberCollection | thisInstance | ||
) |
void init_PIBeads | ( | CPcharmParaInfo * | sim, |
UberCollection | thisInstance | ||
) |
Create the PIBeadAtoms array.
void init_state_chares | ( | int | natm_nl, |
int | natm_nl_grp_max, | ||
int | numSfGrps, | ||
int | doublePack, | ||
CPcharmParaInfo * | sim, | ||
UberCollection | thisInstance | ||
) |
Create the array elements for the GSpace, Particle and Real Space planes /////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////.
Useful Local variables
addtogroup mapping
Definition at line 1235 of file cpaimd.C.
References create_Rho_fft_numbers().
void setTraceUserEvents | ( | ) |
Set user trace events for projections optimizations
Definition at line 3028 of file cpaimd.C.
References IntegrateModForces_.