|
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_.