protected void PlotGammaXY(ComplexXY gammaXY, Color c, bool reset = true) { //Reset chart. if (reset) { this.smithChart.PlotImpedanceChart(); } //Plot. this.smithChart.plotGammaSpace(gammaXY, c, 1.0); //Invalidate. this.smithChart_pb.Invalidate(); }
public void plotGammaSpace(ComplexXY gammaXY, Color cc, double minMagnitudeShown) { //this.MarkPoint(0,0 , Color.White, 100); for (int row = 0; row < gammaXY.inputs.Mag.N; row++) { for (int col = 0; col < gammaXY.inputs.Phase.N; col++) { if (gammaXY.outputs[row, col].Magnitude > minMagnitudeShown) { this.plotGamma(gammaXY.inputs.Access(row, col), cc); } } } }
protected void PlotGammaFn(Func <ComplexLinearSpace, Complex[, ]> gammaMapFn, Color c, int N_magGammaLS = 200, int N_angleGammaLS = 200, bool reset = true) { //Sweep and calculate. ComplexLinearSpace gammaLS_Sweep = new ComplexLinearSpace( new LinearSpace(0.0, 1.0, (int)N_magGammaLS), new LinearSpace(0.0, 360, (int)N_angleGammaLS) ); ComplexXY gammaXY = new ComplexXY(gammaLS_Sweep, gammaMapFn); //Reset chart. if (reset) { this.smithChart.PlotImpedanceChart(); } //Plot. this.smithChart.plotGammaSpace(gammaXY, Color.Red, 1.0); //Invalidate. this.smithChart_pb.Invalidate(); }