- Timestamp:
- Feb 17, 2012, 3:24:20 PM (13 years ago)
- Branches:
- Action_Thermostats, Add_AtomRandomPerturbation, Add_FitFragmentPartialChargesAction, Add_RotateAroundBondAction, Add_SelectAtomByNameAction, Added_ParseSaveFragmentResults, AddingActions_SaveParseParticleParameters, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_ParticleName_to_Atom, Adding_StructOpt_integration_tests, AtomFragments, Automaking_mpqc_open, AutomationFragmentation_failures, Candidate_v1.5.4, Candidate_v1.6.0, Candidate_v1.6.1, ChangeBugEmailaddress, ChangingTestPorts, ChemicalSpaceEvaluator, CombiningParticlePotentialParsing, Combining_Subpackages, Debian_Package_split, Debian_package_split_molecuildergui_only, Disabling_MemDebug, Docu_Python_wait, EmpiricalPotential_contain_HomologyGraph, EmpiricalPotential_contain_HomologyGraph_documentation, Enable_parallel_make_install, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, FitPartialCharges_GlobalError, Fix_BoundInBox_CenterInBox_MoleculeActions, Fix_ChargeSampling_PBC, Fix_ChronosMutex, Fix_FitPartialCharges, Fix_FitPotential_needs_atomicnumbers, Fix_ForceAnnealing, Fix_IndependentFragmentGrids, Fix_ParseParticles, Fix_ParseParticles_split_forward_backward_Actions, Fix_PopActions, Fix_QtFragmentList_sorted_selection, Fix_Restrictedkeyset_FragmentMolecule, Fix_StatusMsg, Fix_StepWorldTime_single_argument, Fix_Verbose_Codepatterns, Fix_fitting_potentials, Fixes, ForceAnnealing_goodresults, ForceAnnealing_oldresults, ForceAnnealing_tocheck, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, FragmentAction_writes_AtomFragments, FragmentMolecule_checks_bonddegrees, GeometryObjects, Gui_Fixes, Gui_displays_atomic_force_velocity, ImplicitCharges, IndependentFragmentGrids, IndependentFragmentGrids_IndividualZeroInstances, IndependentFragmentGrids_IntegrationTest, IndependentFragmentGrids_Sole_NN_Calculation, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, JobMarket_unresolvable_hostname_fix, MoreRobust_FragmentAutomation, ODR_violation_mpqc_open, PartialCharges_OrthogonalSummation, PdbParser_setsAtomName, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, Rewrite_FitPartialCharges, RotateToPrincipalAxisSystem_UndoRedo, SaturateAtoms_findBestMatching, SaturateAtoms_singleDegree, StoppableMakroAction, Subpackage_CodePatterns, Subpackage_JobMarket, Subpackage_LinearAlgebra, Subpackage_levmar, Subpackage_mpqc_open, Subpackage_vmg, Switchable_LogView, ThirdParty_MPQC_rebuilt_buildsystem, TrajectoryDependenant_MaxOrder, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps, TremoloParser_setsAtomName, Ubuntu_1604_changes, stable
- Children:
- ea7a50
- Parents:
- cdaae6
- git-author:
- Frederik Heber <heber@…> (02/08/12 17:36:46)
- git-committer:
- Frederik Heber <heber@…> (02/17/12 15:24:20)
- Location:
- src
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Atom/atom_bondedparticle.cpp
rcdaae6 r52ed5b 72 72 { 73 73 const BondList& ListOfBonds = getListOfBonds(); 74 *AdjacencyFile << getNr() +1<< "\t";74 *AdjacencyFile << getNr() << "\t"; 75 75 for (BondList::const_iterator Runner = ListOfBonds.begin(); Runner != ListOfBonds.end(); (++Runner)) 76 *AdjacencyFile << (*Runner)->GetOtherAtom(this)->getNr() +1<< "\t";76 *AdjacencyFile << (*Runner)->GetOtherAtom(this)->getNr() << "\t"; 77 77 *AdjacencyFile << endl; 78 78 }; … … 87 87 for (BondList::const_iterator Runner = ListOfBonds.begin(); Runner != ListOfBonds.end(); (++Runner)) 88 88 if (getNr() < (*Runner)->GetOtherAtom(this)->getNr()) 89 *BondFile << getNr() +1 << "\t" << (*Runner)->GetOtherAtom(this)->getNr()+1<< "\n";89 *BondFile << getNr() << "\t" << (*Runner)->GetOtherAtom(this)->getNr() << "\n"; 90 90 }; 91 91 -
src/Fragmentation/Fragmentation.cpp
rcdaae6 r52ed5b 419 419 { 420 420 Info info(__func__); 421 atom **SonList = new atom*[mol->getAtomCount() ];421 atom **SonList = new atom*[mol->getAtomCount()+1]; 422 422 molecule *Leaf = World::getInstance().createMolecule(); 423 423 424 for(int i=0;i< mol->getAtomCount();i++)424 for(int i=0;i<=mol->getAtomCount();i++) 425 425 SonList[i] = NULL; 426 426 … … 626 626 return false; 627 627 } 628 SortIndex = new int[mol->getAtomCount() ];629 for(int i=mol->getAtomCount() ;i--;)628 SortIndex = new int[mol->getAtomCount()+1]; 629 for(int i=mol->getAtomCount()+1;i--;) 630 630 SortIndex[i] = -1; 631 631 -
src/Graph/CheckAgainstAdjacencyFile.cpp
rcdaae6 r52ed5b 72 72 line >> AtomNr; 73 73 // parse into structure 74 if (AtomNr > =0) {75 const atom *Walker = World::getInstance().getAtom(AtomById(AtomNr ));74 if (AtomNr > 0) { 75 const atom *Walker = World::getInstance().getAtom(AtomById(AtomNr-1)); 76 76 ASSERT(Walker != NULL, 77 "CheckAgainstAdjacencyFile::ParseInExternalMap() - there is no atom with id "+toString(AtomNr )+".");77 "CheckAgainstAdjacencyFile::ParseInExternalMap() - there is no atom with id "+toString(AtomNr-1)+"."); 78 78 if (Walker == NULL) 79 79 return false; 80 80 // parse bond partner ids associated to AtomNr 81 81 while (line >> ws >> tmp) { 82 LOG(3, "INFO: Recognized bond partner " << tmp );83 ExternalAtomBondMap.insert( std::make_pair( AtomNr, tmp) );82 LOG(3, "INFO: Recognized bond partner " << tmp-1); 83 ExternalAtomBondMap.insert( std::make_pair(Walker->getId(), tmp-1) ); 84 84 } 85 85 } else { -
src/Graph/unittests/CheckAgainstAdjacencyFileUnitTest.cpp
rcdaae6 r52ed5b 48 48 49 49 static std::string adjacencyfile ="\ 50 0 1\n\ 51 1 0 2\n\ 52 2 1 3\n\ 53 3 2 4\n\ 54 4 3 5\n\ 55 5 4 6\n\ 56 6 5 7\n\ 57 7 6 8\n\ 58 8 7 9\n\ 59 9 8\n"; 60 61 static std::string wrongadjacencyfile1 ="\ 62 0 1\n\ 63 1 0 2\n\ 64 3 2 4\n\ 65 4 3 5\n\ 66 5 4 6\n\ 67 6 5 7\n\ 68 7 6 8\n\ 69 8 7 9\n\ 70 9 8\n"; 71 72 static std::string wrongadjacencyfile2 ="\ 73 0 1\n\ 74 1 0 2\n\ 50 1 2\n\ 75 51 2 1 3\n\ 76 52 3 2 4\n\ … … 81 57 8 7 9\n\ 82 58 9 8 10\n\ 83 10 9"; 59 10 9\n"; 60 61 static std::string wrongadjacencyfile1 ="\ 62 1 2\n\ 63 2 1 3\n\ 64 4 3 5\n\ 65 5 4 6\n\ 66 6 5 7\n\ 67 7 6 8\n\ 68 8 7 9\n\ 69 9 8 10\n\ 70 10 9\n"; 71 72 static std::string wrongadjacencyfile2 ="\ 73 1 2\n\ 74 2 1 3\n\ 75 3 2 4\n\ 76 4 3 5\n\ 77 5 4 6\n\ 78 6 5 7\n\ 79 7 6 8\n\ 80 8 7 9\n\ 81 9 8 10\n\ 82 10 9 11\n\ 83 11 10"; 84 84 85 85 // set up and tear down … … 202 202 203 203 // assert equality after parsing 204 CPPUNIT_ASSERT ( fileChecker.InternalAtomBondMap.size() ==fileChecker.ExternalAtomBondMap.size() );205 CPPUNIT_ASSERT ( fileChecker.InternalAtomBondMap ==fileChecker.ExternalAtomBondMap );204 CPPUNIT_ASSERT_EQUAL( fileChecker.InternalAtomBondMap.size(), fileChecker.ExternalAtomBondMap.size() ); 205 CPPUNIT_ASSERT_EQUAL( fileChecker.InternalAtomBondMap, fileChecker.ExternalAtomBondMap ); 206 206 CPPUNIT_ASSERT( fileChecker.CompareInternalExternalMap() ); 207 207 } -
src/molecule.cpp
rcdaae6 r52ed5b 66 66 AtomCount(this,boost::bind(&molecule::doCountAtoms,this),"AtomCount"), 67 67 BondCount(this,boost::bind(&molecule::doCountBonds,this),"BondCount"), 68 atomIdPool( 0, 20, 100),68 atomIdPool(1, 20, 100), 69 69 last_atom(0) 70 70 { … … 246 246 { 247 247 std::stringstream sstr; 248 sstr << _atom->getType()->getSymbol() << _atom->getNr() +1;248 sstr << _atom->getType()->getSymbol() << _atom->getNr(); 249 249 _atom->setName(sstr.str()); 250 250 } -
src/molecule_graph.cpp
rcdaae6 r52ed5b 258 258 259 259 // allocate and fill 260 LookupTable = new atom *[count ];260 LookupTable = new atom *[count+1]; 261 261 if (LookupTable == NULL) { 262 262 ELOG(0, "LookupTable memory allocation failed!"); … … 264 264 status = false; 265 265 } else { 266 for (int i=0;i< count;i++)266 for (int i=0;i<=count;i++) 267 267 LookupTable[i] = NULL; 268 268 for (molecule::iterator iter = begin(); iter != end(); ++iter) { 269 269 AtomNo = (*iter)->GetTrueFather()->getNr(); 270 if ((AtomNo >= 0) && (AtomNo < count)) {271 //*out << "Setting LookupTable[" << AtomNo << "] to " << *(*iter) << endl;270 if ((AtomNo >= 0) && (AtomNo <= count)) { 271 LOG(3, "DEBUG: Setting LookupTable[" << AtomNo << "] to " << *(*iter)); 272 272 LookupTable[AtomNo] = (*iter); 273 273 } else { 274 ELOG(1, "Walker " << *(*iter) << " exceeded range of nuclear ids [0, " << count << " ).");274 ELOG(1, "Walker " << *(*iter) << " exceeded range of nuclear ids [0, " << count << "]."); 275 275 status = false; 276 276 break;
Note:
See TracChangeset
for help on using the changeset viewer.