# Учебная практика 2022. Вторник 5.07. Производные и интегралы.
[TOC]
## Определения
Пусть на интервале $(x_{min}, x_{max})$ заданы две функции $\varphi(x)$ и $\psi(x)$ и пусть
$$
d(x)= \psi(x) - \varphi(x)
$$
Назовем расстоянием $\rho$ между функциями $\varphi(x)$ и $\psi(x)$ величину:
$$
\rho = \max_{x \in (x_{min}, x_{max})} |d(x)|
$$
## Библиотека [Algebrite](http://algebrite.org/)

[Algebrite](https://github.com/davidedc/Algebrite) — это простая, понятная и расширяемая javascript библиотека символьных вычислений.
[Пример использования](https://AlgebriteTest.arthmax.repl.co)
<iframe src=https://AlgebriteTest.arthmax.repl.co width=800 height=250> </iframe>
[Algebrite](http://algebrite.org/) - это ...
1) легко расширяемая библиотека символьных вычислений. Она сделана простой для понимания и расширения и зависит только от библиотеки BigInteger.js Питера Олсона
2) автономная библиотека - не требует подключения к серверам или другой «внутренней» CAS библиотеки. Ее можно использовать как интерактивный инструмент и ее можно встраивать в ваши приложения, а также дополнять пользовательскими функциями.
3) бесплатная и открытая: лицензия MIT
[Функции](http://algebrite.org/docs/latest-stable/reference.html)
...и это лишь небольшая часть ее особенностей.
К ней можно обращаться как помощью API, так и использовать ее пользовательский язык сценариев
Algebrite поставляется со своим собственным языком сценариев, но все функции также доступны в виде API для стандартной интеграции JS. Описание API см. в [справочнике по функциям](http://algebrite.org/docs/latest-stable/reference.html).
# Общее вычислительное задание
## [1. Производные.](https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B8%D0%B7%D0%B2%D0%BE%D0%B4%D0%BD%D0%B0%D1%8F_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B8)

### [1.1 Символьные производные.](https://en.wikipedia.org/wiki/Automatic_differentiation)

Получить символьную производную $f'(x)$ заданной функции $f(x)$ с помощью библиотеки [Algebrite](http://algebrite.org/) и на заданном интервале $(x_{min}, x_{max})$ получить численные значения $f'(x)$, визуализировать все ее корни с точностью $\delta_0$ и сравнить с экстремумами функции $f(x)$.
### [1.2 Численное дифференциирование.](https://ru.wikipedia.org/wiki/%D0%A7%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5_%D0%B4%D0%B8%D1%84%D1%84%D0%B5%D1%80%D0%B5%D0%BD%D1%86%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)

Получить на интервале $(x_{min}, x_{max})$ приближенные численные значения производной $\tilde f'(x)$ заданной функции $f(x)$ с помощью
1) Прямых разниц
$$
f_r'(x) \approx \frac{f(x+\delta x)-f(x)}{\delta x}
$$
2) Обратных разниц
$$
f_b'(x) \approx \frac{f(x)-f(x-\delta x)}{\delta x}
$$
2) Центральных разниц
$$
f_c'(x) \approx \frac{f(x+\delta x)-f(x-\delta x)}{2\cdot\delta x}
$$
и визуализировать их графики
### 1.3 Вычислить оценки
Вычислить оценки $\rho_r, \rho_b, \rho_c$
$$
\rho_r = \max_{x \in (x_{min}, x_{max})} |d_r(x)| = \max_{x \in (x_{min}, x_{max})} |f'(x)-f_r'(x)|
$$
$$
\rho_b = \max_{x \in (x_{min}, x_{max})} |d_b(x)| = \max_{x \in (x_{min}, x_{max})} |f'(x)-f_b'(x)|
$$
$$
\rho_c = \max_{x \in (x_{min}, x_{max})} |d_c(x)| = \max_{x \in (x_{min}, x_{max})} |f'(x)-f_c'(x)|
$$
и сделать выводы.
## [2. Интегралы](https://en.wikipedia.org/wiki/Integral)
$$
F(x) = \int f(x) dx
$$

### [2.1 Символическое интегрирование.](https://en.wikipedia.org/wiki/Symbolic_integration)
Получить символьное представление антипроизводной (неопределенного интеграла) $F(x)$ заданной функции $f(x)$
$$
\frac{dF}{dx} = f(x)
$$
с помощью библиотеки [Algebrite](http://algebrite.org/), если это возможно.
На заданном интервале $(x_{min}, x_{max})$ получить численные значения $F(x)$, визуализировать все ее экстремумы с точностью $\delta_0$ и сравнить с нулями функции $f(x)$.
### [2.2 Численное интегрирование.](https://en.wikipedia.org/wiki/Numerical_integration)

Получить на интервале $(x_{min}, x_{max})$ приближенные численные значения интеграла заданной функции $f(x)$
$$
F(x_{max}) - F(x_{min}) = \int_{x_{min}}^{x_{max}} f(x) dx
$$
с помощью
1) [метода (центральных) прямоугольников](https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%BF%D1%80%D1%8F%D0%BC%D0%BE%D1%83%D0%B3%D0%BE%D0%BB%D1%8C%D0%BD%D0%B8%D0%BA%D0%BE%D0%B2)

