Changeset 79398d for src


Ignore:
Timestamp:
Dec 14, 2012, 5:39:42 PM (12 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:
d058e6
Parents:
2dd305
git-author:
Frederik Heber <heber@…> (09/28/12 10:38:11)
git-committer:
Frederik Heber <heber@…> (12/14/12 17:39:42)
Message:

Extended map<IndexSet, MapType> in FragmentResults to a pair of values for both value and contribution.

Location:
src
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • src/Actions/FragmentationAction/FragmentationAutomationAction.cpp

    r2dd305 r79398d  
    416416    const IndexSet::ptr &index = *iter;
    417417    HomologyContainer::value_t value;
    418     std::map<IndexSet::ptr, MPQCDataFragmentMap_t>::const_iterator fragmentiter
     418    std::map<IndexSet::ptr, std::pair< MPQCDataFragmentMap_t, MPQCDataFragmentMap_t> >::const_iterator fragmentiter
    419419        = results.Result_perIndexSet_Fragment.find(index);
    420420    ASSERT( fragmentiter != results.Result_perIndexSet_Fragment.end(),
    421421        "appendToHomologyFile() - cannot find index "+toString(*index)
    422422        +" in FragmentResults.");
    423     value.first = boost::fusion::at_key<MPQCDataFused::fragment>(fragmentiter->second);
    424     std::map<IndexSet::ptr, MPQCDataEnergyMap_t>::const_iterator energyiter
     423    value.first = boost::fusion::at_key<MPQCDataFused::fragment>(fragmentiter->second.first);
     424    std::map<IndexSet::ptr, std::pair< MPQCDataEnergyMap_t, MPQCDataEnergyMap_t> >::const_iterator energyiter
    425425        = results.Result_perIndexSet_Energy.find(index);
    426426    ASSERT( energyiter != results.Result_perIndexSet_Energy.end(),
    427427        "appendToHomologyFile() - cannot find index "+toString(*index)
    428428        +" in FragmentResults.");
    429     value.second = boost::fusion::at_key<MPQCDataFused::energy_total>(energyiter->second);
     429    value.second = boost::fusion::at_key<MPQCDataFused::energy_total>(energyiter->second.second);
    430430    values.insert( std::make_pair( graph, value) );
    431431  }
  • src/Fragmentation/Automation/FragmentationChargeDensity.hpp

    r2dd305 r79398d  
    5151
    5252  //!> results per IndexSet of summed up sampled grid charge
    53   std::map<IndexSet::ptr, MPQCDataGridMap_t> Result_perIndexSet_Grid;
     53  std::map<IndexSet::ptr, std::pair<MPQCDataGridMap_t, MPQCDataGridMap_t> > Result_perIndexSet_Grid;
    5454  //!> results per IndexSet of summed up fragment positions and charges
    55   std::map<IndexSet::ptr, MPQCDataFragmentMap_t> Result_perIndexSet_Fragment;
     55  std::map<IndexSet::ptr, std::pair<MPQCDataFragmentMap_t, MPQCDataFragmentMap_t> > Result_perIndexSet_Fragment;
    5656};
    5757
  • src/Fragmentation/Automation/FragmentationResults.hpp

    r2dd305 r79398d  
    105105
    106106  //!> results per IndexSet of summed up energy
    107   std::map<IndexSet::ptr, MPQCDataEnergyMap_t> Result_perIndexSet_Energy;
     107  std::map<IndexSet::ptr, std::pair<MPQCDataEnergyMap_t,MPQCDataEnergyMap_t> > Result_perIndexSet_Energy;
    108108  //!> results per IndexSet of summed up sampled grid charge
    109   std::map<IndexSet::ptr, MPQCDataGridMap_t> Result_perIndexSet_Grid;
     109  std::map<IndexSet::ptr, std::pair<MPQCDataGridMap_t,MPQCDataGridMap_t> > Result_perIndexSet_Grid;
    110110  //!> results per IndexSet of summed up times
    111   std::map<IndexSet::ptr, MPQCDataTimeMap_t> Result_perIndexSet_Time;
     111  std::map<IndexSet::ptr, std::pair<MPQCDataTimeMap_t,MPQCDataTimeMap_t> > Result_perIndexSet_Time;
    112112  //!> results per IndexSet of summed up fragment positions and charges
    113   std::map<IndexSet::ptr, MPQCDataFragmentMap_t> Result_perIndexSet_Fragment;
     113  std::map<IndexSet::ptr, std::pair<MPQCDataFragmentMap_t,MPQCDataFragmentMap_t> > Result_perIndexSet_Fragment;
    114114  //!> results per IndexSet of summed up forces
    115   std::map<IndexSet::ptr, MPQCDataForceMap_t> Result_perIndexSet_Force;
     115  std::map<IndexSet::ptr, std::pair<MPQCDataForceMap_t, MPQCDataForceMap_t> > Result_perIndexSet_Force;
    116116  //!> results per IndexSet of summed up long range potential grids and energy
    117   std::map<IndexSet::ptr, VMGDataMap_t> Result_perIndexSet_LongRange;
     117  std::map<IndexSet::ptr, std::pair<VMGDataMap_t, VMGDataMap_t> > Result_perIndexSet_LongRange;
    118118  // we don't need the map pendant for Result_LongRangeIntegrated_fused, as this
    119119  // quantity makes sense only level-wise
  • src/Fragmentation/Summation/AllLevelOrthogonalSummator.hpp

    r2dd305 r79398d  
    4646      const std::map< JobId_t, size_t > &_MatrixNrLookup,
    4747      std::vector<MapType> &_levelresults,
    48       std::map<IndexSet::ptr, MapType> &_keysetresults) :
     48      std::map<IndexSet::ptr, std::pair<MapType, MapType> > &_keysetresults) :
    4949    subsetmap(_subsetmap),
    5050    data(_data),
     
    8989      const IndexSet::ptr &index = *indexsetiter;
    9090      // this either generates a new entry or updates the present one, as we obtain ref to value
    91       boost::fusion::at_key<MapKey>(keysetresults[index]) =
     91      boost::fusion::at_key<MapKey>(keysetresults[index].first) =
     92          sum_value.getValueForIndexSet(index);
     93      boost::fusion::at_key<MapKey>(keysetresults[index].second) =
    9294          sum_value.getContributionForIndexSet(index);
    9395    }
     
    105107  //!> vector of levelresults
    106108  std::vector<MapType> &levelresults;
    107   typedef std::pair< IndexSet::ptr, MapType > keysetresults_pair_t;
     109  typedef std::pair< IndexSet::ptr, std::pair<MapType, MapType> > keysetresults_pair_t;
    108110  //!> typedef for map for keyset and each resulting value
    109   typedef std::map<IndexSet::ptr, MapType> keysetresults_t;
     111  typedef std::map<IndexSet::ptr, std::pair<MapType, MapType> > keysetresults_t;
    110112  //!> map for IndexSet and its associated contribution
    111113  keysetresults_t &keysetresults;
  • src/Fragmentation/Summation/AllLevelSummator.hpp

    r2dd305 r79398d  
    4646      const std::map< JobId_t, size_t > &_MatrixNrLookup,
    4747      std::vector<MapType> &_levelresults,
    48       std::map<IndexSet::ptr, MapType> &_keysetresults) :
     48      std::map<IndexSet::ptr, std::pair<MapType, MapType> > &_keysetresults) :
    4949    subsetmap(_subsetmap),
    5050    data(_data),
     
    8989      const IndexSet::ptr &index = *indexsetiter;
    9090      // this either generates a new entry or updates the present one, as we obtain ref to value
    91       boost::fusion::at_key<MapKey>(keysetresults[index]) =
     91      boost::fusion::at_key<MapKey>(keysetresults[index].first) =
     92          sum_value.getValueForIndexSet(index);
     93      boost::fusion::at_key<MapKey>(keysetresults[index].second) =
    9294          sum_value.getContributionForIndexSet(index);
    9395    }
     
    105107  //!> vector of levelresults
    106108  std::vector<MapType> &levelresults;
    107   typedef std::pair< IndexSet::ptr, MapType > keysetresults_pair_t;
     109  typedef std::pair< IndexSet::ptr, std::pair<MapType, MapType> > keysetresults_pair_t;
    108110  //!> typedef for map for keyset and each resulting value
    109   typedef std::map<IndexSet::ptr, MapType> keysetresults_t;
     111  typedef std::map<IndexSet::ptr, std::pair<MapType, MapType> > keysetresults_t;
    110112  //!> map for IndexSet and its associated contribution
    111113  keysetresults_t &keysetresults;
  • src/Fragmentation/Summation/OrthogonalSumUpPerLevel.hpp

    r2dd305 r79398d  
    3535    SubsetMap::ptr &subsetmap,
    3636    std::vector<TypeMap> &levelresults,
    37     std::map<IndexSet::ptr, TypeMap> &keysetresults
     37    std::map<IndexSet::ptr, std::pair<TypeMap, TypeMap> > &keysetresults
    3838    )
    3939{
  • src/Fragmentation/Summation/SumUpPerLevel.hpp

    r2dd305 r79398d  
    3434    SubsetMap::ptr &subsetmap,
    3535    std::vector<TypeMap> &levelresults,
    36     std::map<IndexSet::ptr, TypeMap> &keysetresults
     36    std::map<IndexSet::ptr, std::pair<TypeMap, TypeMap> > &keysetresults
    3737    )
    3838{
Note: See TracChangeset for help on using the changeset viewer.