Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Пример расчета в пакете 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)

 

Получим следующий график:

 


 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал