Changeset 4fc93f
- Timestamp:
- Nov 26, 2009, 11:40:01 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:
- 491876, 5ae39c
- Parents:
- 27bd2f
- Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
src/boundary.cpp
r27bd2f r4fc93f 946 946 * \param RADIUS radius of the virtual sphere 947 947 * \param *filename filename prefix for output of vertex data 948 */ 949 void FindNonConvexBorder(const molecule* const mol, Tesselation *&TesselStruct, const LinkedCell *&LCList, const double RADIUS, const char *filename = NULL) 948 * \return true - tesselation successful, false - tesselation failed 949 */ 950 bool FindNonConvexBorder(const molecule* const mol, Tesselation *&TesselStruct, const LinkedCell *&LCList, const double RADIUS, const char *filename = NULL) 950 951 { 951 952 Info FunctionInfo(__func__); 952 953 bool freeLC = false; 954 bool status = false; 953 955 CandidateForTesselation *baseline; 954 956 LineMap::iterator testline; … … 1017 1019 } 1018 1020 } 1019 // check envelope for consistency1020 1021 1022 // look whether all points are inside of the convex envelope, otherwise add them via degenerated triangles1023 //->InsertStraddlingPoints(mol, LCList);1021 // // check envelope for consistency 1022 // status = CheckListOfBaselines(TesselStruct); 1023 // 1024 // // look whether all points are inside of the convex envelope, otherwise add them via degenerated triangles 1025 // //->InsertStraddlingPoints(mol, LCList); 1024 1026 // mol->GoToFirst(); 1025 1027 // class TesselPoint *Runner = NULL; … … 1038 1040 // // Purges surplus triangles. 1039 1041 // TesselStruct->RemoveDegeneratedTriangles(); 1040 // 1041 //// check envelope for consistency1042 //CheckListOfBaselines(TesselStruct);1042 1043 // check envelope for consistency 1044 status = CheckListOfBaselines(TesselStruct); 1043 1045 1044 1046 // write final envelope … … 1048 1050 if (freeLC) 1049 1051 delete(LCList); 1052 1053 return status; 1050 1054 }; 1051 1055 -
src/boundary.hpp
r27bd2f r4fc93f 53 53 Vector* FindEmbeddingHole(MoleculeListClass *mols, molecule *srcmol); 54 54 void FindNextSuitablePoint(class BoundaryTriangleSet *BaseTriangle, class BoundaryLineSet *BaseLine, atom*& OptCandidate, Vector *OptCandidateCenter, double *ShortestAngle, const double RADIUS, LinkedCell *LC); 55 voidFindNonConvexBorder(const molecule* const mol, Tesselation *&TesselStruct, const LinkedCell *&LC, const double RADIUS, const char *tempbasename);55 bool FindNonConvexBorder(const molecule* const mol, Tesselation *&TesselStruct, const LinkedCell *&LC, const double RADIUS, const char *tempbasename); 56 56 Boundaries *GetBoundaryPoints(const molecule *mol, Tesselation *&TesselStruct); 57 57 double * GetDiametersOfCluster(const Boundaries *BoundaryPtr, const molecule *mol, Tesselation *&TesselStruct, const bool IsAngstroem); -
src/builder.cpp
r27bd2f r4fc93f 1574 1574 else { 1575 1575 Log() << Verbose(2) << "File found and parsed." << endl; 1576 mol->SetNameFromFilename(argv[argptr]); 1577 molecules->ListOfMolecules.remove(mol); 1578 molecules->DissectMoleculeIntoConnectedSubgraphs(mol,&configuration); 1579 delete(mol); 1580 if (molecules->ListOfMolecules.size() != 0) { 1581 for (MoleculeList::iterator ListRunner = molecules->ListOfMolecules.begin(); ListRunner != molecules->ListOfMolecules.end(); ListRunner++) 1582 if ((*ListRunner)->ActiveFlag) { 1583 mol = *ListRunner; 1584 break; 1585 } 1586 } 1576 // @TODO rather do the dissection afterwards 1577 // mol->SetNameFromFilename(argv[argptr]); 1578 // molecules->ListOfMolecules.remove(mol); 1579 // molecules->DissectMoleculeIntoConnectedSubgraphs(mol,&configuration); 1580 // delete(mol); 1581 // if (molecules->ListOfMolecules.size() != 0) { 1582 // for (MoleculeList::iterator ListRunner = molecules->ListOfMolecules.begin(); ListRunner != molecules->ListOfMolecules.end(); ListRunner++) 1583 // if ((*ListRunner)->ActiveFlag) { 1584 // mol = *ListRunner; 1585 // break; 1586 // } 1587 // } 1587 1588 configPresent = present; 1588 1589 } … … 1803 1804 start = clock(); 1804 1805 LCList = new LinkedCell(Boundary, atof(argv[argptr])*2.); 1805 FindNonConvexBorder(Boundary, T, LCList, atof(argv[argptr]), argv[argptr+1]); 1806 if (!FindNonConvexBorder(Boundary, T, LCList, atof(argv[argptr]), argv[argptr+1])) 1807 ExitFlag = 255; 1806 1808 //FindDistributionOfEllipsoids(T, &LCList, N, number, filename.c_str()); 1807 1809 end = clock(); -
src/config.cpp
r27bd2f r4fc93f 1069 1069 mol->SetNameFromFilename(filename); 1070 1070 mol->ActiveFlag = true; 1071 MolList->insert(mol); 1071 1072 1072 1073 // 4. dissect the molecule into connected subgraphs 1073 MolList->DissectMoleculeIntoConnectedSubgraphs(mol,this); 1074 // don't do this here ... 1075 //MolList->DissectMoleculeIntoConnectedSubgraphs(mol,this); 1074 1076 1075 1077 delete(mol);
Note:
See TracChangeset
for help on using the changeset viewer.