Ignore:
Timestamp:
Jun 11, 2012, 9:53:19 AM (13 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, Candidate_v1.7.0, 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:
95f965
Parents:
b9c69d
git-author:
Michael Ankele <ankele@…> (04/24/12 13:55:16)
git-committer:
Frederik Heber <heber@…> (06/11/12 09:53:19)
Message:

disastrously big and ugly commit

  • using new Parameter<T> classes:
    • Actions
    • Queries (all UIs)
  • TODO:
    • actions crash cause Value is unset
    • no query<BoxVector>
Location:
src/Actions/AnalysisAction
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • src/Actions/AnalysisAction/DipoleAngularCorrelationAction.cpp

    rb9c69d rf10b0c  
    5656
    5757  // select atoms and obtain zero dipole orientation
    58   Formula DipoleFormula(params.DipoleFormula);
    59   World::getInstance().setTime(params.timestepzero);
     58  Formula DipoleFormula(params.DipoleFormula.get());
     59  World::getInstance().setTime(params.timestepzero.get());
    6060  World::getInstance().clearMoleculeSelection(); // TODO: This should be done in setTime or where molecules are re-done
    6161  World::getInstance().selectAllMolecules(MoleculeByFormula(DipoleFormula));
     
    7171      +toString(DipoleFormula)+" selects no atoms.");
    7272  range<size_t> timesteps = getMaximumTrajectoryBounds(atoms);
    73   ASSERT(params.timestepzero < timesteps.first,
     73  ASSERT(params.timestepzero.get() < timesteps.first,
    7474    "AnalysisDipoleAngularCorrelationAction::performCall() - time step zero "
    75     +toString(params.timestepzero)+" is beyond trajectory range ("
     75    +toString(params.timestepzero.get())+" is beyond trajectory range ("
    7676    +toString(timesteps.first)+") of some atoms.");
    77   for (size_t step = params.timestepzero; step < timesteps.first; ++step) {
     77  for (size_t step = params.timestepzero.get(); step < timesteps.first; ++step) {
    7878    // calculate dipoles relative to zero orientation
    7979    DipoleAngularCorrelationMap *correlationmap = NULL;
     
    8787    // output correlation map
    8888    ofstream output;
    89     std::string filename = params.outputname.string()+"."+stepname+".dat";
     89    std::string filename = params.outputname.get().string()+"."+stepname+".dat";
    9090    output.open(filename.c_str());
    9191    OutputCorrelationMap<DipoleAngularCorrelationMap>(&output, correlationmap, OutputDipoleAngularCorrelation_Header, OutputDipoleAngularCorrelation_Value);
     
    9393
    9494    // bin map
    95     BinPairMap *binmap = BinData( correlationmap, params.BinWidth, params.BinStart, params.BinEnd );
     95    BinPairMap *binmap = BinData( correlationmap, params.BinWidth.get(), params.BinStart.get(), params.BinEnd.get() );
    9696
    9797    // free correlation map
     
    100100    // output binned map
    101101    ofstream binoutput;
    102     std::string binfilename = params.binoutputname.string()+"."+stepname+".dat";
     102    std::string binfilename = params.binoutputname.get().string()+"."+stepname+".dat";
    103103    binoutput.open(binfilename.c_str());
    104104    OutputCorrelationMap<BinPairMap> ( &binoutput, binmap, OutputCorrelation_Header, OutputCorrelation_Value );
  • src/Actions/AnalysisAction/DipoleCorrelationAction.cpp

    rb9c69d rf10b0c  
    4848
    4949  // execute action
    50   output.open(params.outputname.string().c_str());
    51   binoutput.open(params.binoutputname.string().c_str());
     50  output.open(params.outputname.get().string().c_str());
     51  binoutput.open(params.binoutputname.get().string().c_str());
    5252  DipoleCorrelationMap *correlationmap = NULL;
    5353  std::vector<molecule*> molecules = World::getInstance().getSelectedMolecules();
    5454  LOG(0, "STATUS: There are " << molecules.size() << " selected molecules.");
    55   ASSERT(!params.periodic, "AnalysisDipoleCorrelationAction() - periodic case not implemented.");
     55  ASSERT(!params.periodic.get(), "AnalysisDipoleCorrelationAction() - periodic case not implemented.");
    5656  correlationmap = DipoleCorrelation(molecules);
    5757  OutputCorrelationMap<DipoleCorrelationMap>(&output, correlationmap, OutputDipoleCorrelation_Header, OutputDipoleCorrelation_Value);
    58   binmap = BinData( correlationmap, params.BinWidth, params.BinStart, params.BinEnd );
     58  binmap = BinData( correlationmap, params.BinWidth.get(), params.BinStart.get(), params.BinEnd.get() );
    5959  OutputCorrelationMap<BinPairMap> ( &binoutput, binmap, OutputCorrelation_Header, OutputCorrelation_Value );
    6060  delete(binmap);
  • src/Actions/AnalysisAction/PairCorrelationAction.cpp

    rb9c69d rf10b0c  
    5151
    5252  // execute action
    53   output.open(params.outputname.string().c_str());
    54   binoutput.open(params.binoutputname.string().c_str());
     53  output.open(params.outputname.get().string().c_str());
     54  binoutput.open(params.binoutputname.get().string().c_str());
    5555  PairCorrelationMap *correlationmap = NULL;
    56   ASSERT(params.elements.size() == 2,
     56  ASSERT(params.elements.get().size() == 2,
    5757      "AnalysisPairCorrelationAction::performCall() - Exactly two elements are required for pair correlation.");
    58   std::vector<const element *>::const_iterator elemiter = params.elements.begin();
     58  std::vector<const element *>::const_iterator elemiter = params.elements.get().begin();
    5959  const World::AtomComposite atoms_first = World::getInstance().getAllAtoms(AtomByType(*(elemiter++)));
    6060  const World::AtomComposite atoms_second = World::getInstance().getAllAtoms(AtomByType(*(elemiter++)));
    61   ASSERT(elemiter == params.elements.end(),
     61  ASSERT(elemiter == params.elements.get().end(),
    6262      "AnalysisPairCorrelationAction::performCall() - Exactly two elements are required for pair correlation.");
    63   double max_distance = params.BinEnd;
    64   if (params.BinEnd <= 0.) {
     63  double max_distance = params.BinEnd.get();
     64  if (params.BinEnd.get() <= 0.) {
    6565    // find max distance within box from diagonal
    6666    const RealSpaceMatrix &M = World::getInstance().getDomain().getM();
     
    6969  correlationmap = PairCorrelation(atoms_first, atoms_second, max_distance);
    7070  OutputCorrelationMap<PairCorrelationMap>(&output, correlationmap, OutputPairCorrelation_Header, OutputPairCorrelation_Value);
    71   binmap = BinData( correlationmap, params.BinWidth, params.BinStart, params.BinEnd );
     71  binmap = BinData( correlationmap, params.BinWidth.get(), params.BinStart.get(), params.BinEnd.get() );
    7272  OutputCorrelationMap<BinPairMap> ( &binoutput, binmap, OutputCorrelation_Header, OutputCorrelation_Value );
    7373  delete(binmap);
  • src/Actions/AnalysisAction/PointCorrelationAction.cpp

    rb9c69d rf10b0c  
    5050
    5151  // execute action
    52   output.open(params.outputname.string().c_str());
    53   binoutput.open(params.binoutputname.string().c_str());
    54   cout << "Point to correlate to is  " << params.Point << endl;
     52  output.open(params.outputname.get().string().c_str());
     53  binoutput.open(params.binoutputname.get().string().c_str());
     54  cout << "Point to correlate to is  " << params.Point.get() << endl;
    5555  CorrelationToPointMap *correlationmap = NULL;
    56   for(std::vector<const element *>::iterator iter = params.elements.begin(); iter != params.elements.end(); ++iter)
     56  for(std::vector<const element *>::const_iterator iter = params.elements.get().begin(); iter != params.elements.get().end(); ++iter)
    5757    cout << "element is " << (*iter)->getSymbol() << endl;
    5858  std::vector<molecule*> molecules = World::getInstance().getSelectedMolecules();
    59   if (params.periodic)
    60     correlationmap  = PeriodicCorrelationToPoint(molecules, params.elements, &params.Point, ranges);
     59  if (params.periodic.get())
     60    correlationmap  = PeriodicCorrelationToPoint(molecules, params.elements.get(), &params.Point.get(), ranges);
    6161  else
    62     correlationmap = CorrelationToPoint(molecules, params.elements, &params.Point);
     62    correlationmap = CorrelationToPoint(molecules, params.elements.get(), &params.Point.get());
    6363  OutputCorrelationMap<CorrelationToPointMap>(&output, correlationmap, OutputCorrelationToPoint_Header, OutputCorrelationToPoint_Value);
    64   binmap = BinData( correlationmap, params.BinWidth, params.BinStart, params.BinEnd );
     64  binmap = BinData( correlationmap, params.BinWidth.get(), params.BinStart.get(), params.BinEnd.get() );
    6565  OutputCorrelationMap<BinPairMap> ( &binoutput, binmap, OutputCorrelation_Header, OutputCorrelation_Value );
    6666  delete(binmap);
  • src/Actions/AnalysisAction/SurfaceCorrelationAction.cpp

    rb9c69d rf10b0c  
    5353
    5454  // execute action
    55   output.open(params.outputname.string().c_str());
    56   binoutput.open(params.binoutputname.string().c_str());
    57   molecule *surfacemol = const_cast<molecule *>(params.Boundary);
     55  output.open(params.outputname.get().string().c_str());
     56  binoutput.open(params.binoutputname.get().string().c_str());
     57  molecule *surfacemol = const_cast<molecule *>(params.Boundary.get());
    5858  ASSERT(surfacemol != NULL, "No molecule specified for SurfaceCorrelation.");
    5959  const double radius = 4.;
    6060  double LCWidth = 20.;
    61   if (params.BinEnd > 0) {
    62     if (params.BinEnd > 2.*radius)
    63       LCWidth = params.BinEnd;
     61  if (params.BinEnd.get() > 0) {
     62    if (params.BinEnd.get() > 2.*radius)
     63      LCWidth = params.BinEnd.get();
    6464    else
    6565      LCWidth = 2.*radius;
     
    7676  FindNonConvexBorder(surfacemol, TesselStruct, LCList, radius, NULL);
    7777  CorrelationToSurfaceMap *surfacemap = NULL;
    78   if (params.periodic)
    79     surfacemap = PeriodicCorrelationToSurface( molecules, params.elements, TesselStruct, LCList, ranges);
     78  if (params.periodic.get())
     79    surfacemap = PeriodicCorrelationToSurface( molecules, params.elements.get(), TesselStruct, LCList, ranges);
    8080  else
    81     surfacemap = CorrelationToSurface( molecules, params.elements, TesselStruct, LCList);
     81    surfacemap = CorrelationToSurface( molecules, params.elements.get(), TesselStruct, LCList);
    8282  delete LCList;
    8383  OutputCorrelationMap<CorrelationToSurfaceMap>(&output, surfacemap, OutputCorrelationToSurface_Header, OutputCorrelationToSurface_Value);
     
    8989      ELOG(1, "Linked Cell width is smaller than the found range of values! Bins can only be correct up to: " << radius << ".");
    9090  }
    91   binmap = BinData( surfacemap, params.BinWidth, params.BinStart, params.BinEnd );
     91  binmap = BinData( surfacemap, params.BinWidth.get(), params.BinStart.get(), params.BinEnd.get() );
    9292  OutputCorrelationMap<BinPairMap> ( &binoutput, binmap, OutputCorrelation_Header, OutputCorrelation_Value );
    9393  delete TesselStruct;  // surfacemap contains refs to triangles! delete here, not earlier!
Note: See TracChangeset for help on using the changeset viewer.