| 99 |
|
return NULL; |
| 100 |
|
} |
| 101 |
|
|
| 102 |
+ |
void printMe( void ){ |
| 103 |
+ |
|
| 104 |
+ |
std::cerr << "LinkedAtype " << name << ": ident = " << ident << "\n"; |
| 105 |
+ |
if( next != NULL ) next->printMe(); |
| 106 |
+ |
|
| 107 |
+ |
} |
| 108 |
+ |
|
| 109 |
|
void add( atomStruct &info ){ |
| 110 |
|
|
| 111 |
|
// check for duplicates |
| 121 |
|
|
| 122 |
|
if( next != NULL ) next->add(info); |
| 123 |
|
else{ |
| 124 |
< |
next = new LinkedType(); |
| 124 |
> |
next = new LinkedAtomType(); |
| 125 |
|
strcpy(next->name, info.name); |
| 126 |
|
next->isDipole = info.isDipole; |
| 127 |
|
next->isSSD = info.isSSD; |
| 147 |
|
info.dipole = dipole; |
| 148 |
|
info.w0 = w0; |
| 149 |
|
info.v0 = v0; |
| 150 |
+ |
info.ident = ident; |
| 151 |
|
info.last = 0; |
| 152 |
|
} |
| 153 |
|
|
| 205 |
|
|
| 206 |
|
if( next != NULL ) next->add(info); |
| 207 |
|
else{ |
| 208 |
< |
next = new LinkedType(); |
| 208 |
> |
next = new LinkedBondType(); |
| 209 |
|
strcpy(next->nameA, info.nameA); |
| 210 |
|
strcpy(next->nameB, info.nameB); |
| 211 |
|
strcpy(next->type, info.type); |
| 274 |
|
|
| 275 |
|
if( next != NULL ) next->add(info); |
| 276 |
|
else{ |
| 277 |
< |
next = new LinkedType(); |
| 277 |
> |
next = new LinkedBendType(); |
| 278 |
|
strcpy(next->nameA, info.nameA); |
| 279 |
|
strcpy(next->nameB, info.nameB); |
| 280 |
|
strcpy(next->nameC, info.nameC); |
| 358 |
|
|
| 359 |
|
if( next != NULL ) next->add(info); |
| 360 |
|
else{ |
| 361 |
< |
next = new LinkedType(); |
| 361 |
> |
next = new LinkedTorsionType(); |
| 362 |
|
strcpy(next->nameA, info.nameA); |
| 363 |
|
strcpy(next->nameB, info.nameB); |
| 364 |
|
strcpy(next->nameC, info.nameC); |
| 742 |
|
recieveFrcStruct( &atomInfo, mpiAtomStructType ); |
| 743 |
|
} |
| 744 |
|
} |
| 745 |
+ |
|
| 746 |
|
#endif // is_mpi |
| 747 |
|
|
| 748 |
+ |
|
| 749 |
+ |
|
| 750 |
|
// call new A_types in fortran |
| 751 |
|
|
| 752 |
|
int isError; |
| 853 |
|
"TraPPE_Ex bond structures read successfully." ); |
| 854 |
|
MPIcheckPoint(); |
| 855 |
|
|
| 856 |
< |
currentBondType = headBondType; |
| 856 |
> |
currentBondType = headBondType->next; |
| 857 |
|
while( currentBondType != NULL ){ |
| 858 |
|
currentBondType->duplicate( bondInfo ); |
| 859 |
|
sendFrcStruct( &bondInfo, mpiBondStructType ); |
| 868 |
|
|
| 869 |
|
// listen for node 0 to send out the force params |
| 870 |
|
|
| 871 |
< |
MPIcheckPoint(); |
| 871 |
> |
MPIcheckPoint(); |
| 872 |
|
|
| 873 |
|
headBondType = new LinkedBondType; |
| 874 |
|
recieveFrcStruct( &bondInfo, mpiBondStructType ); |
| 931 |
|
"TraPPE_Ex bend structures read successfully." ); |
| 932 |
|
MPIcheckPoint(); |
| 933 |
|
|
| 934 |
< |
currentBendType = headBendType; |
| 934 |
> |
currentBendType = headBendType->next; |
| 935 |
|
while( currentBendType != NULL ){ |
| 936 |
|
currentBendType->duplicate( bendInfo ); |
| 937 |
|
sendFrcStruct( &bendInfo, mpiBendStructType ); |
| 1011 |
|
"TraPPE_Ex torsion structures read successfully." ); |
| 1012 |
|
MPIcheckPoint(); |
| 1013 |
|
|
| 1014 |
< |
currentTorsionType = headTorsionType; |
| 1014 |
> |
currentTorsionType = headTorsionType->next; |
| 1015 |
|
while( currentTorsionType != NULL ){ |
| 1016 |
|
currentTorsionType->duplicate( torsionInfo ); |
| 1017 |
|
sendFrcStruct( &torsionInfo, mpiTorsionStructType ); |
| 1038 |
|
} |
| 1039 |
|
#endif // is_mpi |
| 1040 |
|
|
| 1041 |
+ |
entry_plug->useLJ = 1; |
| 1042 |
|
} |
| 1043 |
|
|
| 1044 |
|
|
| 1083 |
|
|
| 1084 |
|
DirectionalAtom* dAtom; |
| 1085 |
|
|
| 1086 |
< |
for( i=0; i<nAtoms; i++ ){ |
| 1086 |
> |
for(int i=0; i<nAtoms; i++ ){ |
| 1087 |
|
|
| 1088 |
|
currentAtomType = headAtomType->find( the_atoms[i]->getType() ); |
| 1089 |
|
if( currentAtomType == NULL ){ |
| 1150 |
|
} |
| 1151 |
|
} |
| 1152 |
|
} |
| 1141 |
– |
|
| 1142 |
– |
|
| 1143 |
– |
#ifdef IS_MPI |
| 1144 |
– |
sprintf( checkPointMsg, "TraPPE_Ex atoms initialized succesfully" ); |
| 1145 |
– |
MPIcheckPoint(); |
| 1146 |
– |
#endif // is_mpi |
| 1147 |
– |
|
| 1153 |
|
} |
| 1154 |
|
|
| 1155 |
|
void TraPPE_ExFF::initializeBonds( int nBonds, Bond** bondArray, |
| 1188 |
|
entry_plug->n_constraints++; |
| 1189 |
|
} |
| 1190 |
|
} |
| 1186 |
– |
|
| 1187 |
– |
#ifdef IS_MPI |
| 1188 |
– |
sprintf( checkPointMsg, "TraPPE_Ex bonds initialized succesfully" ); |
| 1189 |
– |
MPIcheckPoint(); |
| 1190 |
– |
#endif // is_mpi |
| 1191 |
– |
|
| 1191 |
|
} |
| 1192 |
|
|
| 1193 |
|
void TraPPE_ExFF::initializeBends( int nBends, Bend** bendArray, |
| 1269 |
|
} |
| 1270 |
|
} |
| 1271 |
|
} |
| 1273 |
– |
|
| 1274 |
– |
#ifdef IS_MPI |
| 1275 |
– |
sprintf( checkPointMsg, "TraPPE_Ex bends initialized succesfully" ); |
| 1276 |
– |
MPIcheckPoint(); |
| 1277 |
– |
#endif // is_mpi |
| 1278 |
– |
|
| 1272 |
|
} |
| 1273 |
|
|
| 1274 |
|
void TraPPE_ExFF::initializeTorsions( int nTorsions, Torsion** torsionArray, |
| 1316 |
|
torsionArray[i] = cTors; |
| 1317 |
|
} |
| 1318 |
|
} |
| 1326 |
– |
|
| 1327 |
– |
#ifdef IS_MPI |
| 1328 |
– |
sprintf( checkPointMsg, "TraPPE_Ex torsions initialized succesfully" ); |
| 1329 |
– |
MPIcheckPoint(); |
| 1330 |
– |
#endif // is_mpi |
| 1331 |
– |
|
| 1319 |
|
} |
| 1320 |
|
|
| 1321 |
|
void TraPPE_ExFF::fastForward( char* stopText, char* searchOwner ){ |