Changeset 1f1b23
- Timestamp:
- Feb 2, 2010, 9:43:52 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:
- 164a33, 8ab0407, a25aae
- Parents:
- 790807
- Location:
- src
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
src/atom_bondedparticle.cpp
r790807 r1f1b23 56 56 * \param *AdjacencyFile output stream 57 57 */ 58 void BondedParticle::OutputAdjacency(ofstream * AdjacencyFile) const58 void BondedParticle::OutputAdjacency(ofstream * const AdjacencyFile) const 59 59 { 60 60 *AdjacencyFile << nr << "\t"; … … 62 62 *AdjacencyFile << (*Runner)->GetOtherAtom(this)->nr << "\t"; 63 63 *AdjacencyFile << endl; 64 }; 65 66 /** Output of atom::nr along each bond partner per line. 67 * Only bonds are printed where atom::nr is smaller than the one of the bond partner. 68 * \param *AdjacencyFile output stream 69 */ 70 void BondedParticle::OutputBonds(ofstream * const BondFile) const 71 { 72 for (BondList::const_iterator Runner = ListOfBonds.begin(); Runner != ListOfBonds.end(); (++Runner)) 73 if (nr < (*Runner)->GetOtherAtom(this)->nr) 74 *BondFile << nr << "\t" << (*Runner)->GetOtherAtom(this)->nr << "\n"; 64 75 }; 65 76 -
src/atom_bondedparticle.hpp
r790807 r1f1b23 44 44 int CorrectBondDegree(); 45 45 void OutputBondOfAtom() const; 46 void OutputAdjacency(ofstream *AdjacencyFile) const; 46 void OutputAdjacency(ofstream * const AdjacencyFile) const; 47 void OutputBonds(ofstream * const BondFile) const; 47 48 void OutputOrder(ofstream *file) const; 48 49 -
src/builder.cpp
r790807 r1f1b23 1422 1422 Log() << Verbose(0) << "\t-h/-H/-?\tGive this help screen." << endl; 1423 1423 Log() << Verbose(0) << "\t-I\t Dissect current system of molecules into a set of disconnected (subgraphs of) molecules." << endl; 1424 Log() << Verbose(0) << "\t-j\t<path> Store all bonds to file." << endl; 1425 Log() << Verbose(0) << "\t-J\t<path> Store adjacency per atom to file." << endl; 1424 1426 Log() << Verbose(0) << "\t-L <step0> <step1> <prefix>\tStore a linear interpolation between two configurations <step0> and <step1> into single config files with prefix <prefix> and as Trajectories into the current config file." << endl; 1425 1427 Log() << Verbose(0) << "\t-m <0/1>\tCalculate (0)/ Align in(1) PAS with greatest EV along z axis." << endl; … … 1709 1711 CorrelationToSurfaceMap *surfacemap = PeriodicCorrelationToSurface( molecules, elemental, TesselStruct, LCList, ranges ); 1710 1712 OutputCorrelationToSurface(&output, surfacemap); 1711 BinPairMap *binmap = BinData( surfacemap, 0.5, 0., 0. );1713 BinPairMap *binmap = BinData( surfacemap, 0.5, 0., 20. ); 1712 1714 OutputCorrelation ( &binoutput, binmap ); 1713 1715 output.close(); … … 1793 1795 } 1794 1796 break; 1797 1798 case 'J': 1799 if (ExitFlag == 0) ExitFlag = 1; 1800 if ((argptr >= argc) || (argv[argptr][0] == '-')) { 1801 ExitFlag =255; 1802 eLog() << Verbose(0) << "Missing path of adjacency file: -j <path>" << endl; 1803 performCriticalExit(); 1804 } else { 1805 Log() << Verbose(0) << "Storing adjacency to path " << argv[argptr] << "." << endl; 1806 configuration.BG->ConstructBondGraph(mol); 1807 mol->StoreAdjacencyToFile(argv[argptr]); 1808 argptr+=1; 1809 } 1810 break; 1811 1812 case 'j': 1813 if (ExitFlag == 0) ExitFlag = 1; 1814 if ((argptr >= argc) || (argv[argptr][0] == '-')) { 1815 ExitFlag =255; 1816 eLog() << Verbose(0) << "Missing path of bonds file: -j <path>" << endl; 1817 performCriticalExit(); 1818 } else { 1819 Log() << Verbose(0) << "Storing bonds to path " << argv[argptr] << "." << endl; 1820 configuration.BG->ConstructBondGraph(mol); 1821 mol->StoreBondsToFile(argv[argptr]); 1822 argptr+=1; 1823 } 1824 break; 1825 1795 1826 case 'N': 1796 1827 if (ExitFlag == 0) ExitFlag = 1; -
src/molecule.hpp
r790807 r1f1b23 269 269 int FragmentMolecule(int Order, config *configuration); 270 270 bool CheckOrderAtSite(bool *AtomMask, Graph *GlobalKeySetList, int Order, int *MinimumRingSize, char *path = NULL); 271 bool StoreBondsToFile(char *path); 271 272 bool StoreAdjacencyToFile(char *path); 272 273 bool CheckAdjacencyFileAgainstMolecule(char *path, atom **ListOfAtoms); -
src/molecule_graph.cpp
r790807 r1f1b23 992 992 Log() << Verbose(1) << "Saving adjacency list ... "; 993 993 if (AdjacencyFile != NULL) { 994 AdjacencyFile << "m\tn" << endl; 994 995 ActOnAllAtoms(&atom::OutputAdjacency, &AdjacencyFile); 995 996 AdjacencyFile.close(); 997 Log() << Verbose(1) << "done." << endl; 998 } else { 999 Log() << Verbose(1) << "failed to open file " << line.str() << "." << endl; 1000 status = false; 1001 } 1002 1003 return status; 1004 } 1005 ; 1006 1007 /** Storing the bond structure of a molecule to file. 1008 * Simply stores Atom::nr and then the Atom::nr of all bond partners, one per line. 1009 * \param *out output stream for debugging 1010 * \param *path path to file 1011 * \return true - file written successfully, false - writing failed 1012 */ 1013 bool molecule::StoreBondsToFile(char *path) 1014 { 1015 ofstream BondFile; 1016 stringstream line; 1017 bool status = true; 1018 1019 line << path << "/" << FRAGMENTPREFIX << ADJACENCYFILE; 1020 BondFile.open(line.str().c_str(), ios::out); 1021 Log() << Verbose(1) << "Saving adjacency list ... "; 1022 if (BondFile != NULL) { 1023 BondFile << "m\tn" << endl; 1024 ActOnAllAtoms(&atom::OutputBonds, &BondFile); 1025 BondFile.close(); 996 1026 Log() << Verbose(1) << "done." << endl; 997 1027 } else {
Note:
See TracChangeset
for help on using the changeset viewer.