#include <boost/math/distributions/chi_squared.hpp>
namespace boost{ namespace math{
template <class RealType = double,
          class Policy   = policies::policy<> >
class chi_squared_distribution;
typedef chi_squared_distribution<> chi_squared;
template <class RealType, class Policy>
class chi_squared_distribution
{
public:
   typedef RealType  value_type;
   typedef Policy    policy_type;
   
   chi_squared_distribution(RealType i);
   
   RealType degrees_of_freedom()const;
   
   static RealType find_degrees_of_freedom(
      RealType difference_from_mean,
      RealType alpha,
      RealType beta,
      RealType sd,
      RealType hint = 100);
};
}} 
Ши-квадрат является одним из наиболее широко используемых распределений в статистических тестах. Если χi  являются ν   независимыми, нормально распределенными случайными переменными со средствами μi  и дисперсиями σi2, затем случайная величина:

Распределяется в соответствии с распределением Chi-Squared.
Ши-квадратное распределение является частным случаем гамма-распределения и имеет один параметр ν  , который определяет количество степеней свободы. Следующий график иллюстрирует, как меняется распределение для разных значений ν:

chi_squared_distribution(RealType v);
Построение распределения Ши-квадрата сvстепенями свободы.
Требуется v>0, иначе вызываетdomain_error.
RealType degrees_of_freedom()const;
Возвращает параметрv, из которого был построен этот объект.
static RealType find_degrees_of_freedom(
   RealType difference_from_variance,
   RealType alpha,
   RealType beta,
   RealType variance,
   RealType hint = 100);
Оценивает размер выборки, необходимый для обнаружения разницы от номинальной дисперсии в тесте Chi-Squared для равных стандартных отклонений.
- difference_from_variance
 
Отличие от предполагаемой номинальной дисперсии, которая должна быть обнаружена: Обратите внимание, что знак этого значения имеет решающее значение, см. ниже.
 
- alpha
 
Максимально допустимый риск отклонения нулевой гипотезы, когда она действительно верна.
 
- beta
 
Максимально допустимый риск ложного отказа от нулевой гипотезы.
 
- variance
 
Проверяется номинальная дисперсия.
 
- hint
 
Дополнительный намек на то, где начать искать результат: текущий размер выборки будет хорошим выбором.
 
 
Обратите внимание, что этот расчет работает сдисперсиями, а нестандартными отклонениями.
Знак параметраdifference_from_varianceважен: распределение Chi Squared является асимметричным, и абонент должен заранее решить, тестируют ли они дисперсию, превышающую номинальное значение (позитивноеdifference_from_variance) или тестирование на дисперсию, меньшую номинального значения (отрицательноеdifference_from_variance). Если последнее, то очевидно, что это требование<variance
         +difference_from_variance
         >0>, поскольку ни один образец не может иметь отрицательной дисперсии!
Этот метод используется в работе Diamond, W. J. (1989). Дизайн практических экспериментов, Ван-Ностранд Рейнхольд, Нью-Йорк.
См. также раздел о размерах образцов, требуемых вСправочнике инженерной статистики NIST, раздел 7.2.3.2.
Поддерживаются всеобычные функции доступа, не являющиеся членами, которые являются общими для всех распределений:Кумулятивная функция распределения,Функция плотности вероятности,Количественная,Функция опасности,Кумулятивная функция опасности,среднее,медианное,режим,дисперсия,стандартное отклонение,перекос,куртоз,куртоз_избыток,диапазониподдержка.
(Мы следовали обычному ограничению режима до степеней свободы >=2, но обратите внимание, что максимум pdf фактически равен нулю для степеней свободы от 2 до 0, и предоставим расширенное определение, которое позволило бы избежать разрыва в режиме в качестве альтернативного кода в комментарии).
Доменом случайной переменной является [0, +∞].
Существуют различныепримеры, иллюстрирующие использование Chi Squared Distribution.
Ши-квадратное распределение реализуется с точки зрениянеполных гамма-функций: Пожалуйста, обратитесь к данным точности для этих функций.
В следующей таблицеv— число степеней свободы распределения,x— случайная вариация,p— вероятность,q = 1-p.