Changeset 3c1dfb


Ignore:
Timestamp:
Apr 29, 2008, 7:06:18 AM (17 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:
6590bee
Parents:
b5ecd9
Message:

Full test for fragmentation procedure with readin of the adjacency file.

The test is still a bit of a hack (with moving BondFragment*-files and diff'ing them), but so far it works very well. A test structure is generated, till bond order 2 fragmented, the configs are moved away, fragmented again by reading adjacency, and the new configs are diff'ed against the old ones.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tests/testsuite.at

    rb5ecd9 r3c1dfb  
    3333AT_CLEANUP
    3434
     35AT_BANNER([MoleCuilder - Fragmentation test])
     36AT_SETUP([Fragmentation])
     37# 1. create a fake element database with the only two elements we need
     38AT_DATA([elements.db],[#  Covalent  radius  of  each  element in  Angstroem from  CSD (binding  is: [Rcov(A)+Rcov(B)-t,Rcov(A)+Rcov(B)+t] with  t = 0.4A
     39#Element  Name  Symbol  Period  Group Block Atomic  Number  AtomicWeight  Covalent  Radius  vdW Radius
     40Hydrogen  H 1 1 s 1 1.008 0.23  1.09
     41Carbon  C       2       14      p       6       12.011  0.68    1.70
     42])
     43# 2. create molecular geometry
     44AT_DATA([test.xyz], [[11
     45 # test configuration, created by molecuilder test suite
     46C       9.782085945     3.275186040     3.535886037
     47C       8.532785963     4.158586027     3.535886037
     48C       7.283585982     3.275186040     3.535886037
     49H       9.782085945     2.645886050     2.645886050
     50H       9.782085945     2.645886050     4.425886024
     51H       10.672039608    3.904536878     3.535886037
     52H       8.532785963     4.787886018     2.645886050
     53H       8.532785963     4.787886018     4.425886024
     54H       6.393632318     3.904536877     3.535886037
     55H       7.283585982     2.645886050     2.645886050
     56H       7.283585982     2.645886050     4.425886024
     57]])
     58# 3. make sure config is empty and not remnant from last test with broken dirs
     59AT_DATA([test.conf], [])
     60# 4. create the config and check it
     61AT_CHECK([../../molecuilder -e elements.db -p test.xyz test.conf], 0, [ignore], [ignore])
     62AT_CHECK([fgrep "Ion_Type1_4" test.conf], 0, [Ion_Type1_4       8.532785963     4.787886018     2.645886050     0 # Number in molecule 6
     63], [ignore])
     64AT_CHECK([fgrep "Ion_Type2_4" test.conf], 1, [ignore], [ignore])
     65# 5. fragment the molecule and check the number of configs
     66AT_CHECK([../../molecuilder -e elements.db -f 1.55 2 A test.conf], 0, [ignore], [ignore], [mkdir std; mv BondFragment*.conf* std/])
     67AT_CHECK([mkdir std; mv BondFragment*.conf* std/], 0)
     68AT_CHECK([ls -l std/BondFragment*.conf | wc -l], 0, [5
     69], [ignore])
     70AT_CHECK([../../molecuilder -e elements.db -f 1.55 2 A test.conf], 0, [ignore], [ignore], [mkdir new; mv BondFragment*.conf* new/])
     71AT_CHECK([mkdir new; mv BondFragment*.conf* new/], 0)
     72# 6. compare both dirs by diff'ing
     73AT_CHECK([diff -I '.*Created by molecuilder.*' std/ new/], 0, [], [])
     74AT_CLEANUP
    3575
    36 
Note: See TracChangeset for help on using the changeset viewer.