Автор: Пользователь скрыл имя, 22 Ноября 2011 в 17:52, курсовая работа
Точный метод решения СЛАУ - метод Холецкого (метод квадратных корней).
Он применяется в случае, если матрица системы является симметричной и положительно определенной. В основе метода лежит алгоритм специального LU-разложения матрицы А, где L - нижняя треугольная матрица, а U - верхняя треугольная матрица (если главный минор не равен 0, то существует разложение, причем оно единственно).
Министерство образования и науки РФ
ГОУ ВПО
Тамбовский государственный технический
университет
Кафедра:
«ТО и ПТ»
Лабораторная работа №2
«Решение системы линейных алгебраических уравнений
Метод Халецкого»
Выполнила: студентка группы СМП-31
Павлова А.Г
Проверил:
Ермаков А.А
Тамбов
2011
Точный метод решения СЛАУ - метод Холецкого (метод квадратных корней).
Он применяется в случае, если матрица системы является симметричной и положительно определенной. В основе метода лежит алгоритм специального LU-разложения матрицы А, где L - нижняя треугольная матрица, а U - верхняя треугольная матрица (если главный минор не равен 0, то существует разложение, причем оно единственно).
Разбиение матрицы
А=
на верхнюю и нижнюю к примеру
будет выглядеть так
L =
и U =
.
В результате преобразований
матрица А приводится к виду A=
(где
- транспонированная матрица). Если
разложение получено, то решение системы
сводится к последовательному решению
двух систем с треугольными матрицами:
и
. Для нахождения коэффициентов матрицы
L неизвестные коэффициенты матрицы
приравнивают соответствующим элементам
матрицы A. Затем последовательно находят
требуемые коэффициенты по формулам:
, i = 2, 3,..., m,
, i = 3, 4,..., m,
, i = k+1,..., m,
Постановка
задачи
Решить систему
линейных алгебраических уравнений
вида Ах=b, где А={ау} – квадратная
матрица порядка m, b={b1, b2,…,bm}T – вектор-столбец
правых частей системы. По найденному
решению получить вектор навязки правой
части системы.
Решение
программы в Matlab
A=[ 0.38 -0.05 0.01 0.02 0.07;...
0.052 0.595 0 -0.04 0.04;...
0.03 0 0.478 -0.14 0.08;...
-0.06 1.26 0 0.47 -0.06;...
0.25 0 0.09 0.01 0.56 ] ;
B=[ 2.32;
2.544;
-3.238;
1.534;
0.12];
[N,N]=size(A);
u=zeros(N,N);
z=zeros(N,1);
x=zeros(N,1);
u(1,1)=sqrt(A(1,1));
for j=2:N;
u(1,j)=A(1,j)/u(1,1);
end
for i=2:N
s=0;
for k=1:i-1;
s=s+u(k,i)*u(k,i);
end
if (A(i,i)-s)<0,break,end
u(i,i)=sqrt(A(i,i)-s);
for j=i+1:N;
s=0;
for k=1:i-1
s=s+u(k,i)*u(k,i);
end
u(i,j)=(A(i,j)-s)/u(i,i);
end
end
end
z(1)=B(1)/u(1,1);
for i=2:N
s=0;
for k= 1:i-1
s=s+u(k,i)*u(k,i);
end
z(i)=B(i)-s/u(i,i);
end
x(N)=z(N)/u(N,N);
for i=N-1:-1:1
s=0;
for k=i +1:N
s=s+u(i,k)*x(k);
end
x(i)=(z(i)-s)/u(i,i);
end
x
Результат
x =
6.5331
3.4358
-4.0312
2.2625
0.0608
Информация о работе Решение системы линейных алгебраических уравнений Метод Халецкого