Ejemplo n.º 1
0
            //операторы
            /// <summary>
            /// Смещение СВ
            /// </summary>
            /// <param name="A"></param>
            /// <param name="m"></param>
            /// <returns></returns>
            public static DisRandVal operator -(DisRandVal A, double m)
            {
                DisRandVal M = new DisRandVal(A);

                for (int i = 0; i < M.X.Deg; i++)
                {
                    M.X[i] -= m;
                }
                return(M);
            }
Ejemplo n.º 2
0
            /// <summary>
            /// Случайная величина в степени
            /// </summary>
            /// <param name="A"></param>
            /// <param name="n"></param>
            /// <returns></returns>
            public static DisRandVal operator ^(DisRandVal A, int n)
            {
                DisRandVal M = new DisRandVal(A);

                for (int i = 0; i < M.X.Deg; i++)
                {
                    M.X[i] = Math.Pow(M.X[i], n);
                }
                return(M);
            }
Ejemplo n.º 3
0
            /// <summary>
            /// Мат. ожидание СВ
            /// </summary>
            /// <param name="R"></param>
            /// <returns></returns>
            public static double MatExp(DisRandVal R)
            {
                double sum = 0;

                for (int i = 0; i < R.X.Deg; i++)
                {
                    sum += R.X[i] * R.p[i];
                }
                return(sum);
            }
Ejemplo n.º 4
0
            /// <summary>
            /// Конструктор по умолчанию
            /// </summary>
            /// <param name="n"></param>
            public DisRandVal(int n)
            {
                double[] a = new double[n];
                X = new Vectors(n); p = new Vectors(n);
                double val = 1.0 / n;

                for (int i = 0; i < n; i++)
                {
                    a[i] = val;
                }
                DisRandVal r = new DisRandVal(a);

                this.X = r.X;
                this.p = r.p;
            }
Ejemplo n.º 5
0
 /// <summary>
 /// По неравенству Чебышева вероятность того, что случайная величина отклонится от мат. ожидания не менее чем на eps
 /// </summary>
 /// <param name="R"></param>
 /// <param name="eps"></param>
 public static void NerCheb(DisRandVal R, double eps)
 {
     Console.WriteLine("<= {0}", R.Dis / eps / eps);
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Центральный момент
 /// </summary>
 /// <param name="R"></param>
 /// <param name="n"></param>
 /// <returns></returns>
 public static double CenM(DisRandVal R, int n)
 {
     return(MatExp((R - R.M) ^ n));
 }
Ejemplo n.º 7
0
 /// <summary>
 /// Начальный момент
 /// </summary>
 /// <param name="R"></param>
 /// <param name="n"></param>
 /// <returns></returns>
 public static double BegM(DisRandVal R, int n)
 {
     return(MatExp((R) ^ n));
 }
Ejemplo n.º 8
0
 /// <summary>
 /// Дисперсия
 /// </summary>
 /// <param name="R"></param>
 /// <returns></returns>
 public static double Dispersion(DisRandVal R)
 {
     return(CenM(R, 2));
 }
Ejemplo n.º 9
0
 /// <summary>
 /// Конструктор копирования
 /// </summary>
 /// <param name="r"></param>
 public DisRandVal(DisRandVal r)
 {
     X = new Vectors(r.X); p = new Vectors(r.p);
 }