Esempio n. 1
0
        /// <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"));*/
        }
Esempio n. 2
0
        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"));
        }