Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

Node.C File Reference

#include <unistd.h>
#include "InfoStream.h"
#include "Node.decl.h"
#include "Node.h"
#include "ProcessorPrivate.h"
#include "Debug.h"
#include <stdio.h>
#include <converse.h>
#include "memusage.h"
#include "IMDOutput.h"
#include "Lattice.h"
#include "ComputeMsmMsa.h"
#include "ComputeMsm.h"
#include "main.decl.h"
#include "main.h"
#include "WorkDistrib.h"
#include "PatchMgr.h"
#include "Patch.h"
#include "Compute.h"
#include "ComputeMap.h"
#include "ComputeMgr.h"
#include "Molecule.h"
#include "HomePatchList.h"
#include "AtomMap.h"
#include "Sequencer.h"
#include "Controller.h"
#include "NamdState.h"
#include "Output.h"
#include "ProxyMgr.h"
#include "PatchMap.h"
#include "PatchMap.inl"
#include "Parameters.h"
#include "SimParameters.h"
#include "Communicate.h"
#include "LdbCoordinator.h"
#include "ScriptTcl.h"
#include "ComputeMgr.decl.h"
#include "ComputePmeMgr.decl.h"
#include "ComputeGridForceMgr.decl.h"
#include "OptPmeMgr.decl.h"
#include "Sync.h"
#include "BackEnd.h"
#include "PDB.h"
#include "packmsg.h"
#include "CollectionMgr.decl.h"
#include "ParallelIOMgr.decl.h"
#include "Random.h"
#include "DumpBench.h"
#include "Node.def.h"

Go to the source code of this file.

Defines

#define MIN_DEBUG_LEVEL   3

Functions

void registerUserEventsForAllComputeObjs (void)

Variables

int eventEndOfTimeStep
double startupTime
SimParametersnode_simParameters
Parametersnode_parameters
Moleculenode_molecule
char * gNAMDBinaryName


Define Documentation

#define MIN_DEBUG_LEVEL   3
 

Copyright (c) 1995, 1996, 1997, 1998, 1999, 2000 by The Board of Trustees of the University of Illinois. All rights reserved.

Definition at line 24 of file Node.C.


Function Documentation

void registerUserEventsForAllComputeObjs void   ) 
 

Definition at line 593 of file ComputeMgr.C.

References computeAnglesType, computeAnisoType, computeBondsType, computeConsForceType, computeConsTorqueType, computeCrosstermsType, computeCylindricalBCType, computeDihedralsType, computeEFieldType, computeEwaldType, computeExclsType, computeExtType, computeFullDirectType, computeGlobalType, computeGridForceType, computeImpropersType, computeLCPOType, computeNonbondedPairType, computeNonbondedSelfType, computePmeType, computeRestraintsType, computeSelfAnglesType, computeSelfAnisoType, computeSelfBondsType, computeSelfCrosstermsType, computeSelfDihedralsType, computeSelfExclsType, computeSelfImpropersType, computeSelfTholeType, computeSphericalBCType, computeStirType, computeTclBCType, computeTholeType, PatchMap::gridsize_a(), PatchMap::gridsize_b(), PatchMap::gridsize_c(), PatchMap::index_a(), PatchMap::index_b(), PatchMap::index_c(), NAMD_bug(), ComputeMap::numComputes(), PatchMap::Object(), ComputeMap::Object(), Lattice::offset_a(), Lattice::offset_b(), Lattice::offset_c(), ComputeMap::pid(), TRACE_COMPOBJ_IDOFFSET, ComputeMap::trans(), and ComputeMap::type().

Referenced by Node::startup().

