private void GenerateChart() { var sc = new SemiConductor(x, t); plotModel.Series.Clear(); //ec line series double E_C, E_HH, E_LH, E_SH; E_C = sc.Energy_C(); var ec = new LineSeries { MarkerType = MarkerType.Circle, StrokeThickness = 1, MarkerSize = 5, Title = "E_C" }; ec.Points.Add(new DataPoint(0, E_C)); plotModel.Series.Add(ec); E_HH = sc.Energy_HH(); var ehh = new LineSeries { MarkerType = MarkerType.Circle, StrokeThickness = 1, MarkerSize = 5, Title = "E_HH" }; ehh.Points.Add(new DataPoint(0, E_HH)); plotModel.Series.Add(ehh); E_LH = sc.Energy_LH(); var elh = new LineSeries { MarkerType = MarkerType.Circle, StrokeThickness = 1, MarkerSize = 5, Title = "E_LH" }; elh.Points.Add(new DataPoint(0, E_LH)); plotModel.Series.Add(elh); E_SH = sc.Energy_SH(); var esh = new LineSeries { MarkerType = MarkerType.Circle, StrokeThickness = 1, MarkerSize = 5, Title = "E_SH" }; esh.Points.Add(new DataPoint(0, E_SH)); plotModel.Series.Add(esh); PlotModel.InvalidatePlot(true); }
private void GenerateSaveAll() { var path = @"C:\Users\Vosming\source\repos\Zad2\AllValues.txt"; string[] data = new string[101]; //data[0] = "Coefficient_X;Temperature;Energy_Gap;E_C;E_HH;E_LH;E_SH;mass_e;mass_HH;mass_LH"; //data[1] = $"{x};{t};{sc.Energy_Gap()};{sc.Energy_C()};{sc.Energy_HH()};{sc.Energy_LH()};{sc.Energy_SH()};{sc.Mass_e()};{sc.Mass_HH()};{sc.Mass_LH()}"; for (int i = 0; i < 101; i++) { var sc = new SemiConductor(i, t); data[i] = $"{x};{sc.Energy_Gap()};{sc.Energy_C()};{sc.Energy_HH()};{sc.Energy_LH()};{sc.Energy_SH()};{sc.Mass_e()};{sc.Mass_HH()};{sc.Mass_LH()}"; } System.IO.File.WriteAllLines(path, data); }
private void GenerateStart() { var sc = new SemiConductor(x, t); var path = @"C:\Users\Vosming\source\repos\Zad2\Values.txt"; string[] data = new string[5]; data[0] = "GaInAs"; data[1] = $"Calculated Values for Temperature = {t}K, and X fraction of {x}"; data[2] = $"Energy_C = {sc.Energy_C()}eV | Energy_HH = {sc.Energy_HH()}eV | Energy_LH = {sc.Energy_LH()}eV | Energy_SH = {sc.Energy_SH()}eV"; data[3] = $"e mass = {sc.Mass_e()} | HH mass = {sc.Mass_HH()} | LH mass = {sc.Mass_LH()} | Delta SO = {sc.DeltaSO()}"; data[4] = $"Energy Gap of GaAsIn {sc.Energy_Gap()}eV | GaAs {sc.Energy_Gap_GaAs()}eV | InAs {sc.Energy_Gap_InAs()}eV"; System.IO.File.WriteAllLines(path, data); InterpolationPlotModel.Series.Clear(); InterpolationPlotModel.Series.Add(new FunctionSeries(y => sc.Energy_Gap_Function(y, t), 0, 1, 0.005)); InterpolationPlotModel.InvalidatePlot(true); }
private void GenerateStructure() { var sc = new SemiConductor(x, t); //ec line series plotModel.Series.Clear(); var last = new LineSeries { Title = "E_C", Color = OxyColors.Green }; last.Points.Add(new DataPoint(30, sc.Energy_C())); last.Points.Add(new DataPoint((30 + Thickness), sc.Energy_C())); PlotModel.Series.Add(last); var lasb = new LineSeries { Title = "E_HH", Color = OxyColors.DarkGreen }; lasb.Points.Add(new DataPoint(30, (sc.Energy_HH()))); lasb.Points.Add(new DataPoint((30 + Thickness), (sc.Energy_HH()))); PlotModel.Series.Add(lasb); var lasc = new LineSeries { Title = "E_LH", Color = OxyColors.GreenYellow }; lasb.Points.Add(new DataPoint(30, (sc.Energy_LH()))); lasb.Points.Add(new DataPoint((30 + Thickness), (sc.Energy_LH()))); PlotModel.Series.Add(lasc); var lt = new LineSeries { Color = OxyColors.Blue }; lt.Points.Add(new DataPoint(0, sc.VBO_GaAs())); lt.Points.Add(new DataPoint(30, sc.VBO_GaAs())); PlotModel.Series.Add(lt); var rt = new LineSeries { Color = OxyColors.Blue }; rt.Points.Add(new DataPoint((30 + Thickness), sc.VBO_GaAs())); rt.Points.Add(new DataPoint((60 + Thickness), sc.VBO_GaAs())); PlotModel.Series.Add(rt); var lb = new LineSeries { Color = OxyColors.DarkViolet }; lb.Points.Add(new DataPoint(0, (sc.Energy_Gap_GaAs() + sc.VBO_GaAs()))); lb.Points.Add(new DataPoint(30, (sc.Energy_Gap_GaAs() + sc.VBO_GaAs()))); PlotModel.Series.Add(lb); var rb = new LineSeries { Color = OxyColors.DarkViolet };; rb.Points.Add(new DataPoint((30 + Thickness), (sc.Energy_Gap_GaAs() + sc.VBO_GaAs()))); rb.Points.Add(new DataPoint((60 + Thickness), (sc.Energy_Gap_GaAs() + sc.VBO_GaAs()))); PlotModel.Series.Add(rb); PlotModel.InvalidatePlot(true); }