/// <summary> /// calculate and printout measured wavefront /// </summary> private void CalcWavefront() { //ConsoleKeyInfo waitKey; float[,] wavefront = new float[WFS.MaxSpotY, WFS.MaxSpotX]; instrument.CalcWavefront(sampleWavefrontType, sampleOptionLimitToPupil, wavefront); // Saving the wavefront to a csv using (StreamWriter outFile = new StreamWriter(wavePath)) { string content; for (int i = 0; i < WFS.MaxSpotX; i++) { content = ""; for (int j = 0; j < WFS.MaxSpotY; j++) { content += Convert.ToString(wavefront[j, i]) + ", "; } outFile.WriteLine(content); } } // print out some wavefront points /*Console.WriteLine("\nWavefront in microns (first 5x5 elements)\n"); * for (int i = 0; i < samplePrintoutSpots; ++i) * { * for (int j = 0; j < samplePrintoutSpots; ++j) * { * Console.Write(" " + wavefront[i, j].ToString("F3")); * } * Console.WriteLine(""); * }*/ //Console.WriteLine("\nPress <ANY_KEY> to proceed..."); //waitKey = Console.ReadKey(true); // calculate wavefront statistics within defined pupil double wavefrontMin, wavefrontMax, wavefrontDiff, wavefrontMean, wavefrontRms, wavefrontWeightedRms; instrument.CalcWavefrontStatistics(out wavefrontMin, out wavefrontMax, out wavefrontDiff, out wavefrontMean, out wavefrontRms, out wavefrontWeightedRms); /*Console.WriteLine("\nWavefront Statistics in microns:"); * Console.WriteLine("Min : " + wavefrontMin.ToString("F3")); * Console.WriteLine("Max : " + wavefrontMax.ToString("F3")); * Console.WriteLine("Diff : " + wavefrontDiff.ToString("F3")); * Console.WriteLine("Mean : " + wavefrontMean.ToString("F3")); * Console.WriteLine("RMS : " + wavefrontRms.ToString("F3")); * Console.WriteLine("Weigthed RMS : " + wavefrontWeightedRms.ToString("F3"));*/ }
private void CalcWavefront() { // ConsoleKeyInfo waitKey; float[,] wavefront = new float[WFS.MaxSpotY, WFS.MaxSpotX]; instrument.CalcWavefront(sampleWavefrontType, sampleOptionLimitToPupil, wavefront); // print out some wavefront points Console.WriteLine("\nWavefront in microns (first 5x5 elements)\n"); for (int i = 0; i < samplePrintoutSpots; ++i) { for (int j = 0; j < samplePrintoutSpots; ++j) { Console.Write(" " + wavefront[i, j].ToString("F3")); } Console.WriteLine(""); } //Console.WriteLine("\nPress <ANY_KEY> to proceed..."); //waitKey = Console.ReadKey(true); // calculate wavefront statistics within defined pupil double wavefrontMin, wavefrontMax, wavefrontDiff, wavefrontMean, wavefrontRms, wavefrontWeightedRms; instrument.CalcWavefrontStatistics(out wavefrontMin, out wavefrontMax, out wavefrontDiff, out wavefrontMean, out wavefrontRms, out wavefrontWeightedRms); Console.WriteLine("\nWavefront Statistics in microns:"); Console.WriteLine("Min : " + wavefrontMin.ToString("F3")); Console.WriteLine("Max : " + wavefrontMax.ToString("F3")); Console.WriteLine("Diff : " + wavefrontDiff.ToString("F3")); Console.WriteLine("Mean : " + wavefrontMean.ToString("F3")); Console.WriteLine("RMS : " + wavefrontRms.ToString("F3")); Console.WriteLine("Weigthed RMS : " + wavefrontWeightedRms.ToString("F3")); }