Что делает этот калькулятор
Калькулятор узлов и весов tanh-sinh квадратуры строит абсциссы (узлы) \(x_i\) и соответствующие им веса \(w_i\), которые применяются в правиле tanh-sinh — его также называют двойной экспонентой (double-exponential, DE) — для интегрирования на стандартном отрезке [-1, 1]. Получив эти пары, вы можете приблизить любой определённый интеграл простой взвешенной суммой: интеграл f(x) по [-1, 1] примерно равен сумме произведений \(w_i\) на \(f(x_i)\).
Метод и формула
В основе tanh-sinh квадратуры лежит замена переменной \(x = \tanh\!\left(\tfrac{\pi}{2}\sinh t\right)\), которая отображает всю числовую прямую \(t\) на открытый интервал (-1, 1). Преобразованная подынтегральная функция убывает двойным экспоненциальным образом, поэтому обычная формула трапеций сходится поразительно быстро. После того как \(t\) обрезается до отрезка \([-t_a, t_a]\) и берётся \(n\) равноотстоящих точек с шагом \(h = \frac{2 t_a}{n - 1}\), каждая точка даёт следующее:
$$x_i = \tanh\!\left(\tfrac{\pi}{2}\sinh t_i\right), \qquad w_i = \frac{h\,\tfrac{\pi}{2}\cosh t_i}{\cosh^{2}\!\left(\tfrac{\pi}{2}\sinh t_i\right)}$$
$$\text{where}\quad \left\{ \begin{aligned} t_i &= -t_a + (i-1)\,h, \quad i = 1,\dots,\text{Order }n \\ h &= \frac{2\,t_a}{\text{Order }n - 1} \\ t_a &= \mathrm{round}\!\left[\left(\text{Digits} + 1\right)^{0.46},\,1\right] \end{aligned} \right.$$
То есть \(t_i = -t_a + (i - 1) h\), узел \(x_i = \tanh\!\left(\tfrac{\pi}{2}\sinh t_i\right)\) и вес \(w_i = h \tfrac{\pi}{2}\cosh t_i\), делённый на квадрат \(\cosh\) от \(\tfrac{\pi}{2}\sinh t_i\).
Как пользоваться калькулятором
Задайте порядок \(n\) (число точек выборки для формулы трапеций), выберите, определяется ли \(t_a\) автоматически по требуемой точности или вводится вручную, и укажите, сколько значащих цифр выводить. В автоматическом режиме полуширина равна \(t_a = \mathrm{round}\!\left[(\text{digits} + 1)^{0.46},\,1\right]\); для 22 цифр это даёт документированное значение по умолчанию \(t_a = 4.2\). Опция «Только половина» использует симметрию \(x_{-i} = -x_i\), \(w_{-i} = w_i\) и возвращает лишь неотрицательную часть; опция «Все» перечисляет все узлы — от значений вблизи -1 до значений вблизи +1.
Разобранный пример
При \(n = 3\), ручном \(t_a = 4\) и выборе «Все»: \(h = 8 / 2 = 4\). Три значения \(t\) равны -4, 0, 4. При \(t = 0\) получаем \(x = \tanh(0) = 0\) и \(w = \tfrac{\pi}{2} h = 1.5707963 \times 4 = 6.2831853\). При \(t = \pm 4\) аргумент \(\tfrac{\pi}{2}\sinh(4)\) огромен, поэтому \(x\) насыщается до \(\pm 1\), а вес обращается практически в 0 из-за потери значимости. При большем \(n\) и корректном \(t_a\) сумма весов стремится примерно к 2 — точному значению интеграла функции \(f = 1\) по [-1, 1].
Частые вопросы
Почему веса на краях почти равны нулю? Двойное экспоненциальное убывание заставляет квадрат \(\cosh\) от \(\tfrac{\pi}{2}\sinh t\) стремительно расти у границ, поэтому соответствующие веса исчезают — именно благодаря этому правило настолько точное.
Что здесь означает «порядок n»? Это количество равноотстоящих точек формулы трапеций на отрезке \([-t_a, t_a]\); больше точек и подходящее \(t_a\) повышают точность.
Можно ли интегрировать по произвольному отрезку [a, b]? Да — нужно сделать масштабирование: подставить \(x = \tfrac{b - a}{2} x_i + \tfrac{a + b}{2}\) и умножить каждый вес на \(\tfrac{b - a}{2}\).