Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #задаем параметры
- a := 0;
- b := 1;
- n := 10;
- h := (b - a)/n;#шаг сетки
- x := [seq(h*i + a, i = 0 .. n)];#узлы сетки
- K := (x, s) -> exp(s - x);#функция ядра оператора
- f := x -> exp(-x);#правая часть уравнения
- y := [seq(f(xi), i = 1 .. n)];#начальное приближение для неизвестной функции
- #итерационно решаем системы линейны уравнений методом перегонки
- for iter to 10 do
- #форматируем матрицу системы
- A := Matrix(n, n, (i, j) -> piecewise(i = j, 1 - 1/2*h*K(x[i], x[i]), -1/2*h*K(x[i], x[j])));
- #решаем систему методом перегонки
- y := LinearAlgebra[LinearSolve](A, Vector([seq(f(xi) + h/2*add(K(xi, xj)*y[j], j = 1 .. n), i = 1 .. n)]));
- end do;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement