- Timestamp:
- Feb 25, 2013, 5:28:58 PM (12 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:
- 1f3b2a
- Parents:
- d94e7e
- git-author:
- Frederik Heber <heber@…> (11/26/12 22:23:13)
- git-committer:
- Frederik Heber <heber@…> (02/25/13 17:28:58)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/FunctionApproximation/unittests/ExtractorsUnitTest.cpp
rd94e7e r691be4 84 84 } 85 85 86 // create charges 87 Fragment::charges_t charges; 88 charges += 6., 6., 1., 1., 1.; 89 86 90 // create distances 87 91 FunctionModel::arguments_t args = 88 Extractors::gatherAllDistanceArguments(positions, 0);92 Extractors::gatherAllDistanceArguments(positions, charges, 0); 89 93 CPPUNIT_ASSERT_EQUAL( (size_t)(5*4), args.size() ); 90 94 … … 94 98 } 95 99 96 /** UnitTest for gatherPosition OfTuples()100 /** UnitTest for gatherPositionsFromFragment() 97 101 */ 98 void ExtractorsTest::gatherPosition OfTuplesTest()102 void ExtractorsTest::gatherPositionsFromFragmentTest() 99 103 { 100 104 // create positions … … 110 114 charges += 6., 6., 1., 1., 1.; 111 115 112 // create Fragment 113 Fragment fragment(positions, charges); 116 { 117 // extract carbon pairs 118 Fragment::charges_t carbonpair; 119 carbonpair += 6.,6.; 120 Fragment::positions_t filtered_positions = 121 Extractors::gatherPositionsFromFragment(positions, charges, carbonpair); 122 CPPUNIT_ASSERT_EQUAL( (size_t)2, filtered_positions.size() ); 123 } 124 125 { 126 // extract hydrogen triple 127 Fragment::charges_t hydrogentriple; 128 hydrogentriple += 1.,1.,1.; 129 Fragment::positions_t filtered_positions = 130 Extractors::gatherPositionsFromFragment(positions, charges, hydrogentriple); 131 CPPUNIT_ASSERT_EQUAL( (size_t)3, filtered_positions.size() ); 132 } 133 } 134 135 /** UnitTest for gatherDistancesFromFragment() 136 */ 137 void ExtractorsTest::gatherDistancesFromFragmentTest() 138 { 139 // create positions 140 Fragment::positions_t positions; 141 Fragment::position_t pos(3, 0.); 142 for (double i = 0; i < 5; i+=1.) { 143 pos[0] = i; 144 positions.push_back(pos); 145 } 146 147 // create charges 148 Fragment::charges_t charges; 149 charges += 6., 6., 1., 1., 1.; 114 150 115 151 { … … 118 154 carbonpair += 6.,6.; 119 155 FunctionModel::arguments_t args = 120 Extractors::gatherAllSymmetricDistanceArguments( 121 Extractors::gatherPositionOfTuples(fragment, carbonpair), 122 0 123 ); 156 Extractors::gatherDistancesFromFragment(positions, charges, carbonpair, 0); 124 157 CPPUNIT_ASSERT_EQUAL( (size_t)1, args.size() ); 125 CPPUNIT_ASSERT_EQUAL( 1., args[0].distance );126 158 } 127 159 … … 131 163 hydrogentriple += 1.,1.,1.; 132 164 FunctionModel::arguments_t args = 133 Extractors::reorderArgumentsByIncreasingDistance( 134 Extractors::gatherAllSymmetricDistanceArguments( 135 Extractors::gatherPositionOfTuples(fragment, hydrogentriple), 136 0 137 ) 138 ); 165 Extractors::gatherDistancesFromFragment(positions, charges, hydrogentriple, 0); 139 166 CPPUNIT_ASSERT_EQUAL( (size_t)3, args.size() ); 140 CPPUNIT_ASSERT_EQUAL( 1., args[0].distance );141 CPPUNIT_ASSERT_EQUAL( 1., args[1].distance );142 CPPUNIT_ASSERT_EQUAL( 2., args[2].distance );143 167 } 144 168 }
Note:
See TracChangeset
for help on using the changeset viewer.