Changeset 93d120 for src


Ignore:
Timestamp:
Oct 13, 2009, 4:42:30 PM (16 years ago)
Author:
Frederik Heber <heber@…>
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:
c4d4df
Parents:
407536
git-author:
Frederik Heber <heber@…> (10/13/09 16:40:34)
git-committer:
Frederik Heber <heber@…> (10/13/09 16:42:30)
Message:

Fixed broken test "Fragmentation - Fragmentation".

  • BUGFIX: Code was split into CombineAllOrderListIntoOne() and FreeAllOrdersList(). In the first the combining is done and because RootStack is needed, we push_back() all pop_front() all RootKeyNr. However, the loop test was still .empty(), which never happened and an error was thrown as same keysets were tried to be inserted (assumed). Now, we store the last RootKeyNr by back() and compare the current to it. Test runs through fine.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/molecule_fragmentation.cpp

    r407536 r93d120  
    12051205
    12061206  // prepare root level (SP = 0) and a loop bond denoting Root
    1207   for (int i=1;i<Order;i++)
     1207  for (int i=Order;i--;)
    12081208    FragmentSearch.BondsPerSPCount[i] = 0;
    12091209  FragmentSearch.BondsPerSPCount[0] = 1;
     
    13471347    while (Binder->next != FragmentSearch.BondsPerSPList[2*i+1]) {
    13481348      Binder = Binder->next;
    1349       SP ++;
     1349      SP++;
    13501350    }
    13511351  }
     
    14541454  int RootNr = 0;
    14551455  int RootKeyNr = 0;
     1456  int StartNr = 0;
    14561457  int counter = 0;
    14571458  int NumLevels = 0;
     
    14651466    counter = FragmentList->size();
    14661467  }
    1467   while (!RootStack.empty()) {
     1468
     1469  StartNr = RootStack.back();
     1470  do {
    14681471    RootKeyNr = RootStack.front();
    14691472    RootStack.pop_front();
     
    14771480    RootStack.push_back(Walker->nr);
    14781481    RootNr++;
    1479   }
     1482  } while (RootKeyNr != StartNr);
    14801483  return counter;
    14811484};
Note: See TracChangeset for help on using the changeset viewer.