public Process PlotInMediumDecayWidthsVersusMediumVelocity() { MediumTemperatures_MeV = new List <double> { MediumTemperatures_MeV[0] }; CalculateInMediumDecayWidth(); StringBuilder plotFile = new StringBuilder(); AppendHeader_InMediumDecayWidthsVersusMediumVelocity(plotFile); plotFile.AppendLine(); string[][] titleList = new string[DopplerShiftEvaluationTypes.Count][]; for (int i = 0; i < DopplerShiftEvaluationTypes.Count; i++) { titleList[i] = BottomiumStates.ConvertAll( state => GetBottomiumStateGnuplotCode(state) + ", " + DopplerShiftEvaluationTypes[i].ToUIString()).ToArray(); } AppendPlotCommands( plotFile, abscissaColumn: 2, firstOrdinateColumn: 3, titles: titleList); WritePlotFile(plotFile); return(StartGnuplot()); }
private void CreateEnergiesFromQQDataFilePlotFile() { StringBuilder plotFile = new StringBuilder(); plotFile.AppendLine("reset"); plotFile.AppendLine("set terminal windows enhanced"); plotFile.AppendLine(); plotFile.AppendLine("set title 'Energies E from QQDataFile'"); plotFile.AppendLine("set xlabel 'T (MeV)'"); plotFile.AppendLine("set ylabel 'E (MeV)'"); plotFile.AppendLine(); ReduceNumberOfColors(plotFile, BottomiumStates.Count); plotFile.AppendLine(); plotFile.AppendLine("set grid"); plotFile.AppendLine(); AppendPlotCommands( plotFile: plotFile, style: "points", titles: BottomiumStates.ConvertAll( state => new string[] { GetBottomiumStateGnuplotCode(state) + ", data file" }).ToArray()); AppendPlotCommands( appendToExistingPlotCommands: true, index: BottomiumStates.Count, plotFile: plotFile, style: "lines noautoscale", titles: BottomiumStates.ConvertAll( state => GetBottomiumStateGnuplotCode(state) + ", continuous")); WritePlotFile(plotFile); }
private void CreateDecayWidthEvaluatedAtDopplerShiftedTemperaturePlotFile() { StringBuilder plotFile = new StringBuilder(); plotFile.AppendLine("reset"); plotFile.AppendLine("set terminal windows enhanced"); plotFile.AppendLine(); plotFile.AppendLine("set title 'In-medium decay width " + GetDecayWidthTypeGnuplotCode(DecayWidthType) + " evaluated at a Doppler-shifted temperature" + " for medium temperature T = " + MediumTemperatures_MeV[0].ToUIString() + " MeV" + " and medium velocity |u| = " + MediumVelocities[0].ToUIString() + " c" + "'"); plotFile.AppendLine("set xlabel 'cos({/Symbol q})'"); plotFile.AppendLine("set ylabel '" + GetDecayWidthTypeGnuplotCode(DecayWidthType) + " (MeV)'"); plotFile.AppendLine(); ReduceNumberOfColors(plotFile, BottomiumStates.Count); plotFile.AppendLine(); plotFile.AppendLine("set style fill transparent solid 0.2"); plotFile.AppendLine(); string[] titleList = BottomiumStates.ConvertAll( state => GetBottomiumStateGnuplotCode(state)).ToArray(); AppendPlotCommands(plotFile, titles: titleList); for (int i = 0; i < titleList.Length; i++) { plotFile.AppendFormat("'{0}' index 0 using 1:" + "(stringcolumn({2}) eq 'Infinity' ? column({1}) : column({2}))" + " with lines dashtype '-' notitle,\\", DataFileName, i + 2, i + 2 + titleList.Length); plotFile.AppendLine(); } for (int i = 0; i < titleList.Length; i++) { plotFile.AppendFormat("'{0}' index 0 using 1:{1}:" + "(stringcolumn({2}) eq 'Infinity' ? column({1}) : column({2}))" + " with filledcurves notitle,\\", DataFileName, i + 2, i + 2 + titleList.Length); plotFile.AppendLine(); } WritePlotFile(plotFile); }
private void CreateElectromagneticallyShiftedEnergiesPlotFile() { StringBuilder plotFile = new StringBuilder(); plotFile.AppendLine("reset"); plotFile.AppendLine("set terminal windows enhanced"); plotFile.AppendLine(); plotFile.AppendLine("set title 'Electromagnetically shifted energies" + " for E = " + ElectricFieldStrength_per_fm2.ToString() + " fm^{-2}" + ", B = " + MagneticFieldStrength_per_fm2.ToString() + " fm^{-2}'"); plotFile.AppendLine("set xlabel 'T (MeV)'"); plotFile.AppendLine("set ylabel 'E (MeV)'"); plotFile.AppendLine(); ReduceNumberOfColors(plotFile, BottomiumStates.Count); plotFile.AppendLine(); plotFile.AppendLine("set style fill transparent solid 0.2"); plotFile.AppendLine(); string[] titleList = BottomiumStates.ConvertAll( state => GetBottomiumStateGnuplotCode(state)).ToArray(); plotFile.AppendLine("plot\\"); for (int i = 0; i < titleList.Length; i++) { plotFile.AppendFormat("'{0}' index {1} using 1:2 with lines title '{2}',\\", DataFileName, i, titleList[i]); plotFile.AppendLine(); } for (int i = 0; i < titleList.Length; i++) { plotFile.AppendFormat("'{0}' index {1} using 1:3:4 with filledcurves notitle,\\", DataFileName, i); plotFile.AppendLine(); } WritePlotFile(plotFile); }