Changes in / [a98603:cc2ee5]
- Location:
- src
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
src/analyzer.cpp
ra98603 rcc2ee5 29 29 ForceMatrix Shielding; 30 30 ForceMatrix ShieldingPAS; 31 ForceMatrix Chi;32 ForceMatrix ChiPAS;33 31 EnergyMatrix Time; 34 32 EnergyMatrix EnergyFragments; … … 37 35 ForceMatrix ShieldingFragments; 38 36 ForceMatrix ShieldingPASFragments; 39 ForceMatrix ChiFragments;40 ForceMatrix ChiPASFragments;41 37 KeySetsContainer KeySet; 42 38 ofstream output; … … 94 90 if (!Shielding.ParseFragmentMatrix(argv[1], dir, ShieldingSuffix, 1, 0)) return 1; 95 91 if (!ShieldingPAS.ParseFragmentMatrix(argv[1], dir, ShieldingPASSuffix, 1, 0)) return 1; 96 if (!Chi.ParseFragmentMatrix(argv[1], dir, ChiSuffix, 1, 0)) return 1;97 if (!ChiPAS.ParseFragmentMatrix(argv[1], dir, ChiPASSuffix, 1, 0)) return 1;98 92 } 99 93 … … 115 109 if(!ShieldingFragments.ParseIndices(argv[1])) return 1; 116 110 if(!ShieldingPASFragments.ParseIndices(argv[1])) return 1; 117 if(!Chi.ParseIndices(argv[1])) return 1;118 if(!ChiPAS.ParseIndices(argv[1])) return 1;119 if (!ChiFragments.AllocateMatrix(Chi.Header, Chi.MatrixCounter, Chi.RowCounter, Chi.ColumnCounter)) return 1;120 if (!ChiPASFragments.AllocateMatrix(ChiPAS.Header, ChiPAS.MatrixCounter, ChiPAS.RowCounter, ChiPAS.ColumnCounter)) return 1;121 if(!ChiFragments.ParseIndices(argv[1])) return 1;122 if(!ChiPASFragments.ParseIndices(argv[1])) return 1;123 111 } 124 112 … … 134 122 if (!ShieldingFragments.ParseFragmentMatrix(argv[1], dir, ShieldingFragmentSuffix, 1, 0)) return 1; 135 123 if (!ShieldingPASFragments.ParseFragmentMatrix(argv[1], dir, ShieldingPASFragmentSuffix, 1, 0)) return 1; 136 if (!ChiFragments.ParseFragmentMatrix(argv[1], dir, ChiFragmentSuffix, 1, 0)) return 1;137 if (!ChiPASFragments.ParseFragmentMatrix(argv[1], dir, ChiPASFragmentSuffix, 1, 0)) return 1;138 124 } 139 125 … … 173 159 for(int k=0;k<ShieldingPAS.ColumnCounter;k++) 174 160 output << scientific << ShieldingPAS.Matrix[ ShieldingPAS.MatrixCounter ][j][k] << "\t"; 175 output << endl;176 }177 output << endl;178 179 output << endl << "Total Chis" << endl << "===============" << endl << Chi.Header[Hessian.MatrixCounter] << endl;180 for(int j=0;j<Chi.RowCounter[Chi.MatrixCounter];j++) {181 for(int k=0;k<Chi.ColumnCounter[Chi.MatrixCounter];k++)182 output << scientific << Chi.Matrix[ Chi.MatrixCounter ][j][k] << "\t";183 output << endl;184 }185 output << endl;186 187 output << endl << "Total Chis PAS" << endl << "===============" << endl << ChiPAS.Header[ChiPAS.MatrixCounter] << endl;188 for(int j=0;j<ChiPAS.RowCounter[ChiPAS.MatrixCounter];j++) {189 for(int k=0;k<ChiPAS.ColumnCounter[ChiPAS.MatrixCounter];k++)190 output << scientific << ChiPAS.Matrix[ ChiPAS.MatrixCounter ][j][k] << "\t";191 161 output << endl; 192 162 } … … 258 228 output << endl; 259 229 } 260 output.close(); 261 if (!CreateDataDeltaForcesOrderPerAtom(ChiPAS, ChiPASFragments, KeySet, argv[3], "DeltaChisPAS-Order", "Plot of error between approximated Chis and full Chis versus the Bond Order", datum)) return 1; 262 if (!CreateDataForcesOrderPerAtom(ChiPASFragments, KeySet, argv[3], "ChisPAS-Order", "Plot of approximated Chis versus the Bond Order", datum)) return 1; 263 if (!AppendOutputFile(output, argv[3], "ChisPAS-Order.dat" )) return false; 264 output << endl << "# Full" << endl; 265 for(int j=0;j<ChiPAS.RowCounter[ChiPAS.MatrixCounter];j++) { 266 output << j << "\t"; 267 for(int k=0;k<ChiPAS.ColumnCounter[ChiPAS.MatrixCounter];k++) 268 output << scientific << ChiPAS.Matrix[ ChiPAS.MatrixCounter ][j][k] << "\t"; //*(((k>1) && (k<6))? 1.e6 : 1.) << "\t"; 269 output << endl; 270 } 271 output.close(); 272 } 230 } 231 output.close(); 273 232 274 233 … … 445 404 } 446 405 output << "'ShieldingsPAS-Order.dat' index " << KeySet.Order << " title 'Full' using ($1+" << step*(double)KeySet.Order << "):7 with boxes" << endl; 447 output.close();448 output2.close();449 450 if(!OpenOutputFile(output, argv[3], "ChisPAS-Order.pyx")) return 1;451 if(!OpenOutputFile(output2, argv[3], "DeltaChisPAS-Order.pyx")) return 1;452 CreatePlotHeader(output, "ChisPAS-Order", 1, "top right", NULL, NULL, 1, 5, "nuclei index", "iso chemical Chi value [ppm]");453 CreatePlotHeader(output2, "DeltaChisPAS-Order", 1, "top right", NULL, NULL, 1, 5, "nuclei index", "iso chemical Chi value [ppm]");454 output << "set boxwidth " << step << endl;455 output << "plot [0:" << ChiPAS.RowCounter[ChiPAS.MatrixCounter]+10 << "]\\" << endl;456 output2 << "plot [0:" << ChiPAS.RowCounter[ChiPAS.MatrixCounter]+10 << "]\\" << endl;457 for (int BondOrder=0;BondOrder<KeySet.Order;BondOrder++) {458 output << "'ChisPAS-Order.dat' index " << BondOrder << " title 'Order " << BondOrder+1 << "' using ($1+" << step*(double)BondOrder << "):7 with boxes, \\" << endl;459 output2 << "'DeltaChisPAS-Order.dat' index " << BondOrder << " title 'Order " << BondOrder+1 << "' using ($1):7 with linespoints";460 if (BondOrder-1 != KeySet.Order)461 output2 << ", \\" << endl;462 }463 output << "'ChisPAS-Order.dat' index " << KeySet.Order << " title 'Full' using ($1+" << step*(double)KeySet.Order << "):7 with boxes" << endl;464 406 output.close(); 465 407 output2.close(); -
src/joiner.cpp
ra98603 rcc2ee5 28 28 ForceMatrix ShieldingFragments; 29 29 ForceMatrix ShieldingPASFragments; 30 EnergyMatrix Chi;31 EnergyMatrix ChiPAS;32 EnergyMatrix ChiFragments;33 EnergyMatrix ChiPASFragments;34 30 KeySetsContainer KeySet; 35 31 stringstream prefix; … … 70 66 if (!Shielding.ParseFragmentMatrix(argv[1], dir, ShieldingSuffix, 1, 0)) return 1; 71 67 if (!ShieldingPAS.ParseFragmentMatrix(argv[1], dir, ShieldingPASSuffix, 1, 0)) return 1; 72 if (!Chi.ParseFragmentMatrix(argv[1], dir, ChiSuffix, 1, 0)) return 1;73 if (!ChiPAS.ParseFragmentMatrix(argv[1], dir, ChiPASSuffix, 1, 0)) return 1;74 68 } 75 69 … … 85 79 if(!Shielding.ParseIndices(argv[1])) return 1; 86 80 if(!ShieldingPAS.ParseIndices(argv[1])) return 1; 87 if(!Chi.ParseIndices(argv[1])) return 1;88 if(!ChiPAS.ParseIndices(argv[1])) return 1;89 81 } 90 82 91 83 // ---------- Parse the KeySets into an array --------------- 92 84 if (!KeySet.ParseKeySets(argv[1], Force.RowCounter, Force.MatrixCounter)) return 1; 85 93 86 if (!KeySet.ParseManyBodyTerms()) return 1; 94 95 87 if (!EnergyFragments.AllocateMatrix(Energy.Header, Energy.MatrixCounter, Energy.RowCounter, Energy.ColumnCounter)) return 1; 96 88 if (Hcorrected) HcorrectionFragments.AllocateMatrix(Hcorrection.Header, Hcorrection.MatrixCounter, Hcorrection.RowCounter, Hcorrection.ColumnCounter); … … 99 91 if (!ShieldingFragments.AllocateMatrix(Shielding.Header, Shielding.MatrixCounter, Shielding.RowCounter, Shielding.ColumnCounter)) return 1; 100 92 if (!ShieldingPASFragments.AllocateMatrix(ShieldingPAS.Header, ShieldingPAS.MatrixCounter, ShieldingPAS.RowCounter, ShieldingPAS.ColumnCounter)) return 1; 101 if (!ChiFragments.AllocateMatrix(Chi.Header, Chi.MatrixCounter, Chi.RowCounter, Chi.ColumnCounter)) return 1;102 if (!ChiPASFragments.AllocateMatrix(ChiPAS.Header, ChiPAS.MatrixCounter, ChiPAS.RowCounter, ChiPAS.ColumnCounter)) return 1;103 93 } 104 94 … … 109 99 if(!Shielding.SetLastMatrix(0., 2)) return 1; 110 100 if(!ShieldingPAS.SetLastMatrix(0., 2)) return 1; 111 if(!Chi.SetLastMatrix(0., 2)) return 1;112 if(!ChiPAS.SetLastMatrix(0., 2)) return 1;113 101 } 114 102 … … 131 119 if (!Force.SumSubForces(ForceFragments, KeySet, BondOrder, 1.)) return 1; 132 120 if (periode != NULL) { // also look for PAS values 133 cout << "Summing shieldings and susceptibilitiesof order " << BondOrder+1 << " ..." << endl;121 cout << "Summing shieldings of order " << BondOrder+1 << " ..." << endl; 134 122 if (!ShieldingFragments.SumSubManyBodyTerms(Shielding, KeySet, BondOrder)) return 1; 135 123 if (!Shielding.SumSubForces(ShieldingFragments, KeySet, BondOrder, 1.)) return 1; 136 124 if (!ShieldingPASFragments.SumSubManyBodyTerms(ShieldingPAS, KeySet, BondOrder)) return 1; 137 125 if (!ShieldingPAS.SumSubForces(ShieldingPASFragments, KeySet, BondOrder, 1.)) return 1; 138 if (!ChiFragments.SumSubManyBodyTerms(Chi, KeySet, BondOrder)) return 1;139 if (!Chi.SumSubForces(ChiFragments, KeySet, BondOrder, 1.)) return 1;140 if (!ChiPASFragments.SumSubManyBodyTerms(ChiPAS, KeySet, BondOrder)) return 1;141 if (!ChiPAS.SumSubForces(ChiPASFragments, KeySet, BondOrder, 1.)) return 1;142 126 } 143 127 … … 154 138 if (!Shielding.WriteLastMatrix(argv[1], (prefix.str()).c_str(), ShieldingSuffix)) return 1; 155 139 if (!ShieldingPAS.WriteLastMatrix(argv[1], (prefix.str()).c_str(), ShieldingPASSuffix)) return 1; 156 if (!Chi.WriteLastMatrix(argv[1], (prefix.str()).c_str(), ChiSuffix)) return 1;157 if (!ChiPAS.WriteLastMatrix(argv[1], (prefix.str()).c_str(), ChiPASSuffix)) return 1;158 140 } 159 141 } … … 178 160 prefix << dir << ShieldingPASFragmentSuffix; 179 161 if (!ShieldingPASFragments.WriteTotalFragments(argv[1], (prefix.str()).c_str())) return 1; 180 prefix.str(" ");181 prefix << dir << ChiFragmentSuffix;182 if (!ChiFragments.WriteTotalFragments(argv[1], (prefix.str()).c_str())) return 1;183 prefix.str(" ");184 prefix << dir << ChiPASFragmentSuffix;185 if (!ChiPASFragments.WriteTotalFragments(argv[1], (prefix.str()).c_str())) return 1;186 162 } 187 163 … … 193 169 if (!Shielding.WriteLastMatrix(argv[1], dir, ShieldingFragmentSuffix)) return 1; 194 170 if (!ShieldingPAS.WriteLastMatrix(argv[1], dir, ShieldingPASFragmentSuffix)) return 1; 195 if (!Chi.WriteLastMatrix(argv[1], dir, ChiFragmentSuffix)) return 1;196 if (!ChiPAS.WriteLastMatrix(argv[1], dir, ChiPASFragmentSuffix)) return 1;197 171 } 198 172 -
src/parser.hpp
ra98603 rcc2ee5 25 25 #define ShieldingFragmentSuffix ".sigma_all_fragment.all" 26 26 #define ShieldingPASFragmentSuffix ".sigma_all_PAS_fragment.all" 27 #define ChiSuffix ".chi_all.csv"28 #define ChiPASSuffix ".chi_all_PAS.csv"29 #define ChiFragmentSuffix ".chi_all_fragment.all"30 #define ChiPASFragmentSuffix ".chi_all_PAS_fragment.all"31 27 #define TimeSuffix ".speed" 32 28 #define EnergyFragmentSuffix ".energyfragment.all"
Note:
See TracChangeset
for help on using the changeset viewer.