IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> LU-разложение
сообщение
Сообщение #1


Бывалый
***

Группа: Пользователи
Сообщений: 198
Пол: Мужской

Репутация: -  1  +


доброго времени суток
цель: реализовать метод LU-разложения для решения СЛАУ размерности 6х6
метод несложный, вроде все верно делаю, а корни неправильные получаются
сама матрица передается в ish_matr, свободные члены в svob_koeffs



type
Tmass=array[1..100] of double;
Tmatrix=array[1..100,1..100] of double;
var
Form1: TForm1;
korni,z:Tmass;
ish_matr:TMatrix; svob_koeffs:TMass;
L,U: TMatrix;

const
krat=6;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

procedure LU(a:TMatrix; free:TMass);

function sum_korni(i,f:integer):double;
var j:integer;
s:double;
begin
s:=0;
case f of
0: for j:=1 to i-1 do s:=s+z[j]*L[i,j];
1: for j:=i+1 to krat do s:=s+korni[j]*U[i,j];
end;
Result:=s;
end;

var
i,j,k:integer;
begin
for i:=1 to krat do
for j:=1 to krat do U[i,j]:=a[i,j];
for i:=1 to krat do begin
for j:=i to krat do begin
L[j,i]:=U[j,i]/U[i,i];
end;
end;
for k:=2 to krat do begin
for i:=k-1 to krat do
for j:=i to krat do
L[j,i]:=U[j,i]/U[i,i];
for i:=k to krat do
for j:=k-1 to krat do
U[i,j]:=U[i,j]-L[i,k-1]*U[k-1,j];
end;
z[1]:=free[1]/L[1,1];
for i:=2 to krat do begin
z[i]:=(free[i]-sum_korni(i,0))/L[i,i];
end;
korni[krat]:=z[krat]/U[krat,krat];
for i:=krat-1 downto 1 do begin
korni[i]:=z[i]-sum_korni(i,1);
end;
end;


var i, j: integer;
begin
...
LU(ish_matr,svob_koeffs);
Memo1.Clear;
for i:=1 to 6 do Memo1.Lines.Add('p['+IntToStr(i)+']='+FloatToStrf(korni[i], ffGeneral, 8, 3));
end;

end.

прямой и обратный ход делал как тут показано

Сообщение отредактировано: marwell -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Бывалый
***

Группа: Пользователи
Сообщений: 155
Пол: Мужской

Репутация: -  0  +


Why not settling on games that is fun and at the same time your earning. Well it'll make suspense because the game is well but dude just try it and it gave me hope while pandemic is real rn. The Memoirs of Gambling
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 20.04.2024 20:31
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name