Changeset 407782 for src/unittests/MatrixUnittest.cpp
- Timestamp:
- Jul 14, 2010, 12:42:13 PM (15 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:
- 41ea3c
- Parents:
- 5d880e
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/unittests/MatrixUnittest.cpp
r5d880e r407782 39 39 } 40 40 perm1 = new Matrix(); 41 perm1->column(0) = e1;42 perm1->column(1) = e3;43 perm1->column(2) = e2;41 perm1->column(0) = unitVec[0]; 42 perm1->column(1) = unitVec[2]; 43 perm1->column(2) = unitVec[1]; 44 44 45 45 46 46 perm2 = new Matrix(); 47 perm2->column(0) = e2;48 perm2->column(1) = e1;49 perm2->column(2) = e3;47 perm2->column(0) = unitVec[1]; 48 perm2->column(1) = unitVec[0]; 49 perm2->column(2) = unitVec[2]; 50 50 51 51 perm3 = new Matrix(); 52 perm3->column(0) = e2;53 perm3->column(1) = e3;54 perm3->column(2) = e1;52 perm3->column(0) = unitVec[1]; 53 perm3->column(1) = unitVec[2]; 54 perm3->column(2) = unitVec[0]; 55 55 56 56 perm4 = new Matrix(); 57 perm4->column(0) = e3;58 perm4->column(1) = e2;59 perm4->column(2) = e1;57 perm4->column(0) = unitVec[2]; 58 perm4->column(1) = unitVec[1]; 59 perm4->column(2) = unitVec[0]; 60 60 61 61 perm5 = new Matrix(); 62 perm5->column(0) = e3;63 perm5->column(1) = e1;64 perm5->column(2) = e2;62 perm5->column(0) = unitVec[2]; 63 perm5->column(1) = unitVec[0]; 64 perm5->column(2) = unitVec[1]; 65 65 66 66 } … … 108 108 109 109 mat.one(); 110 CPPUNIT_ASSERT_EQUAL(mat.row(0), e1);111 CPPUNIT_ASSERT_EQUAL(mat.row(1), e2);112 CPPUNIT_ASSERT_EQUAL(mat.row(2), e3);113 CPPUNIT_ASSERT_EQUAL(mat.column(0), e1);114 CPPUNIT_ASSERT_EQUAL(mat.column(1), e2);115 CPPUNIT_ASSERT_EQUAL(mat.column(2), e3);110 CPPUNIT_ASSERT_EQUAL(mat.row(0),unitVec[0]); 111 CPPUNIT_ASSERT_EQUAL(mat.row(1),unitVec[1]); 112 CPPUNIT_ASSERT_EQUAL(mat.row(2),unitVec[2]); 113 CPPUNIT_ASSERT_EQUAL(mat.column(0),unitVec[0]); 114 CPPUNIT_ASSERT_EQUAL(mat.column(1),unitVec[1]); 115 CPPUNIT_ASSERT_EQUAL(mat.column(2),unitVec[2]); 116 116 117 117 Vector t1=Vector(1.,1.,1.); … … 204 204 205 205 res = (*diagonal)*(*perm1); 206 CPPUNIT_ASSERT_EQUAL(res.column(0), e1);207 CPPUNIT_ASSERT_EQUAL(res.column(1),3* e3);208 CPPUNIT_ASSERT_EQUAL(res.column(2),2* e2);206 CPPUNIT_ASSERT_EQUAL(res.column(0),unitVec[0]); 207 CPPUNIT_ASSERT_EQUAL(res.column(1),3*unitVec[2]); 208 CPPUNIT_ASSERT_EQUAL(res.column(2),2*unitVec[1]); 209 209 res = (*diagonal)*(*perm2); 210 CPPUNIT_ASSERT_EQUAL(res.column(0),2* e2);211 CPPUNIT_ASSERT_EQUAL(res.column(1), e1);212 CPPUNIT_ASSERT_EQUAL(res.column(2),3* e3);210 CPPUNIT_ASSERT_EQUAL(res.column(0),2*unitVec[1]); 211 CPPUNIT_ASSERT_EQUAL(res.column(1),unitVec[0]); 212 CPPUNIT_ASSERT_EQUAL(res.column(2),3*unitVec[2]); 213 213 res = (*diagonal)*(*perm3); 214 CPPUNIT_ASSERT_EQUAL(res.column(0),2* e2);215 CPPUNIT_ASSERT_EQUAL(res.column(1),3* e3);216 CPPUNIT_ASSERT_EQUAL(res.column(2), e1);214 CPPUNIT_ASSERT_EQUAL(res.column(0),2*unitVec[1]); 215 CPPUNIT_ASSERT_EQUAL(res.column(1),3*unitVec[2]); 216 CPPUNIT_ASSERT_EQUAL(res.column(2),unitVec[0]); 217 217 res = (*diagonal)*(*perm4); 218 CPPUNIT_ASSERT_EQUAL(res.column(0),3* e3);219 CPPUNIT_ASSERT_EQUAL(res.column(1),2* e2);220 CPPUNIT_ASSERT_EQUAL(res.column(2), e1);218 CPPUNIT_ASSERT_EQUAL(res.column(0),3*unitVec[2]); 219 CPPUNIT_ASSERT_EQUAL(res.column(1),2*unitVec[1]); 220 CPPUNIT_ASSERT_EQUAL(res.column(2),unitVec[0]); 221 221 res = (*diagonal)*(*perm5); 222 CPPUNIT_ASSERT_EQUAL(res.column(0),3* e3);223 CPPUNIT_ASSERT_EQUAL(res.column(1), e1);224 CPPUNIT_ASSERT_EQUAL(res.column(2),2* e2);222 CPPUNIT_ASSERT_EQUAL(res.column(0),3*unitVec[2]); 223 CPPUNIT_ASSERT_EQUAL(res.column(1),unitVec[0]); 224 CPPUNIT_ASSERT_EQUAL(res.column(2),2*unitVec[1]); 225 225 } 226 226 … … 261 261 262 262 void MatrixUnittest::VecMultTest(){ 263 CPPUNIT_ASSERT_EQUAL((*zero)* e1,zeroVec);264 CPPUNIT_ASSERT_EQUAL((*zero)* e2,zeroVec);265 CPPUNIT_ASSERT_EQUAL((*zero)* e3,zeroVec);263 CPPUNIT_ASSERT_EQUAL((*zero)*unitVec[0],zeroVec); 264 CPPUNIT_ASSERT_EQUAL((*zero)*unitVec[1],zeroVec); 265 CPPUNIT_ASSERT_EQUAL((*zero)*unitVec[2],zeroVec); 266 266 CPPUNIT_ASSERT_EQUAL((*zero)*zeroVec,zeroVec); 267 267 268 CPPUNIT_ASSERT_EQUAL((*one)* e1,e1);269 CPPUNIT_ASSERT_EQUAL((*one)* e2,e2);270 CPPUNIT_ASSERT_EQUAL((*one)* e3,e3);268 CPPUNIT_ASSERT_EQUAL((*one)*unitVec[0],unitVec[0]); 269 CPPUNIT_ASSERT_EQUAL((*one)*unitVec[1],unitVec[1]); 270 CPPUNIT_ASSERT_EQUAL((*one)*unitVec[2],unitVec[2]); 271 271 CPPUNIT_ASSERT_EQUAL((*one)*zeroVec,zeroVec); 272 272 273 CPPUNIT_ASSERT_EQUAL((*diagonal)* e1,e1);274 CPPUNIT_ASSERT_EQUAL((*diagonal)* e2,2*e2);275 CPPUNIT_ASSERT_EQUAL((*diagonal)* e3,3*e3);273 CPPUNIT_ASSERT_EQUAL((*diagonal)*unitVec[0],unitVec[0]); 274 CPPUNIT_ASSERT_EQUAL((*diagonal)*unitVec[1],2*unitVec[1]); 275 CPPUNIT_ASSERT_EQUAL((*diagonal)*unitVec[2],3*unitVec[2]); 276 276 CPPUNIT_ASSERT_EQUAL((*diagonal)*zeroVec,zeroVec); 277 277 278 CPPUNIT_ASSERT_EQUAL((*perm1)* e1,e1);279 CPPUNIT_ASSERT_EQUAL((*perm1)* e2,e3);280 CPPUNIT_ASSERT_EQUAL((*perm1)* e3,e2);278 CPPUNIT_ASSERT_EQUAL((*perm1)*unitVec[0],unitVec[0]); 279 CPPUNIT_ASSERT_EQUAL((*perm1)*unitVec[1],unitVec[2]); 280 CPPUNIT_ASSERT_EQUAL((*perm1)*unitVec[2],unitVec[1]); 281 281 CPPUNIT_ASSERT_EQUAL((*perm1)*zeroVec,zeroVec); 282 282 283 CPPUNIT_ASSERT_EQUAL((*perm2)* e1,e2);284 CPPUNIT_ASSERT_EQUAL((*perm2)* e2,e1);285 CPPUNIT_ASSERT_EQUAL((*perm2)* e3,e3);283 CPPUNIT_ASSERT_EQUAL((*perm2)*unitVec[0],unitVec[1]); 284 CPPUNIT_ASSERT_EQUAL((*perm2)*unitVec[1],unitVec[0]); 285 CPPUNIT_ASSERT_EQUAL((*perm2)*unitVec[2],unitVec[2]); 286 286 CPPUNIT_ASSERT_EQUAL((*perm2)*zeroVec,zeroVec); 287 287 288 CPPUNIT_ASSERT_EQUAL((*perm3)* e1,e2);289 CPPUNIT_ASSERT_EQUAL((*perm3)* e2,e3);290 CPPUNIT_ASSERT_EQUAL((*perm3)* e3,e1);288 CPPUNIT_ASSERT_EQUAL((*perm3)*unitVec[0],unitVec[1]); 289 CPPUNIT_ASSERT_EQUAL((*perm3)*unitVec[1],unitVec[2]); 290 CPPUNIT_ASSERT_EQUAL((*perm3)*unitVec[2],unitVec[0]); 291 291 CPPUNIT_ASSERT_EQUAL((*perm3)*zeroVec,zeroVec); 292 292 293 CPPUNIT_ASSERT_EQUAL((*perm4)* e1,e3);294 CPPUNIT_ASSERT_EQUAL((*perm4)* e2,e2);295 CPPUNIT_ASSERT_EQUAL((*perm4)* e3,e1);293 CPPUNIT_ASSERT_EQUAL((*perm4)*unitVec[0],unitVec[2]); 294 CPPUNIT_ASSERT_EQUAL((*perm4)*unitVec[1],unitVec[1]); 295 CPPUNIT_ASSERT_EQUAL((*perm4)*unitVec[2],unitVec[0]); 296 296 CPPUNIT_ASSERT_EQUAL((*perm4)*zeroVec,zeroVec); 297 297 298 CPPUNIT_ASSERT_EQUAL((*perm5)* e1,e3);299 CPPUNIT_ASSERT_EQUAL((*perm5)* e2,e1);300 CPPUNIT_ASSERT_EQUAL((*perm5)* e3,e2);298 CPPUNIT_ASSERT_EQUAL((*perm5)*unitVec[0],unitVec[2]); 299 CPPUNIT_ASSERT_EQUAL((*perm5)*unitVec[1],unitVec[0]); 300 CPPUNIT_ASSERT_EQUAL((*perm5)*unitVec[2],unitVec[1]); 301 301 CPPUNIT_ASSERT_EQUAL((*perm5)*zeroVec,zeroVec); 302 302
Note:
See TracChangeset
for help on using the changeset viewer.