public ViewResult Fdm2D(FdmForTwoDimension fdm2d)
        {
            if (ModelState.IsValid)
            {
                double[][] result = fdm2d.TwoDimensionInSpace(false);

                JavaScriptSerializer jss = new JavaScriptSerializer();
                string resultJson        = jss.Serialize(result);

                List <double>[] dataList = new List <double> [fdm2d.n + 1];
                for (int i = 0; i <= fdm2d.n; i++)
                {
                    dataList[i] = new List <double>();
                    for (int j = 0; j <= fdm2d.n; j++)
                    {
                        dataList[i].Add(result[j][i]);
                    }
                }

                double[] boundaryValues = { fdm2d.boundaryValueLeft, fdm2d.boundaryValueTop, fdm2d.boundaryValueRight, fdm2d.boundaryValueBottom };

                ViewBag.MinValue        = jss.Serialize(boundaryValues.Min());
                ViewBag.MaxValue        = jss.Serialize(boundaryValues.Max());
                ViewBag.Data            = resultJson;
                ViewBag.ChartData       = dataList;
                ViewBag.ViewedWithChart = true;

                return(View("fdm2D", fdm2d));
            }
            else
            {
                ViewBag.ViewedWithChart = false;
                return(View());
            }
        }
        public ViewResult Fdm2D()
        {
            FdmForTwoDimension fdm2d = new FdmForTwoDimension();

            ViewBag.ViewedWithChart = false;
            return(View("fdm2D", fdm2d));
        }