Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Пример расчета в пакете MATLAB.
1.1. Найти в пакете MATLAB решение интегрального уравнения Фредгольма: Решение: function z=Q_Fredholm(t, s) z=1/sqrt(t+s^2);
function z=F_Fredholm(t) z=sqrt(t+1)-sqrt(t+9)+t;
function [X, Y]=Solve_Fredholm(a1, b1, N, Lambda) % задание временной сетки h=(b1-a1)/(N-1); i=1: N; t(i)=a1+h*(i-1); s=t; %задание коэффициентов квадратурной формулы методом трапеций A(1)=0.5; m=2: N-1; A(m)=1; A(N)=0.5; %вычисление значений функции Q(t, s) в узлах сетки for i=1: N for j=1: N q(i, j)=Q_Fredholm(t(i), s(j)); end; end;
%вычисление значений функции f(t)в узлах временной сетки F=F_Fredholm(t); for i=1: N for j=1: N if i==j M(i, j)=1-Lambda*A(i)*q(i, j)*h; else M(i, j)=-Lambda*A(i)*q(i, j)*h; end; end; end; %нахождение решения интегрального уравнения X=t; Y=M^-1*F'; Результаты: > > a1=1; > > b1=2; > > N=300; > > Lambda=1; > > [X, Y]= Solve_Fredholm (a1, b1, N, Lambda); > > plot(X, Y)
Получим следующий график:
1.2. Найти в пакете MATLAB решение интегрального уравнения Вольтерра: Решение: function z=Q_Voltaire(t, s) z=t*sin(t*s^3)^2;
function z=F_Voltaire(t) z=2*t-1/4*tan(t);
function [T, Y]=Solve_Voltaire(t1, t2, N) % задание временной сетки h=(t2-t1)/(N-1); i=1: N; t(i)=t1+h*(i-1); s=t; %задание коэффициентов квадратурной формулы методом трапеций A(1)=0.5; m=2: N-1; A(m)=1; A(N)=0.5; %вычисление значений функции Q(t, s) в узлах сетки for i=1: N for j=1: N q(i, j)=Q_Voltaire(t(i), s(j)); end; end; %вычисление значений функции f(t)в узлах временной сетки F=F_Voltaire(t); %вычисление решения интегрального уравнения x(1)=F(1)/(1-A(1)*q(1, 1)); for m=2: N S=0; for j=1: m-1 S=S+h*A(j)*q(m, j)*x(j); end; x(m)=F(m)+S./(1-h.*A(m).*q(m, m)); end; T=t; Y=x; Результаты: > > t1=0; > > t2=5; > > N=300; > > [X Y]=Solve_Voltaire(t1, t2, N); > > plot(X, Y)
Получим следующий график:
|