https://github.com/fuodorov/computational-physics
Solving problems from the course on the basics of computational physics
https://github.com/fuodorov/computational-physics
computational-physics crank-nicolson eigenvalues eigenvectors fourier machine-epsilon newton-method numerical-methods python runge-kutta tridiagonal-matrix-algorithm
Last synced: 3 months ago
JSON representation
Solving problems from the course on the basics of computational physics
- Host: GitHub
- URL: https://github.com/fuodorov/computational-physics
- Owner: fuodorov
- License: mit
- Created: 2023-09-02T04:34:05.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-05-09T06:13:40.000Z (8 months ago)
- Last Synced: 2025-05-09T07:26:25.686Z (8 months ago)
- Topics: computational-physics, crank-nicolson, eigenvalues, eigenvectors, fourier, machine-epsilon, newton-method, numerical-methods, python, runge-kutta, tridiagonal-matrix-algorithm
- Language: Jupyter Notebook
- Homepage:
- Size: 2.15 MB
- Stars: 1
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Основы вычислительной физики
Решение задач из курса по основам вычислительной физики.
---
Найти эпсилон (ulp.py)
#### Условие
*Машинным* $\epsilon$ называется такое число, что 1 + $\epsilon/2 = 1$, но $1 + \epsilon \not ={1}$. (Также часто используется обозначение ULP - *unit in the last place*, или *unit of least precision*, единица в младшем разряде.) Найти машинное $\epsilon$, число разрядов в мантиссе, максимальную и минимальную степени, при вычислениях с обычной и двойной точностью. Сравнить друг с другом четыре числа: $1, 1 + \frac{\epsilon}{2},1+\epsilon,1+\epsilon+\frac{\epsilon}{2}$, объяснить результат.
#### Указания
При использовании Python воспользуйтесь типами np.float32 и np.float64.
---
Решить уравнение (solve.py)
#### Условие
Используя методы дихотомии, простых итераций и Ньютона, найти уровень энергии $E$ основного состояния квантовой частицы в прямоугольной потенциальной яме.
---
Вычислить интегралы (int.py)
#### Условие
Вычислить интегралы методом трапеций и Симпсона:
1) $\int\frac{1}{1+x^2}dx$
2) $\int x^3e^{\sin(x)}dx$
Как убывает погрешность численного интегрирования с ростом числа интервалов?
---
Вычислить производную (int.py)
#### Условие
Используя интегральное представление для функции Бесселя целового индекса $m$ и
вычисляю производную с помощью конечной разности в тех же точках, что и сам интеграл,
продемонстрировать выполнение равенства $J_0'(x) + J_1(x) = 0$ с точностью не хуже $10^{-10}$ на отрезке $[0, 2\pi]$.
---
Провести интерполяционный полином (polynom.py)
#### Условие
Провести интерполяционный полином $P_n(x)$ для $n = 4, ..., 15$ через точки $x_k = -5 + k*\frac{10}{n}$, $y_k = \frac{1}{1 + x_k^2}$, $k = 0, ..., n$. Построить графики полиномов.
---
Решить задачу Коши (cauchy.py)
#### Условие
Решить задачу Коши методом Эйлера первого порядка точности и методоами Рунге-Кутты второго и четвертого порядка точности.
---
Решить систему уравнений хищник-жертва (lotka_volterra.py)
#### Условие
Решить систему уравнений хищник-жертва методом Рунге-Кутте второго порядка точности. Нарисовать фазовые траектории.
---
Решить жесткую систему уравнений (rigid1.py)
#### Условие
Решить жесткую систему уравнений.
---
Методом прогонки решить разностный аналог граничной задачи (run1.py)
#### Условие
Методом прогонки решить разностный аналог граничной задачи для уравнения $y'' = \cos(x)$
на промежутке $(-\pi/2, \pi/2)$
---
Решить задачу Коши для одномерного уравнения теплопроводности (crank.py)
#### Условие
Решить задачу Коши для одномерного уравнения теплопроводности методом Кранка-Николсон.
На каждом шаге по времени найти максимальное значение температуры и нарисовать зависимость максимальной температуры от времени.
Показать, что на больших временах она убывает экспоненциально. Исследовать сходимость схемы Кранка-Николсон.
---
Найти уровень энергии и волновую функцию основного состояния в потенциальной яме (schrodinger.py)
#### Условие
Найти уровень энергии и волновую функцию основного состояния в потенциальной яме,
решая конечномерный аналог спектральной задачи для одномерного стационарного уравнения Шредингера.
---
Вычислить график спектра мощности (fourier.py)
#### Условие
Вычислить и построить график спектра мощности. Сравнить спектры, полученные с прямоугольным окном и окном Ханна.
---
Курсовая работа
#### Условие
В качестве итоговой курсовой работы взят код [redpic](https://github.com/fuodorov/redpic).
---