2.5.Квадратурные формулы Гаусса-Кристоффеля
Рассмотрим общую задачу численного интегрирования с весовой функцией .
При построении квадратурных формул интерполяционного типа на бесконечных интервалах необходимо ввести дополнительно условие на весовую функцию:
. | (1) |
Запишем квадратурную формулу для произвольного, но фиксированного распределения узлов
: . | (18) |
При построении квадратурных формул Ньютона-Котеса узлы распределялись равномерно по отрезку . Очевидно, что такой способ выбора узлов становится невозможным для несобственных интегралов с бесконечными пределами. Возникает вопрос: как выбрать систему узлов квадратурной формулы, чтобы формула (16) имела наивысшую возможную алгебраическую степень точности? Напомним, что квадратурная формула имеет алгебраическую степень точности , если она точна для многочленов степени меньшей или равной .
Определение 1. Квадратурная формула (16), обеспечивающая условие:
Называется Квадратурной формулой наивысшей алгебраической степени точности.
Теорема 2.3. Для того чтобы формула (18) была квадратурной формулой наивысшей алгебраической степени точности, необходимо и достаточно, чтобы узлы совпадали с нулями полинома из системы ортогональных полиномов с весом на .
Необходимость. Пусть формула (18) имеет наивысшую алгебраическую степень точности. По определению это значит, что , где — семейство многочленов степени .
Как и при выводе интерполяционных формул, обозначим
—
— полином N-Ой степени, нули которого совпадают с узлами интерполяции.
Рассмотрим функцию .
Т. к. — алгебраический многочлен степени , то по условию теоремы . Но т. к. , то из (18) следует, что
. | (19) |
Из равенства (19) усматриваем, что , т. е многочлен ортогонален системе для .
Рассмотрим вспомогательную функцию , где — коэффициент при старшей степени многочлена . Очевидно, что — многочлен степени . Рассмотрим скалярное произведение
.
Пусть , тогда
Пусть теперь тогда в силу свойства 1) ортогональных полиномов (степень полинома меньше чем ).
Т. о. ортогональна всем полиномам системы . Отсюда, в силу свойства 4) ортогональных полиномов, следует, что .
Последнее равенство означает, что — нули полинома .
Достаточность. Пусть — нули полинома , и — полином степени . Требуется доказать, что для .
Очевидно, достаточно рассмотреть случай (если формула точна для многочлена степени , то она автоматически точна и для многочлена любой меньшей степени).
Пусть . Представим этот многочлен в виде:
, | (20) |
Где
— многочлен -ой степени (частное от деления на ),
, — многочлен степени (остаток от деления).
Т. к. — корни полинома , то из (4) следует, что
, т. е. является интерполяционным многочленом для , следовательно
, | (21) |
Где — фундаментальный многочлен Лагранжа -ой степени.
Учитывая (20) и (21), распишем интеграл:
=
. | (22) |
Формула (22) — квадратурная формула интерполяционного типа с погрешностью
для , а, значит, и для любого многочлена степени .
Заметим, что единственность квадратурной формулы (16) следует из единственности нулей ортогонального полинома Pn(X).
Определение 2. Квадратурная формула (18) наивысшей алгебраической степени точности носит название
Теорема 2.4. (О свойствах коэффициентов Гаусса-Кристоффеля). Пусть
— | (23) |
Формула Гаусса-Кристоффеля. Тогда весовые коэффициенты Кристоффеля удовлетворяют следующим условиям:
1) ;
2) ;
3) ,
Где — фундаментальные полиномы Лагранжа, построенные по узлам , являющимися нулями полинома из соответствующей ортогональной системы.
По доказанному в теореме 2.3, формула (23) точна для многочленов порядка , в частности, для . Отсюда следует, что
, т. е. свойство 2).
Возьмем далее в качестве полином степени , например:
— фиксированные.
Учитывая свойство фундаментальных многочленов Лагранжа :
,
и, подставляя данный многочлен в (23), получим:
.
Вследствие свойства 1) фундаментального полинома Лагранжа из последнего равенства следует, в частности, что . Таким образом, все свойства доказаны.
Замечание 1. Для остаточного члена квадратурной формулы Гаусса-Кристоффеля (23) справедливо представление:
,
Где , — нули полинома , xÎ(a, b).
Без доказательства.
Замечание 2. Классические ортогональные многочлены обычно строятся для канонических промежутков: с соответствующими весами .
Таблица 2.1. Основные канонические системы ортогональных многочленов:
П Промежуток | В Весовая функция | Название ортогональной системы | Остаточный член | |
Полиномы Лежандра | ||||
Полиномы Чебышева | ||||
Полиномы Лагерра | Смотри в справочной литературе. | |||
Полиномы Эрмита |
Самая простая формула Гаусса-Кристоффеля имеет место для промежутка с весом (используются нули полинома Чебышева ):
,
Где
.
Замечание 3. Для произвольного конечного промежутка и , с помощью линейного преобразования
Интеграл приводится к каноническому промежутку.
Пример 2.
С помощью квадратурной формулы Гаусса-Кристоффеля порядка . Оценить по модулю остаточный член .
Согласно случаю 2) из таблицы:
,
Где .
Пример 3. Вычисляется интеграл
С помощью квадратурной формулы Гаусса-Кристоффеля порядка . Оценить по модулю и указать саму формулу.
— нули многочлена Лежандра (см. пример 16 п. п. 1.8 и семинарское занятие С-3):
, .
Найдем нули полинома :
, , .
Для вычисления коэффициентов Кристоффеля используем формулу для полиномов Лежандра из таблицы 2. 1. Для этого найдем сначала значения :
. Подставляя найденные значения в формулу для коэффициентов , получаем: . Отсюда следует формула Гаусса-Кристоффеля 3-го порядка, приближающая указанный интеграл:
.
Погрешность данного приближения вычисляем по формуле для из первой строки таб.2.1:
.
< Предыдущая | Следующая > |
---|
python — Как найти площадь многоугольника по формуле Гаусса?
Вопрос задан
Изменён 6 месяцев назад
Просмотрен 345 раз
Пытаюсь создать функцию Гаусса на python для расчёта площади n-го многоугольника, помогите создать данную функцию. Вот мои попытки создать её:
def func(x, y): for i in range(1, n): s = (1/2)*abs(sum((x[i]*y[i+1])+(x[i]*y[1]))-sum((x[i+1]*y[i])-(x[1]*y[i]))) return s f = open('st. txt') n = sum(1 for line in open('st.txt'))
Вот исходный файл:
1 2 2 1 3 4 5 6
- python
- алгоритм
- геометрия
Возьмём удобную форму формулы Гаусса (shoelace) отсюда. В Python последний элемент списка можно использовать с индексом -1, что чуть упрощает дело.
from math import sin, cos, pi def polygonArea(xlist, ylist): area = 0 for i in range(len(xlist)): area += xlist[i-1] * ylist[i] - ylist[i-1] * xlist[i] return 0.5*abs(area) #квадрат print(polygonArea([0, 0, 2, 2], [0, 2, 2, 0])) #невыпуклый многоугольник - звезда https://mathworld.wolfram.com/Pentagram.html #площадь 0.31072 совпадает с A_filled print(polygonArea([cos(pi/2 + pi*i/5)*(0.526-0.325*(i%2)) for i in range(10)], [sin(pi/2 + pi*i/5)*(0.526-0.325*(i%2)) for i in range(10)]))
А если дан список точек, и без использования питоновской фишки с отрицательным индексом:
def polygonAreaPts(pts): area = 0 last = len(pts) - 1 for i in range(len(pts)): area += pts[last][0] * pts[i][1] - pts[last][1] * pts[i][0] last = i return 0. 5*abs(area)
Зарегистрируйтесь или войдите
Регистрация через Google Регистрация через Facebook Регистрация через почтуОтправить без регистрации
ПочтаНеобходима, но никому не показывается
Отправить без регистрации
ПочтаНеобходима, но никому не показывается
By clicking “Отправить ответ”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.
Распределение Гаусса
Распределение Гаусса, также называемое нормальным распределением, представляет собой тип непрерывного распределения вероятностей, который симметричен относительно своего среднего значения; большинство наблюдений группируются вокруг среднего значения, и чем дальше наблюдение от среднего значения, тем ниже вероятность его появления. Как и другие распределения вероятностей, распределение Гаусса описывает, как распределяются результаты случайной величины.
Распределение Гаусса, названное так потому, что оно было впервые открыто Карлом Фридрихом Гауссом, широко используется в теории вероятностей и статистике. Во многом это связано с центральной предельной теоремой, которая утверждает, что событие, представляющее собой сумму случайных, но в остальном идентичных событий, имеет тенденцию к нормальному распределению независимо от распределения случайной величины. Многие природные явления, такие как рост, вес, результаты тестов и другие, соответствуют этому критерию и, следовательно, имеют нормальное распределение.
Функция Гаусса
График функции Гаусса образует характерную колоколообразную форму гауссовского/нормального распределения и имеет общий вид
, где a, b и c — вещественные константы, а c ≠ 0. В распределение Гаусса, параметры a, b и c основаны на среднем значении (μ) и стандартном отклонении (σ). Таким образом, функция плотности вероятности (PDF) распределения Гаусса представляет собой функцию Гаусса, которая принимает форму:
Хотя графики всех распределений Гаусса имеют одинаковую общую форму колокола, параметры функции влияют на общую форму график:
Как видно из рисунка, различные μ и σ существенно влияют на форму графика, делая его выше, уже, шире и т. д. Как правило, чем больше стандартное отклонение, тем более плоской будет кривая, поскольку Вероятность данного исхода тем менее вероятна, чем дальше от кривой находится исход от среднего значения. Поскольку разные нормальные распределения могут иметь такие разные формы, стандартизация часто бывает полезной. График выше, показанный синим цветом, относится к стандартному нормальному распределению.
Стандартное нормальное распределение
Стандартное нормальное распределение — это стандартизированная форма распределения Гаусса, в которой μ = 0 и σ = 1. Следует отметить, что любое распределение Гаусса можно преобразовать в стандартное нормальное распределение. Это важно, потому что обычно для определения вероятностей различных результатов в распределении вероятностей необходимо интегрировать функцию плотности вероятности (PDF), чтобы определить площадь под кривой; это не относится к стандартному нормальному распределению. На рисунке ниже показан график распределения Гаусса.
Заштрихованная область представляет площадь под кривой или вероятность того, что результат окажется между 6 и 9. Интегрирование PDF распределения Гаусса по этому интервалу дает указанную вероятность, но поскольку PDF нормального распределения относительно сложные, для вычисления этих интегралов чаще используют калькуляторы или компьютеры.
В случае стандартного нормального распределения вероятности различных исходов уже сведены в таблицы. Таким образом, вместо того, чтобы интегрировать для определения интересующих вероятностей, мы можем просто считать вероятности из того, что называется Z-таблицей. Это, в свою очередь, позволяет нам легко сравнивать различные нормальные распределения.
Преобразование в стандартное нормальное распределение
Для заданной случайной величины X, имеющей гауссово распределение, отдельные значения можно стандартизировать по следующей формуле:
стандартное отклонение, а x — значение, которое нужно преобразовать. Все значения в распределении Гаусса могут быть преобразованы в Z-показатели с помощью этой формулы, и полученное распределение называется стандартным нормальным распределением или Z-распределением.
Z-показатель указывает количество стандартных отклонений данного значения от среднего. Например, Z-показатель, равный 1, указывает на то, что значение составляет 1 стандартное отклонение от среднего значения. Z-оценка может быть положительной, отрицательной или нулевой.
- Положительный показатель Z указывает на то, что значение выше (справа) от среднего.
- Отрицательный показатель Z указывает на то, что значение ниже (слева) от среднего значения.
- Показатель Z, равный 0, означает, что значение равно среднему значению.
Z-счета используются в сочетании с Z-таблицами для определения различных вероятностей.
Пример
Средний рост пятиклассников в данном школьном округе составляет 52 дюйма со стандартным отклонением 2,4 дюйма. Предполагая, что рост пятиклассников в округе распределен нормально, найти вероятность того, что случайно выбранный пятиклассник выше 56 дюймов.
Сначала преобразуйте интересующее значение в Z-значение:
Существует несколько различных типов Z-таблиц. Таблица Z на рисунке ниже является кумулятивным из таблицы среднего Z, что означает, что значение в таблице представляет вероятность того, что результат будет лежать в интервале между средним значением (0) и выбранным Z-показателем (1,67 в данном случае). ). См. таблицу ниже.
Таким образом, существует приблизительно 45%-ная вероятность того, что результат будет лежать между Z-оценкой от 0 до 1,67. Однако это не вероятность того, что студент выше 56 дюймов; чтобы определить эту вероятность, нам нужно найти P(X > 1,67), которую мы можем определить, вычитая найденную нами вероятность из 50%. Это связано с тем, что 50% результатов лежат по обе стороны от среднего (для нормального распределения), поэтому мы знаем, что 50% значений лежат выше среднего, и вычитание вероятности, которую мы нашли выше, из 50%, даст нам P (X > 1,67). Это показано на рисунке ниже.
Таким образом:
0,50 — 0,45 = 0,05 = 5%
Таким образом, существует 5%-ная вероятность того, что случайно выбранный студент будет выше 56 дюймов.
$F_X(x)$ | $=P(X \leq x)$ |
$=P( \sigma Z+\mu \leq x) \hspace{20pt} \big(\textrm{где}Z \sim N(0,1)\big)$ | |
$=P\left(Z \leq \frac{x-\mu}{\sigma}\right)$ | |
$=\Phi\left(\frac{x-\mu}{\sigma}\right). |