2) [метода трапеций](https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D1%82%D1%80%D0%B0%D0%BF%D0%B5%D1%86%D0%B8%D0%B9)

3) [метода Симпсона](https://ru.wikipedia.org/wiki/%D0%A4%D0%BE%D1%80%D0%BC%D1%83%D0%BB%D0%B0_%D0%A1%D0%B8%D0%BC%D0%BF%D1%81%D0%BE%D0%BD%D0%B0)

и визуализировать их значения
Для визуализации графиков интегралов можно вычислить приближенный интеграл $\tilde F(x)$ с переменной верхней границей:
$$
\tilde F(x) = \int_{x_{min}}^{x} f(x) dx
$$
### 2.3 Вычислить оценки
Сравнить полученные приближенные значения интегралов с гораздо более точными значениями получаемыми из символических антипроизводных по [формуле Ньютона-Лейбница](https://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D0%BE%D1%80%D0%B5%D0%BC%D0%B0_%D0%9D%D1%8C%D1%8E%D1%82%D0%BE%D0%BD%D0%B0_%E2%80%94_%D0%9B%D0%B5%D0%B9%D0%B1%D0%BD%D0%B8%D1%86%D0%B0) и сделать выводы.
## Значения по умолчанию
По умолчанию приближенные вычисления производных и интегралов выполняются в интервале $(x_{min}, x_{max})=(-5.0, 5.0)$ с параметром
$$
\delta_x = 10^{-9}
$$
Проверить работу ваших методов для функций
а) $f_c(x)= -2062943/20736 +27c/16 + 27c^2/8 + 3c^3 + c^4 - 32x/27 + 8x^2/3 - 8x^3/3 + x^4$
б) $f_c^n(x)=c^n+c^{n-1}x+c^{n-2}x^2+c^{n-3}x^3 +...+cx^{n-1}+x^n$
в) $f_c(x)=\sin(x)+\tan(cx)$
г) $f_c(x)=x+\sin^2(x)$
д) $f_c(x)=(x-c)/(x+1-c)$
e) $f_c(x) = \displaystyle\sum_{n = 0}^{\infty}\dfrac{1}{2^n}\cos(c^n\pi x)$
(по умолчанию значение параметра $c=1$. )
# Ссылки для работы и самостоятельного ознакомления:
1. http://algebrite.org/
2. https://github.com/davidedc/Algebrite
3. http://algebrite.org/docs/latest-stable/reference.html
4. https://AlgebriteTest.arthmax.repl.co
5. https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B8%D0%B7%D0%B2%D0%BE%D0%B4%D0%BD%D0%B0%D1%8F_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B8
6. https://ru.wikipedia.org/wiki/%D0%A7%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5_%D0%B4%D0%B8%D1%84%D1%84%D0%B5%D1%80%D0%B5%D0%BD%D1%86%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5
7. https://en.wikipedia.org/wiki/Integral
8. https://en.wikipedia.org/wiki/Symbolic_integration
9. https://en.wikipedia.org/wiki/Numerical_integration
10. https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%BF%D1%80%D1%8F%D0%BC%D0%BE%D1%83%D0%B3%D0%BE%D0%BB%D1%8C%D0%BD%D0%B8%D0%BA%D0%BE%D0%B2
11. https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D1%82%D1%80%D0%B0%D0%BF%D0%B5%D1%86%D0%B8%D0%B9
12. https://ru.wikipedia.org/wiki/%D0%A4%D0%BE%D1%80%D0%BC%D1%83%D0%BB%D0%B0_%D0%A1%D0%B8%D0%BC%D0%BF%D1%81%D0%BE%D0%BD%D0%B0
13. https://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D0%BE%D1%80%D0%B5%D0%BC%D0%B0_%D0%9D%D1%8C%D1%8E%D1%82%D0%BE%D0%BD%D0%B0_%E2%80%94_%D0%9B%D0%B5%D0%B9%D0%B1%D0%BD%D0%B8%D1%86%D0%B0
14. https://www.desmos.com/calculator/caa8powtpo
15. https://math.stackexchange.com/questions/829911/what-does-the-antiderivative-of-a-continuous-but-nowhere-differentiable-function/829936#829936