Системы линейных алгебраических уравнений

      Комментарии к записи Системы линейных алгебраических уравнений отключены

В этой теме 0 ответов, 1 участник, последнее обновление  Васильев Владимир Сергеевич 6 мес. назад.

  • Автор
    Сообщения
  • #3067

    Системы линейных алгебраических уравнений (СЛАУ) знакомы нам со школьного курса математики, тогда же мы применяли их для решения различных практических задач, в частности с помощью них выполняется расчет схем по законам Кирхгофа — в систему записываются уравнения по току и напряжению. В школе мы решали СЛАУ путем эквивалентных преобразований, однако можно научить компьютер решать их.

    Итак, СЛАУ представляет собой набор уравнений с n неизвестными, при этом во всех уравнениях неизвестные стоят в первой степени, т.е.:

    simultaneous-linear-algebraic-equations

    СЛАУ можно представить в матричной форме, для этого коэффициенты при неизвестных помещают в матрицу, а неизвестные и свободные члены задают в виде столбцов:
    simultaneous-linear-algebraic-equations-matrix

    Два таких уравнения с двумя неизвестными могут задавать, например, прямые на плоскости — тогда точка решение системы будет соответствовать точке их пересечения. Однако, в ряде случаев решений может и не быть — например, если все коэффициенты пропорциональны, то прямые параллельны:
    a1/a2 = b1/b2 = c1/c2

    При поиске решения вручную, мы обычно пользуемся эквивалентными преобразованиями — доказано, что домножение всех коэффициентов одного уравнения на константу, а также прибавление к коэффициентам одного уравнения, коэффициентов другого уравнения не повлияет на результат. Такими преобразованиями обычно стараются свести матрицу системы к треугольному виду (чтобы нижней диагонали матрицы коэффициентов стояли нули). Однако, при выполнении таких операций на ЭВМ обязательно возникнет погрешность, из-за этого очень сложно установить, что две прямые параллельны — при проверке на равенство двух дробных чисел на ЭВМ вы всегда получите false (sqrt(2)*sqrt(2) не равно 2). Если малые погрешности вычислений могу привести к существенным погрешностям результата систему называют плохо обусловленной.

    Методы решения СЛАУ можно разделить на прямые и итерационные. Прямые методы завершают работу за заранее известное число шагов, с их помощью из СЛАУ можно выделить неизвестные по заранее известной формуле. К таким методам относятся методы Гаусса, Крамера и т.п. Недостаток таких методов заключается в том, что погрешность накапливается в процессе вычисления и для больших матриц может оказываться существенной (редко применяется при количестве уравнений >200), они плохо подходят для плохо обусловленных систем, кроме того, в ряде случаев целесообразно учесть структуру матрицы (на практике часто встает задача решения СЛАУ, заданной трех- и пяти- диагональной матрицей). Итерационные методы решения СЛАУ позволяют получить решение системы с заданной точностью за счет использования циклического процесса, в котором точность повышается с каждой итерацией — это подходит для решения плохо обусловленных СЛАУ. В таких алгоритмах задается некоторое начальное приближение, путем подстановки корней опредляется невязка (погрешность вычисления) и с помощью определенных алгоритмов уточняется решение. Прямые и итерационные методы могут использовать совместно — в качестве начального приближения итеративному методу задается результат полученный прямым методом.

Для ответа в этой теме необходимо авторизоваться.