00594 {
00595 #ifdef TRACE_COMPUTE_OBJECTS
00596     ComputeMap *map = ComputeMap::Object();
00597     PatchMap *pmap = PatchMap::Object();     
00598     char user_des[50];
00599     int p1, p2;
00600     int adim, bdim, cdim;
00601     int t1, t2;
00602     int x1, y1, z1, x2, y2, z2;
00603     int dx, dy, dz;
00604     for (int i=0; i<map->numComputes(); i++)
00605     {
00606         memset(user_des, 0, 50);
00607         switch ( map->type(i) )
00608         {
00609         case computeNonbondedSelfType:
00610             sprintf(user_des, "computeNonBondedSelfType_%d_pid_%d", i, map->pid(i,0));
00611             break;
00612         case computeLCPOType:
00613             sprintf(user_des, "computeLCPOType_%d_pid_%d", i, map->pid(i,0));
00614             break;
00615         case computeNonbondedPairType:
00616             adim = pmap->gridsize_a();
00617             bdim = pmap->gridsize_b();
00618             cdim = pmap->gridsize_c();
00619             p1 = map->pid(i, 0);
00620             t1 = map->trans(i, 0);
00621             x1 = pmap->index_a(p1) + adim * Lattice::offset_a(t1);
00622             y1 = pmap->index_b(p1) + bdim * Lattice::offset_b(t1);
00623             z1 = pmap->index_c(p1) + cdim * Lattice::offset_c(t1);
00624             p2 = map->pid(i, 1);
00625             t2 = map->trans(i, 1);
00626             x2 = pmap->index_a(p2) + adim * Lattice::offset_a(t2);
00627             y2 = pmap->index_b(p2) + bdim * Lattice::offset_b(t2);
00628             z2 = pmap->index_c(p2) + cdim * Lattice::offset_c(t2);
00629             dx = abs(x1-x2);
00630             dy = abs(y1-y2);
00631             dz = abs(z1-z2);
00632             sprintf(user_des, "computeNonBondedPairType_%d(%d,%d,%d)", i, dx,dy,dz);
00633             break;
00634         case computeExclsType:
00635             sprintf(user_des, "computeExclsType_%d", i);
00636             break;
00637         case computeBondsType:
00638             sprintf(user_des, "computeBondsType_%d", i);
00639             break;
00640         case computeAnglesType:
00641             sprintf(user_des, "computeAnglesType_%d", i);
00642             break;
00643         case computeDihedralsType:
00644             sprintf(user_des, "computeDihedralsType_%d", i);
00645             break;
00646         case computeImpropersType:
00647             sprintf(user_des, "computeImpropersType_%d", i);
00648             break;
00649         case computeTholeType:
00650             sprintf(user_des, "computeTholeType_%d", i);
00651             break;
00652         case computeAnisoType:
00653             sprintf(user_des, "computeAnisoType_%d", i);
00654             break;
00655         case computeCrosstermsType:
00656             sprintf(user_des, "computeCrosstermsType_%d", i);
00657             break;
00658         case computeSelfExclsType:
00659             sprintf(user_des, "computeSelfExclsType_%d", i);
00660             break;
00661         case computeSelfBondsType:
00662             sprintf(user_des, "computeSelfBondsType_%d", i);
00663             break;
00664         case computeSelfAnglesType:
00665             sprintf(user_des, "computeSelfAnglesType_%d", i);
00666             break;
00667         case computeSelfDihedralsType:
00668             sprintf(user_des, "computeSelfDihedralsType_%d", i);
00669             break;
00670         case computeSelfImpropersType:
00671             sprintf(user_des, "computeSelfImpropersType_%d", i);
00672             break;
00673         case computeSelfTholeType:
00674             sprintf(user_des, "computeSelfTholeType_%d", i);
00675             break;
00676         case computeSelfAnisoType:
00677             sprintf(user_des, "computeSelfAnisoType_%d", i);
00678             break;
00679         case computeSelfCrosstermsType:
00680             sprintf(user_des, "computeSelfCrosstermsType_%d", i);
00681             break;
00682 #ifdef DPMTA
00683         case computeDPMTAType:
00684             sprintf(user_des, "computeDPMTAType_%d", i);
00685             break;
00686 #endif
00687 #ifdef DPME
00688         case computeDPMEType:
00689             sprintf(user_des, "computeDPMEType_%d", i);
00690             break;
00691 #endif
00692         case computePmeType:
00693             sprintf(user_des, "computePMEType_%d", i);
00694             break;
00695         case computeEwaldType:
00696             sprintf(user_des, "computeEwaldType_%d", i);
00697             break;
00698         case computeFullDirectType:
00699             sprintf(user_des, "computeFullDirectType_%d", i);
00700             break;
00701         case computeGlobalType:
00702             sprintf(user_des, "computeGlobalType_%d", i);
00703             break;
00704         case computeStirType:
00705             sprintf(user_des, "computeStirType_%d", i);
00706             break;
00707         case computeExtType:
00708             sprintf(user_des, "computeExtType_%d", i);
00709             break;
00710         case computeEFieldType:
00711             sprintf(user_des, "computeEFieldType_%d", i);
00712             break;
00713             /* BEGIN gf */
00714         case computeGridForceType:
00715             sprintf(user_des, "computeGridForceType_%d", i);
00716             break;
00717             /* END gf */
00718         case computeSphericalBCType:
00719             sprintf(user_des, "computeSphericalBCType_%d", i);
00720             break;
00721         case computeCylindricalBCType:
00722             sprintf(user_des, "computeCylindricalBCType_%d", i);
00723             break;
00724         case computeTclBCType:
00725             sprintf(user_des, "computeTclBCType_%d", i);
00726             break;
00727         case computeRestraintsType:
00728             sprintf(user_des, "computeRestraintsType_%d", i);
00729             break;
00730         case computeConsForceType:
00731             sprintf(user_des, "computeConsForceType_%d", i);
00732             break;
00733         case computeConsTorqueType:
00734             sprintf(user_des, "computeConsTorqueType_%d", i);
00735             break;
00736         default:
00737             NAMD_bug("Unknown compute type in ComputeMgr::registerUserEventForAllComputeObjs().");
00738             break;
00739         }
00740         int user_des_len = strlen(user_des);
00741         char *user_des_cst = new char[user_des_len+1];
00742         memcpy(user_des_cst, user_des, user_des_len);
00743         user_des_cst[user_des_len] = 0;
00744         //Since the argument in traceRegisterUserEvent is supposed
00745         //to be a const string which will not be copied inside the
00746         //function when a new user event is created, user_des_cst 
00747         //has to be allocated in heap.
00748         int reEvenId = traceRegisterUserEvent(user_des_cst, TRACE_COMPOBJ_IDOFFSET+i);
00749         //printf("Register user event (%s) with id (%d)\n", user_des, reEvenId);
00750     }
00751 #else
00752     return;
00753 #endif
00754 }


Variable Documentation

int eventEndOfTimeStep
 

Definition at line 176 of file Node.C.

char* gNAMDBinaryName
 

Definition at line 189 of file BackEnd.C.

Referenced by BackEnd::init(), and Node::outputPatchComputeMaps().

Molecule* node_molecule
 

Definition at line 308 of file Node.C.

Parameters* node_parameters
 

Definition at line 307 of file Node.C.

SimParameters* node_simParameters
 

Definition at line 306 of file Node.C.

double startupTime
 

Definition at line 177 of file Node.C.

Referenced by Node::run(), and Node::startup().


Generated on Fri May 25 04:07:18 2012 for NAMD by  doxygen 1.3.9.1