2.2 Итерационные методы решения СЛАУ (Якоби, Зейделя, релаксации)

Поделиться
HTML-код
  • Опубликовано: 22 янв 2025

Комментарии • 58

  • @АнтонАнтропов-с2р
    @АнтонАнтропов-с2р Месяц назад +1

    Великолепный урок.Благодаря вам впервые ощутил себя человеком,который способен решить хоть что-то из курса высшей математики и не почувствовать себя на фоне своих одногруппников - тупым.Спасибо!

  • @ЕгорСоколов-в8ъ
    @ЕгорСоколов-в8ъ 10 месяцев назад +1

    Большое спасибо! Очень наглядные объяснения, и, что радует, живые и практические.

  • @ДмитрийБ-я4у
    @ДмитрийБ-я4у 2 года назад +19

    Очень полезное видео, по этой теме практически нет видео на русском сегменте ютуба, спасибо за видео

  • @lizochka_polenok
    @lizochka_polenok 2 года назад +9

    спасибо вам!! через 7 часов экзамен по численным методам как раз :)

  • @darr11
    @darr11 Год назад +1

    большущее спасибо за видео, понятнее в разы чем в учебнике

  • @ИванРаспопов-г6б

    Спасибо за урок. Здоровья вам и вашим близким

  • @ЕвгенийЕлпатов
    @ЕвгенийЕлпатов 9 месяцев назад

    Спасибо, видео крутое!!! Вообще все понятно стало!!! Автор красавчик!!!

  • @kannykl7575
    @kannykl7575 3 года назад +19

    Подача 10/10
    В шоке от того что можно делать в Excel
    Можете выложить в описание файлик с кодом? Буду очень благодарен)

  • @OUR_RED_ARMY
    @OUR_RED_ARMY 6 месяцев назад

    Из недостатков можно назвать лишь отсутствие ссылки на гитхаб или диск с кодом и листами экселя)
    Урок очень хороший, всё понятно, спасибо за труд!

  • @ИванНовожилов-э9з
    @ИванНовожилов-э9з Год назад +1

    спасибо за видео - очень четко объясняете.

  • @chuuhan1
    @chuuhan1 Год назад

    Спасибо большое!

  • @Lenchka-bt4ph
    @Lenchka-bt4ph 2 года назад

    спасибо большое за информацию, за исходник был бы очень благодарен

  • @ВасилийНельков
    @ВасилийНельков Год назад

    Спасибо большое за урок! Не могли бы вы показать полностью код? Не до конца понимаю некоторые функции((

  • @the_kurbanoff
    @the_kurbanoff 9 месяцев назад +1

    если б скинули файл, вообще было бы супер

  • @ДавидМомо
    @ДавидМомо 9 месяцев назад

    Здравствуйте! В моем университете просят сделать небольшой проект в среде питон и эксель по методам решений СЛАУ ( конкретно метод Якоби, Гаусса - Зейделя). Можно ли повзаимствовать у Вас данный файл в экселе и питоне?🙏🙏
    Буду Вам безмерно признателен!!

  • @АлексейКузнецов-н6ж

    Спасибо за видео. Возник вопрос. Почему не используем текущую итерацию в методе релаксации. Зачем допустим Зейделевское X1 при вычислении X2 если мы уже получили текущие приближение X1 по релаксации?

    • @learningmeansdoing
      @learningmeansdoing  Год назад

      В принципе можно использовать и новое значение х1 для вычисления приближения х2. Попробовал так сделать для моего примера, получилось, что количество итераций или не изменилось или увеличилось на одну. Не буду утверждать, что это будет так для всех систем уравнений. Просто попробовал на одном примере из видео. В целом ваше предложение вполне логичное, может для каких-то систем уравнений это дало бы эффект.

  • @milanaalone5609
    @milanaalone5609 Год назад +1

    Здравствуйте! Можете пожалуйста подсказать, как можно реализовать метод Ньютона (метод касательных) для решения нелинейных уравнений в Python? Буду очень благодарна Вам!

    • @learningmeansdoing
      @learningmeansdoing  Год назад

      Здравствуйте. Метод Ньютона - это цикл while. В цикле выполняется вычисление очередного приближения корня и проверяется условие останова. Нужно предусмотреть ситуацию, когда вычисления расходятся, в методе Ньютона это возможно. Кстати, у меня есть видеоурок по этим методам, посмотрите.

    • @milanaalone5609
      @milanaalone5609 Год назад

      @@learningmeansdoing Возможно прозвучит немного нагло с моей стороны, но мне код для Питона нужен))

  • @Олег-ж7ь
    @Олег-ж7ь 3 года назад +1

    В формуле смещения переменных(релаксации) ошибка: в строке с x2^(к+1) должна быть зависимость от x2^(к+1) и x2^(к)

    • @learningmeansdoing
      @learningmeansdoing  3 года назад

      Посмотрел еще раз и не обнаружил ошибки. В ячейке, где считается x2(k+1) написана формула =$K$42*K47+(1-$K$42)*N46. В этой формуле ячейка K47 - это x2(k+1), найденное по методу Зейделя, а ячейка N46 - это значение x2(k) с прошлого шага расчета, $K$42 - это коэффициент омега. Вроде бы все именно так, как и планировалось.

  • @Ihor_Semenenko
    @Ihor_Semenenko Год назад

    Не стоит ли перед расчетом, проверить матрицу А? Найти ее определитель или ранг? Может там решения и нет.
    По поводу условия отстановки расчетов. Максимальаня ошщибка по Х это понятно, но ведь задачи найти решение системы, а не повторяемость Х, не важнее ли рассмотреть именно отклонение В исходных и расчитнаых с помощью полученных Х?

    • @learningmeansdoing
      @learningmeansdoing  Год назад

      По вашим вопросам. Проверить матрицу А перед решением вполне можно, почему бы и нет. По второму вопросу - в целом да, согласен. Наверное критерий близости левой и правой частей уравнений был бы более правильный с точки зрения точности полученного решения.

  • @yVq1WVav94
    @yVq1WVav94 2 года назад

    Большое спасибо за видео! А возможно где-то скачать эту эксель таблицу, самому в ней покопаться?

    • @learningmeansdoing
      @learningmeansdoing  2 года назад

      Благодарю за положительный отзыв! Поймите меня правильно. Это преподавательский контент, и студентам дано подобное задание. В данном случае я не размещаю файл с решением, чтобы слишком не облегчать задачу студентам.

    • @yVq1WVav94
      @yVq1WVav94 2 года назад

      @@learningmeansdoing Понимаю, все равно спасибо

  • @ИванЕвдокимов-л6ь

    Здравствуйте. Спасибо за лекцию. А результаты в конце видео по поводу сходимости методов +- одинаковые как для уравнений из 3-ех переменных, так и для уравнений из 1млн переменных?

    • @learningmeansdoing
      @learningmeansdoing  Год назад

      Здравствуйте. На этот счёт не могу точно сказать. Не проводил исследований для большого числа переменных. Понятно одно, чем ближе выполняется условие сходимости, тем лучше будет система сходиться. Если мы берём систему со случайными коэффициентами, то думаю, что система на 1 млн уравнений вряд ли сойдется этими методами.

  • @stenty8464
    @stenty8464 2 года назад

    Скажите пожалуйста, а можно как-то узнать что находится в функции error_calc() ? А то без нее невозможно запустить программу

    • @learningmeansdoing
      @learningmeansdoing  2 года назад +1

      Вот эта функция:
      def error_calc(x, xn):
      max_err = 0
      for j in range(len(x)):
      err = abs(x[j] - xn[j])
      if err > max_err:
      max_err = err
      return max_err

    • @stenty8464
      @stenty8464 2 года назад

      @@learningmeansdoing Благодарю!

  • @СергейКарпов-б5ф
    @СергейКарпов-б5ф 3 года назад

    Спасибо большое за объяснение, всё очень понятно и доходчиво.
    Можно ли получить данный excel документ для проверки своих решений?

  • @relax_FM_1
    @relax_FM_1 2 года назад +1

    Не должно ли быть Ах-b=0?

    • @learningmeansdoing
      @learningmeansdoing  2 года назад +1

      Вроде Ax=b то же самое

    • @relax_FM_1
      @relax_FM_1 Год назад

      @@learningmeansdoing да, то же самое
      Но у вас в начале видео
      В одном из методов написано Ax+b=0

    • @learningmeansdoing
      @learningmeansdoing  Год назад

      Да, возможно есть некоторые неточности

  • @timyrasegty7857
    @timyrasegty7857 2 года назад

    В функции random_permutations() осуществляется только перестановка строк?

    • @learningmeansdoing
      @learningmeansdoing  2 года назад

      Да, все верно. Сначала определяется, какой порядок уравнений будет наилучшим (наибольшее диагональное преобладание), а затем уравнения переставляются местами.

    • @timyrasegty7857
      @timyrasegty7857 2 года назад

      Но ведь не для всех систем достаточно перестановки только строк для обеспечения диагонального преобладания. В то же время алгоритм приведения любой матрицы к матрице с диагональным преобладанием посредством её тождественных преобразований я найти не могу (есть вариант использовать метод Жордана-Гаусса, но темы наших работ (итерационные методы решения СЛАУ) исключают всякое использование точных методов).

    • @learningmeansdoing
      @learningmeansdoing  2 года назад

      Согласен с вами, что перестановка уравнений в системе подходит не для всех систем уравнений. Кстати, об этом говорят и результаты тестов, где рассмотренные методы не дали 100%-й сходимости. Если перестановка уравнений не дает эффекта, то остается вариант использовать линейные преобразования, то есть по факту это метод Гаусса и его вариации. Может быть есть какие-то алгоритмы для обеспечения диагонального преобладания, но я таких не знаю. Уверен, что есть и другие чисто итерационные методы, у которых сходимость лучше, чем у представленных трех методов.

  • @НеляДанча
    @НеляДанча 2 года назад

    Пожалуйста, можете скинуть этот файл мне?

  • @ДмитрийБ-я4у
    @ДмитрийБ-я4у 2 года назад

    еще раз пересмотрел ваше видео и возник вопрос по поводу схождения различных методов.
    Разве преобладание главной диагонали не является достаточным условием для схождения ряда? Если так, то почему даже с достаточным условием, процент сходимости не приближен к 100? (в методах Якоби и Зейделя).
    Недостаточно оптимизированный код или я что-то упустил?

    • @learningmeansdoing
      @learningmeansdoing  2 года назад

      Преобладание главной диагонали - это достаточное условие сходимости для этих методов, все верно. Чтобы определить процент сходимости, я в программе задавал разные системы уравнений со случайными коэффициентами. Попадались разные системы уравнений: с диагональным преобладанием и без него. Поэтому сходились не все системы уравнений даже, когда пробовал переставлять уравнения местами.

    • @ДмитрийБ-я4у
      @ДмитрийБ-я4у 2 года назад

      @@learningmeansdoing понял, спасибо

    • @Ihor_Semenenko
      @Ihor_Semenenko Год назад

      Могли получится матрицы не имеющие решения, забыл ка кони называются - но ранг матрицы свободных коэффециентов у таких систем ниже чем размер матрицы (определитель будет равен нулю).

  • @ььъьъъь
    @ььъьъъь 9 месяцев назад

    2:45

  • @shelby_017
    @shelby_017 2 года назад

    Спасибо большое за видео. Никак не получается написать программу, не могу найти функцию L, у вас она вроде в начале написана, где вы не показываете, можно будет как-то посмотреть?

    • @learningmeansdoing
      @learningmeansdoing  2 года назад

      Функция L выглядит так:
      def L(A, x, i):
      L = 0
      for k in range(len(A)):
      L += A[i][k] * x[k]
      return L

  • @shelby_017
    @shelby_017 2 года назад

    А можете скинуть программу в питон для метода Якоби и Зейделя?

  • @ЕгорШарапов-и4з
    @ЕгорШарапов-и4з Год назад +1

    капец мужик умный