Changeset f5d7e1
- Timestamp:
- Oct 17, 2008, 1:24:10 PM (17 years ago)
- Children:
- 59f86c
- Parents:
- fa2d7d
- File:
-
- 1 edited
-
molecuilder/src/molecules.cpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
molecuilder/src/molecules.cpp
rfa2d7d rf5d7e1 2942 2942 while (MolecularWalker->next != NULL) { 2943 2943 MolecularWalker = MolecularWalker->next; 2944 *out << Verbose(0) << "Analysing the cycles of subgraph " << MolecularWalker->Leaf << " with nr. " << FragmentCounter << "." << endl;2945 2944 LocalBackEdgeStack = new StackClass<bond *> (MolecularWalker->Leaf->BondCount); 2946 2945 // // check the list of local atoms for debugging … … 2951 2950 // else 2952 2951 // *out << "\t" << ListOfLocalAtoms[FragmentCounter][i]->Name; 2952 *out << Verbose(0) << "Gathering local back edges for subgraph " << MolecularWalker->Leaf << " with nr. " << FragmentCounter << "." << endl; 2953 2953 MolecularWalker->Leaf->PickLocalBackEdges(out, ListOfLocalAtoms[FragmentCounter++], BackEdgeStack, LocalBackEdgeStack); 2954 *out << Verbose(0) << "Analysing the cycles of subgraph " << MolecularWalker->Leaf << " with nr. " << FragmentCounter << "." << endl; 2954 2955 MolecularWalker->Leaf->CyclicStructureAnalysis(out, LocalBackEdgeStack, MinimumRingSize); 2956 *out << Verbose(0) << "Done with Analysing the cycles of subgraph " << MolecularWalker->Leaf << " with nr. " << FragmentCounter << "." << endl; 2955 2957 delete(LocalBackEdgeStack); 2956 2958 } … … 3094 3096 do { // go through all bonds and push local ones 3095 3097 Walker = ListOfLocalAtoms[Binder->leftatom->nr]; // get one atom in the reference molecule 3096 if (Walker == NULL) // if this Walker exists in the subgraph ...3097 continue;3098 for(int i=0;i<NumberOfBondsPerAtom[Walker->nr];i++) { // go through the local list of bonds3099 OtherAtom = ListOfBondsPerAtom[Walker->nr][i]->GetOtherAtom(Walker); 3100 if (OtherAtom == ListOfLocalAtoms[Binder->rightatom->nr]) { // found the bond3101 LocalStack->Push(ListOfBondsPerAtom[Walker->nr][i]);3102 break;3103 }3104 }3098 if (Walker != NULL) // if this Walker exists in the subgraph ... 3099 for(int i=0;i<NumberOfBondsPerAtom[Walker->nr];i++) { // go through the local list of bonds 3100 OtherAtom = ListOfBondsPerAtom[Walker->nr][i]->GetOtherAtom(Walker); 3101 if (OtherAtom == ListOfLocalAtoms[Binder->rightatom->nr]) { // found the bond 3102 LocalStack->Push(ListOfBondsPerAtom[Walker->nr][i]); 3103 *out << Verbose(3) << "Found local edge " << *(ListOfBondsPerAtom[Walker->nr][i]) << "." << endl; 3104 break; 3105 } 3106 } 3105 3107 Binder = ReferenceStack->PopFirst(); // loop the stack for next item 3108 *out << Verbose(3) << "Current candidate edge " << Binder << "." << endl; 3106 3109 ReferenceStack->Push(Binder); 3107 3110 } while (FirstBond != Binder);
Note:
See TracChangeset
for help on using the changeset viewer.
