public static int Test_UnitVector_Col_Row_Accessors()
        {
            List <double> initer = new List <double> {
                1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16
            };                                                       //init matrix vector
            SquareRealMatrix A = new SquareRealMatrix(4, 4, initer); //create 4X4 matrix

            A.Name = "A";                                            //give it a name

            UnitVectorSpace uvs  = new UnitVectorSpace(4);           //Create unit vector space to use
            UnitVector      e2   = new UnitVector("e2", 4, RowColumn.Column);
            UnitVector      e2_p = new UnitVector("e2", 4, RowColumn.Row);

            RealVector    rv = A * e2;
            StringBuilder sb = new StringBuilder();//Start building latex

            sb.Append(@"\begin{aligned}");
            sb.AppendFormat(@"&A = &{0} \\ \\", A.ToLatex()); //Display Original A matrix
            sb.Append(@"&A_{.2} = &" + rv.ToLatex() + @" \\ \\");
            RealVector rvRow = e2_p * A;

            sb.Append(@"&A_{2.}' = &" + rvRow.ToLatex());

            sb.Append(@"\end{aligned}");
            HtmlOutputMethods.WriteLatexEqToHtmlAndLaunch(sb.ToString(), "Test_UnitVector_Col_Row_Accessors.html"); //display Latex via mathjax
            return(0);
        }
        public static int Test_OneVector_OneVector()
        {
            UnitVectorSpace uvs = new UnitVectorSpace(3);

            HtmlOutputMethods.WriteLatexEqToHtmlAndLaunch(uvs.OneVector().ToLatex("F"), "Test_OneVector_OneVector.html");

            return(0);
        }
        public static int Test_UnitVectorSpace_UnitVectorSpace()
        {
            UnitVectorSpace uvs = new UnitVectorSpace(3);

            HtmlOutputMethods.WriteLatexEqToHtmlAndLaunch(uvs.ToLatex(), "Test_UnitVectorSpace_UnitVectorSpace.html");

            return(0);
        }
        public static int Test_UnitVectorProductTo_ElementaryMatrix()
        {
            UnitVectorSpace  uvs = new UnitVectorSpace(4);                                                                    //Order four Unit Vector Space
            UnitVector       e2  = uvs["e2"];                                                                                 // order 4 e2 unit vector
            UnitVector       e1  = uvs["e1"];                                                                                 //order 4 e1 unit operator
            ElementaryMatrix em  = e2 * e1;                                                                                   //product of Unit Vectors

            HtmlOutputMethods.WriteLatexEqToHtmlAndLaunch(em.ToLatex("F"), "Test_UnitVectorProductTo_ElementaryMatrix.html"); //display Latex via mathjax

            return(0);
        }
        public static int Test_UnitVectorProduct_ToInt()
        {
            UnitVectorSpace uvs = new UnitVectorSpace(4); //Order four Unit Vector Space
            UnitVector      e1  = uvs["e1"];              //order 4 e1 unit operator

            e1.IsRowOrColumn = RowColumn.Row;

            UnitVector e2 = uvs["e2"]; // order 4 e2 unit vector
            int        dp = e1 * e2;   //product of Unit Vectors

            UnitVector e2prime = new UnitVector("e2", 4, RowColumn.Row);

            int dp2 = e2prime * e2;

            string latex = "e'_{1}e_{2} = " + dp.ToString() + @"\;,e'_{2}e_{2} = " + dp2.ToString();

            HtmlOutputMethods.WriteLatexEqToHtmlAndLaunch(latex, "Test_UnitVectorProduct_ToInt.html"); //display Latex via mathjax


            return(0);
        }