KZ
bin
Негізгі бет
Қазірдің өзінде танымал
Тікелей эфир
Ұнаған бейнелер
Қайтадан қараңыз
Жазылымдар
Кіру
Тіркелу
Ең жақсы KZbin
Фильм және анимация
Автокөліктер мен көлік құралдары
Музыка
Үй жануарлары мен аңдар
Спорт
Ойындар
Комедия
Ойын-сауық
Тәжірибелік нұсқаулар және стиль
Ғылым және технология
Метод простой итерации.
9:35
А.7.40 Метод Якоби поиска собственных векторов и значений симметричных матриц
28:14
“Don’t stop the chances.”
00:44
IL'HAN - Qalqam | Official Music Video
03:17
She made herself an ear of corn from his marmalade candies🌽🌽🌽
00:38
🤔Можно ли спастись от Ядерки в Холодильнике ? #shorts
00:41
Метод вращения. Метод Якоби. Поиск собственных значений матрицы.
Рет қаралды 961
Facebook
Twitter
Жүктеу
1
Жазылу 217
Science Club
Күн бұрын
Пікірлер: 4
@OnTheWayToTheDirection
7 ай бұрын
Команды для генерации анимации: manim main.py play_whole_scenario - полный рендер manim main.py -pql - быстрый рендер
@arsenozd
16 күн бұрын
А что делать, если диагональные элементы матрицы равны дур другу?
@OnTheWayToTheDirection
7 ай бұрын
Python Manim скрипт, с помощью которого созданы некоторые анимации: from manim import * import math from math import cos from math import sin class MethodYacoby(MovingCameraScene): def construct(self): A = np.array([[1, 2, -1], [2, 3, 4], [-1, 4, 5]]) eps = 0.0001 # точность n = 3 eigenvalues = np.zeros(n) # Инициализируем вектор собственных значений #- self.play( Write(Text("Матрицы А:").to_corner(UL).scale(0.5)), Write(Text("Матрицы H:").to_corner(UR).scale(0.5)) ) #- # Повторяем вращения Якоби, пока не достигнем требуемой точности iteration = 0 while True: # Находим наибольший по модулю внедиагональный элемент max_off_diag = 0 p = q = 0 for i in range(n): for j in range(i+1, n): if abs(A[i, j]) > max_off_diag: max_off_diag = abs(A[i, j]) p, q = i, j #- _A = Matrix(A.round(2)).scale(0.6).move_to(LEFT*4.7 + DOWN*3*iteration) matrix_label = Text(f"Матрица A:",font=BOLD, font_size=13).next_to(_A, UP) i = Text(f"Итерация: {iteration}",font=BOLD, font_size=13).next_to(_A, LEFT).rotate(PI/2) self.play(Write(i)) self.play(Write(matrix_label)) self.play(Write(_A)) #- # Если внедиагональные элементы пренебрежимо малы, мы достигли сходимости if max_off_diag < eps: eigenvalues = np.diag(A) break # Вычисляем угол вращения Якоби theta = 0.5 * math.atan2(2 * A[p, q], A[p, p] - A[q, q]) #- inf_label = Text(f"Индексы максимального недиагонального элемента p = max_i = {p} q = max_j = {q} Максимальный недиагональный элемент: {max_off_diag}", font=BOLD, font_size=13).move_to(DOWN*3*iteration + UP/2) self.play(Write(inf_label)) #- #- ang_label = Text(f"Угол поворота = {round(theta, 2)} [радиан]",font=BOLD, font_size=13).next_to(inf_label, DOWN) self.play(Write(ang_label)) #- #- error_label = Text(f"Погрешность: {max_off_diag}, Требуемая точность: {eps}",font=BOLD, font_size=13).next_to(ang_label, DOWN) self.play(Write(error_label)) #- # Строим матрицу вращения H H = np.eye(n) # ? """ H = np.eye(3) = [[1, 0, 0], [0, 1, 0], [0, 0, 1]] """ H[p, p] = H[q, q] = math.cos(theta) H[p, q] = -math.sin(theta) H[q, p] = math.sin(theta) #- _H = Matrix(H.round(2)).scale(0.65).move_to(RIGHT*5.5 + DOWN*3*iteration) matrix_label = Text(f"Матрица поворота H:",font=BOLD, font_size=13).next_to(_H, UP) self.play(Write(matrix_label)) self.play(Write(_H)) #- self.play( self.camera.frame.animate.move_to(DOWN*3*(iteration+1)) ) # Применяем вращение к матрице A A = H.T @ A @ H iteration += 1 eigenvalues[0] eigenvalues[1] eigenvalues[2]
@OnTheWayToTheDirection
7 ай бұрын
Алгоритм Якоби python: ```python import numpy as np import math def jacobi_eigenvalues_H(A, eps=1e-10): n = 3 eigenvalues = np.zeros(n) # Инициализируем вектор собственных значений iteration = 0 # Повторяем вращения Якоби, пока не достигнем требуемой точности while True: # Находим наибольший по модулю внедиагональный элемент max_off_diag = 0 p = q = 0 for i in range(n): for j in range(i+1, n): if abs(A[i, j]) > max_off_diag: max_off_diag = abs(A[i, j]) p, q = i, j # Если внедиагональные элементы пренебрежимо малы, мы достигли сходимости if max_off_diag < eps: eigenvalues = np.diag(A) break # Вычисляем угол вращения Якоби theta = 0.5 * math.atan2(2 * A[p, q], A[p, p] - A[q, q]) # Строим матрицу вращения H H = np.eye(n) # ? H[p, p] = H[q, q] = math.cos(theta) H[p, q] = -math.sin(theta) H[q, p] = math.sin(theta) print("Матрица поворота:") print(H) # Применяем вращение к матрице A A = H.T @ A @ H iteration += 1 return eigenvalues A = np.array([[1, 2, -1], [2, 3, 4], [-1, 4, 5]]) eigenvalues = jacobi_eigenvalues_H(A) print("Собственные значения:", eigenvalues) ```
9:35
Метод простой итерации.
Science Club
Рет қаралды 116
28:14
А.7.40 Метод Якоби поиска собственных векторов и значений симметричных матриц
dUdVstud
Рет қаралды 6 М.
00:44
“Don’t stop the chances.”
ISSEI / いっせい
Рет қаралды 62 МЛН
03:17
IL'HAN - Qalqam | Official Music Video
Ilhan Ihsanov
Рет қаралды 700 М.
00:38
She made herself an ear of corn from his marmalade candies🌽🌽🌽
Valja & Maxim Family
Рет қаралды 18 МЛН
00:41
🤔Можно ли спастись от Ядерки в Холодильнике ? #shorts
King jr
Рет қаралды 7 МЛН
15:20
Метод Ньютона для систем нелинейных уравнений.
Science Club
Рет қаралды 809
39:58
Обратная матрица (2 способа нахождения)
Valery Volkov
Рет қаралды 429 М.
19:37
Собственные векторы и собственные значения матрицы
Tatyana Grygoryeva (MathQuick)
Рет қаралды 38 М.
21:47
Якобиан и его геометрический смысл
Максим Бабушкин
Рет қаралды 10 М.
5:22
Матрица поворота
Евдмал ФИЗМАТ без боли
Рет қаралды 25 М.
20:54
Вы НЕ умеете замечать ЗНАКИ и ПОДСКАЗКИ от жизни
МАРГУЛАН СЕЙСЕМБАЙ
Рет қаралды 255 М.
14:54
Собственные значения и собственные векторы матрицы (4)
ivatrishi
Рет қаралды 160 М.
23:26
Матрицы: начало. Высшая математика
Математик МГУ
Рет қаралды 669 М.
11:30
Метод простой итерации Пример Решения
Навчу
Рет қаралды 50 М.
18:36
ЭЙЛЕР. Грандиозное математическое наследие
Wild Mathing
Рет қаралды 111 М.
00:44
“Don’t stop the chances.”
ISSEI / いっせい
Рет қаралды 62 МЛН