Changeset 980dd6
- Timestamp:
- Jun 12, 2010, 10:34:14 AM (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:
- 88104f, e6317b
- Parents:
- f6bd32
- git-author:
- Frederik Heber <heber@…> (06/11/10 19:41:45)
- git-committer:
- Frederik Heber <heber@…> (06/12/10 10:34:14)
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Actions/MapOfActions.cpp
rf6bd32 r980dd6 127 127 DescriptionMap["periodic"] = "system is constraint to periodic boundary conditions (y/n)"; 128 128 DescriptionMap["position"] = "position in R^3 space"; 129 DescriptionMap["sphere-radius"] = "radius of tesselation sphere"; 129 130 DescriptionMap["start-step"] = "first or start step"; 130 131 … … 229 230 TypeMap["periodic"] = Boolean; 230 231 TypeMap["position"] = Vector; 232 TypeMap["sphere-radius"] = Double; 231 233 TypeMap["start-step"] = Integer; 232 234 … … 260 262 generic.insert("linear-interpolate"); 261 263 // generic.insert("molecular-volume"); 262 //generic.insert("nonconvex-envelope");264 generic.insert("nonconvex-envelope"); 263 265 generic.insert("pair-correlation"); 264 266 // generic.insert("parse-xyz"); … … 307 309 generic.insert("periodic"); 308 310 generic.insert("position"); 311 generic.insert("sphere-radius"); 309 312 generic.insert("start-step"); 310 313 } -
src/Actions/TesselationAction/NonConvexEnvelopeAction.cpp
rf6bd32 r980dd6 56 56 clock_t start,end; 57 57 58 dialog->query Double(NAME, &SphereRadius, MapOfActions::getInstance().getDescription(NAME));59 dialog->queryString(" output", &filename, MapOfActions::getInstance().getDescription("output"));60 dialog->query Molecule("molecule-by-id", &Boundary, MapOfActions::getInstance().getDescription("molecule-by-id"));58 dialog->queryMolecule(NAME, &Boundary, MapOfActions::getInstance().getDescription(NAME)); 59 dialog->queryString("nonconvex-file", &filename, MapOfActions::getInstance().getDescription("nonconvex-file")); 60 dialog->queryDouble("sphere-radius", &SphereRadius, MapOfActions::getInstance().getDescription("sphere-radius")); 61 61 62 62 if(dialog->display()) { -
src/builder.cpp
rf6bd32 r980dd6 1900 1900 case 'N': 1901 1901 if (ExitFlag == 0) ExitFlag = 1; 1902 if ((argptr+ 1 >= argc) || (argv[argptr+1][0] == '-')){1902 if ((argptr+4 >= argc) || (argv[argptr][0] == '-')){ 1903 1903 ExitFlag = 255; 1904 DoeLog(0) && (eLog()<< Verbose(0) << "Not enough or invalid arguments given for non-convex envelope: - o <radius> <tecplot output file>" << endl);1904 DoeLog(0) && (eLog()<< Verbose(0) << "Not enough or invalid arguments given for non-convex envelope: -N <molecule_id> --sphere-radius <radius> --nonconvex-file <output prefix>" << endl); 1905 1905 performCriticalExit(); 1906 1906 } else { 1907 class Tesselation *T = NULL; 1908 const LinkedCell *LCList = NULL; 1909 molecule * Boundary = NULL; 1910 //string filename(argv[argptr+1]); 1911 //filename.append(".csv"); 1912 DoLog(0) && (Log() << Verbose(0) << "Evaluating non-convex envelope of biggest molecule."); 1913 DoLog(1) && (Log() << Verbose(1) << "Using rolling ball of radius " << atof(argv[argptr]) << " and storing tecplot data in " << argv[argptr+1] << "." << endl); 1914 // find biggest molecule 1915 int counter = 0; 1916 for (MoleculeList::iterator BigFinder = molecules->ListOfMolecules.begin(); BigFinder != molecules->ListOfMolecules.end(); BigFinder++) { 1917 if ((Boundary == NULL) || (Boundary->getAtomCount() < (*BigFinder)->getAtomCount())) { 1918 Boundary = *BigFinder; 1919 } 1920 counter++; 1921 } 1922 DoLog(1) && (Log() << Verbose(1) << "Biggest molecule has " << Boundary->getAtomCount() << " atoms." << endl); 1923 start = clock(); 1924 LCList = new LinkedCell(Boundary, atof(argv[argptr])*2.); 1925 if (!FindNonConvexBorder(Boundary, T, LCList, atof(argv[argptr]), argv[argptr+1])) 1926 ExitFlag = 255; 1927 //FindDistributionOfEllipsoids(T, &LCList, N, number, filename.c_str()); 1928 end = clock(); 1929 DoLog(0) && (Log() << Verbose(0) << "Clocks for this operation: " << (end-start) << ", time: " << ((double)(end-start)/CLOCKS_PER_SEC) << "s." << endl); 1930 delete(LCList); 1931 delete(T); 1932 argptr+=2; 1907 ArgcList.insert(argptr-1); 1908 ArgcList.insert(argptr); 1909 ArgcList.insert(argptr+1); 1910 ArgcList.insert(argptr+2); 1911 ArgcList.insert(argptr+3); 1912 ArgcList.insert(argptr+4); 1913 argptr+=5; 1933 1914 } 1934 1915 break; -
tests/Tesselations/defs.in
rf6bd32 r980dd6 54 54 #echo "Current dir is `pwd`, calling $MOLECUILDER $mol.conf -e $exec_prefix -p ../$mol.xyz -N $RADIUS $FILENAME." 55 55 if [ -e $mol.dbond ]; then 56 $MOLECUILDER $mol.conf -e $exec_prefix -p ../$mol.xyz -A $mol.dbond -N $RADIUS$FILENAME 2>stderr >stdout || exitcode=$?56 $MOLECUILDER $mol.conf -e $exec_prefix -p ../$mol.xyz -A $mol.dbond -N 0 --sphere-radius $RADIUS --nonconvex-file $FILENAME 2>stderr >stdout || exitcode=$? 57 57 else 58 $MOLECUILDER $mol.conf -e $exec_prefix -p ../$mol.xyz -N $RADIUS$FILENAME 2>stderr >stdout || exitcode=$?58 $MOLECUILDER $mol.conf -e $exec_prefix -p ../$mol.xyz -N 0 --sphere-radius $RADIUS --nonconvex-file $FILENAME 2>stderr >stdout || exitcode=$? 59 59 fi 60 60 #echo "Molecuilder done with exitcode $exitcode." -
tests/regression/testsuite-tesselation.at
rf6bd32 r980dd6 4 4 AT_KEYWORDS([Tesselation]) 5 5 AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/1/pre/* .], 0) 6 AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -N 4.NonConvexEnvelope], 0, [stdout], [stderr])6 AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -N 0 --sphere-radius 4. --nonconvex-file NonConvexEnvelope], 0, [stdout], [stderr]) 7 7 AT_CHECK([file=NonConvexEnvelope.dat; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/1/post/$file], 0, [ignore], [ignore]) 8 8 AT_CHECK([file=NonConvexEnvelope.r3d; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/1/post/$file], 0, [ignore], [ignore]) … … 22 22 AT_SETUP([Tesselation - Big non-Convex Envelope]) 23 23 AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/3/pre/* .], 0) 24 AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -N 4.NonConvexEnvelope], 0, [stdout], [stderr])24 AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -N 0 --sphere-radius 4. --nonconvex-file NonConvexEnvelope], 0, [stdout], [stderr]) 25 25 AT_CHECK([file=NonConvexEnvelope.dat; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/3/post/$file], 0, [ignore], [ignore]) 26 26 AT_CHECK([file=NonConvexEnvelope.r3d; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/3/post/$file], 0, [ignore], [ignore])
Note:
See TracChangeset
for help on using the changeset viewer.