Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Обратные и некорректные задачи биофизики. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
57 axis ([ a,b,1−0.1,1+0.1 ]); 58 xlabel ('x' ); 59 ylabel ('\phi' ); 60 hold off ; 61 end
Решим с помощью этой функции уравнение вида (4.13) с границами отрезка ин-
тегрирования a = −π и b = π, параметром λ =3/(10π) и ядром
1
K(x, s)=
0.64 cos
а также с правой частью f (x)=25− 16 sin
2
(x).
x+s
2
2
,
− 1
Точное решение этого уравнения φ(x)=17/2 + (128/17) cos(2x). Надо найти при- ближенное решение этого уравнения методом квадратур, основанным на использова­нии формулы трапеций с равномерной сеткой с шагом h =0.1, и сравнить с точным.
18
16
14
12
10
8
6
4
2
0
-4 -3 -2 -1 0 1 2 3 4
x
Рис. 4.3. Результаты решения примера. Непрерывной линией обозначено точное ре­шение, кружочками - приближенное решение
4.2.2 Метод вырожденных ядер
В главе 3 мы разбирали метод решения уравнения Фредгольма с вырожденным ядром. Реализуем описанный в главе 3 алгоритм в виде функции на языке Matlab.
1 close all 2 clear all
41
3 clc 4 syms x y 5 a=0; 6 b=1; 7 alpha = [1 2 8 beta = [1 x] ;
9 lambda = 1; 10 f=(−x/6) − 1/2; 11 phi=degenerate_kernel_Fred_II(a , b , lambda , alpha , beta , f )
12 13 function [ phi ] = degenerate_kernel_Fred_II(a , b , lambda , alpha , beta , f ) 14 syms x 15 format long 16 n = length ( alpha); 17 r = zeros(n,1); 18 M = zeros (n); 19 for i=1:n 20 r(i) = int(beta(i) 21 for j=1:n 22 M( i , j ) = −lambda 23 end 24 end 25 for i=1:n 26 M( i , i ) = 1 + M( i , i ) ; 27 end 28 c=M\r ; 29 y_x = 0; 30 for i=1:n 31 y_x = y_x + c ( i ) 32 end 33 phi= y_x 34 end
x];
*
*
*
lambda + f ;
*
f, x, a, b);
*
int(beta(i)*alpha( j ) , x , a , b ) ;
alpha( i );
Решим с помощью этой функции уравнение с вырожденным ядром
1
φ(x) −
(1 + 2xs)φ(s)ds = −
0
1 6
x −
1
.
2
Результатом работы является символьное выражение точного решения исходного уравнения:
1
φ =
+ x.
2
4.2.3 Метод наименьших квадратов
1.Описание метода. Выражение для невязки уравнения Фредгольма II рода, имеет следующий вид:
b
Rφ(x)=φ(x) − λ
K(x, y)φ(y)dy − f(x),x ∈ [a, b]. (4.17)
a
42
Его приближенное решениеφ(x) будем искать в виде
n
φ(x)=
ciϕi(x),x∈ [a, b]. (4.18)
i=1
где c
−неизвестные константы, подлежащие определению (свободные параметры),
i
ϕ(x)−заданные линейно независимые (координатные) функции. Обозначим буквой c вектор неизвестных коэффициентов c
, i =1,2, ..., n. Подставим (4.18) в (4.17) и
i
положим
ε(x, c)=Rφ(x).
Тогда для ненулевой невязки имеем
ε(x, c)=
Постоянные c
⎡
n
найдем из условий минимума функционала
i
i=1
⎣
c
i
(x) − λ
ϕ
i
J(c)=
b
K(x, y)ϕi(y)dy
a
b
ε2(x, c)dx, (4.20)
a
⎤
⎦
− f (x),x∈ [a, b]. (4.19)
т.е. из условий
∂J
=0,i =1, 2, ..., n.
∂c
i
Подставим (4.19) в (4.20)
J(c)=
⎡
b
⎣
a
n
i=1
⎡
⎣
ϕ
c
i
(x) − λ
i
b
K(x, y)ϕi(y)dy
a
⎤
⎦
− f (x)
⎤
2
⎦
dx
Вычислим частные производные:
∂J ∂c
⎡
b
=
i
⎣
2
a
n
j=1
⎡
⎣
ϕ
c
j
(x) − λ
j
b
K(x, y)ϕj(y)dy
a
⎤
⎦
− f (x)
⎤
⎡
⎦
⎣
·
ϕi(x) − λ
b
K(x, y)ϕi(y)dy
a
i =1, 2, .., n.
Приравняем их нулю. Получим систему линейных алгебраических уравнений с сим­метричной матрицей относительно неизвестных
n
aijcj= bi,i=1, 2, .., n,
j=1
где
⎡
b
⎣
=
a
ij
ϕ
(x) − λ
j
a
b
K(x, y)ϕj(y)dy
a
⎤
⎡
⎦
⎣
·
ϕi(x) − λ
b
K(x, y)ϕi(y)dy
a
⎤
⎦
dx, i, j =1, 2, .., n.
⎤
⎦
dx,
43
bi=
b
f(x)
⎡
⎣
ϕi(x) − λ
b
K(x, y)ϕi(y)dy
⎤
⎦
dx, i =1, 2, .., n.
a
a
Решим эту систему и запишем приближенное решение исходного интегрального урав­нения в виде (4.18).
Напишем на языке Matlab функцию, реализующую этот метод.
1 clear all
2 close all
3 clc
4 syms x s ;
5 a=−1;
6 b=1;
7 K=@ ( x , s ) x
8 f=@(x ) x ;
9 y_exact=@(x)3 10 lambda=1; 11 n=5; 12 m=20; 13 [ y, c]=mnkcoef (a ,b,K, lambda , f , n ,m ); 14 c ' ; 15 x = linspace (a,b,m); 16 figure (1) 17 plot (x,y,' ro' ,x, y_exact(x) ,'b' ) 18 xlabel ('x' ); 19 ylabel ('\phi' );
20 21 function [ y , c] =mnkcoef (a ,b,K,L, f , n ,m) 22 B=zeros (n,1); 23 A=zeros(n); 24 syms x s 25 format long 26 for i=1:n 27 for j=1:n 28 A( i , j )= in t (( f i i ( x , j )−L. 29 L. 30 end 31 B( i )=int ( f (x) . 32 L. 33 end 34 c=A\B ; 35 x1 = linspace(a,b,m); 36 y=0; 37 for i=1:ny=y+c(i) 38 end 39 end
40 41 function P= fii( x,n ) 42 P= x.^(n−1); 43 end
int ( K(x,s) .*fii(s,i),s,a,b)), x, a, b);
*
int ( K(x,s) .*fii(s,i),s,a,b)), x, a, b);
*
s;
*
x;
*
int(K(x, s) .*fii(s,j),s,a,b)).*(fii(x,i)− ...
*
(fii(x,i)− ...
*
fii(x1,i );
*
44
Решим с помощью этой функции уравнение вида
1
φ(x)=x +
xsφ(s)ds, x ∈ [−1, 1].
−1
Точное решение этого уравнения φ(x)=3x. Приближенное решение будем искать в виде
φ(x)=c
+ c2x,
1
т.е. положим ϕ
3
2
1
0
-1
-2
-3
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
(x)=1,ϕ2(x)=x
1
x
Рис. 4.4. Результаты решения примера. Непрерывной линией обозначено точное ре­шение, кружочками - приближенное решение
45
4.2.4 Метод Галеркина - Петрова
1.Описание метода.
Пусть решение уравнения уравнения Фредгольма II рода, разыскивается в линей­ном пространстве со скалярным произведением. Выберем в нем две системы линейно­независимых функций: ϕ запишем в виде
−подлежащие определению коэффициенты. Ясно, что если невязка (4.17, для
где c
j
функцииφ(x) равна нулю (т. е.φ(x)−точное решение), то она ортогональна каждой из функций ψ
(x)), i =1, 2, ..., n. Используем эти же условия ортогональности для
i
обеспечения малости невязки уравнения с приближенным решениемφ(x):
(x) и ψi(x), i =1, 2, ..., n. Приближенное решение уравнения
i
n
φ(x)=f(x)+
cjϕj(x), (4.21)
j=1
(Rφ, ψ
)=0,i=1, 2, .., n. (4.22)
i
Пусть скалярное произведение определено формулой
b
(f,g)=
f(x)g(x)dx.
a
Тогда равенства (4.22) представляют собой систему линейных алгебраических урав­нений относительно неизвестных коэффициентов c
n
:
j
aijcj= bi,i=1, 2, .., n, (4.23)
j=1
где
b
a
=
ij
ϕj(x)ψi(x)dx − λ
a
b
b
= λ
i
a
ψi(x)
b
ψi(x)
a
b
b
K(x, y)ϕj(y)dydx,
a
K(x, y)f (y)dydx.
a
Решив систему (4.23, найдем коэффициенты в представлении приближенного реше­ния (4.21).
Напишем на языке Matlab функцию, реализующую метод Галеркина - Петрова.
1 close all 2 clear all 3 clc 4 syms x s ; 5 K= @( x , s ) x . 6 a=−1; 7 b=1; 8 lambda = 1;
s+x. ^2;
*
46
9 f=@(x)0 10 n=2; 11 y=kem_Fred (K, f , a , b , lambda , n ); 12 x=linspace(a,b); 13 y_exact=@( x) x. ^2 14 figure (1) 15 plot (x , y_exact (x) ,' o' ) 16 hold on 17 plot (x,y,' r' ) 18 xlabel ('x' ) 19 ylabel ('\phi' )
20 21 function [f] = fi(x,m) 22 f=x.^m; 23 end
24 25 function [f] = psi(x,m) 26 f=x. ^(m−1); 27 end
28 29 function [ y]= kem_Fred(K, f , a , b, lambda , n) 30 syms x ; 31 syms s ; 32 format long 33 B=zeros (n,1); 34 A=zeros(n); 35 for j=1:n 36 B( j )=lambda 37 K( x , s ) , s , a , b) , x , a , b ) ; 38 for i=1:n 39 A(i , j )= quadl (@(x) fi (x , i ) . 40 lambda 41 psi (x, j) ,s ,a,b),x,a,b); 42 end 43 end 44 c=A\B ; 45 x1 = linspace(a,b); 46 y= f(x1); 47 for i=1:n 48 y=y+c(i) 49 end 50 end
x+1;
*
6+1;
*
int(int(psi(x,j).*f(s).*...
*
psi(x, j ),a ,b)− ...
int(int( K(x,s).*fi(s,i).*...
*
fi(x1, i);
*
*
Решим с помощью этой программы уравнение вида
1
φ(x)=x +
(xs + s2)φ(s)ds, x ∈ [−1, 1].
−1
2
Точное решение этого уравнения φ(x)=1+6x
. Приближенное решение будем искать
в виде
где ϕ
(x)=x,ϕ2(x)=x
1
φ(x)=1+c
2
(x)+c2ϕ2(x),
1ϕ1
47
7
6
5
4
3
2
1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
x
Рис. 4.5. Результаты решения примера методом Галеркина - Петрова. Непрерывной линией обозначено точное решение, кружочками - приближенное решение
48
Глава 5
Корректность по Адамару
В предыдущих разделах был сформулирован ряд обратных задач (ОЗ), возника­ющих в математической физике при моделировании различных явлений и процессов. Этим задачам, как правило, присуще такое свойство, как некорректность. Определе­ния корректности и некорректности Ж. Адамар в 1902 г. ввел понятия корректности и некорректности. Рассмотрим эти определения на примере операторного уравнения:
Aφ = f, φ ∈ Y, f ∈ F, (5.1)
где φ−искомое решение, f−заданная правая часть, Y и F −некоторые гильбертовы пространства (например W нелинейный, алгебраический, дифференциальный, интегральный и т.д.).
Определение. Задача решения уравнения (5.1) называется корректной или кор­ректно поставленной (well-posed, correct) по Адамару, если выполнены следующие три пункта:
1) решение существует,
2) решение единственно,
3) решение устойчиво.
Если хотя бы одно из этих условий (пунктов) не выполняется, то задача называ­ется некорректной или некорректно поставленной (ill- posed, incorrect). Более строго определение корректности по Адамару формулируется следующим образом.
Определение. Задача решения уравнения (5.1) называется корректной по Ада­мару, если:
1) для любого f ∈ F существует элемент φ ∈ Y такой, что Aφ = f , т.е. область
значений оператора равна R(A)=F (существование решения),
2) элементом f решение φ определяется однозначно, т.е. существует обратный
оператор A
3) имеет место непрерывная зависимость φ от f, т.е. обратный оператор A
непрерывен (устойчивость решения).
Определение корректности по Адамару называется также классическим опреде­лением корректности.
Существует еще определение корректности по Фикера, развивающее определение корректности по Адамару и делающее акцент на свойствах оператора A.
Определение. Задача решения уравнения (5.1) называется корректной по Фи­кера, если оператор A нормально разрешим (имеет замкнутую область значений).
−1
(единственность решения),
1
и L2), A−заданный непрерывный оператор (линейный,
2
−1
49
Адамар высказал утверждение, что некорректные задачи не имеют физическо­го смысла, другими словами, если уравнение, описывающее некоторую прикладную задачу, является некорректным, то или эта задача является искусственной (нереаль­ной), или она описана математически неадекватно, в частности, не учтены ограни­чения на решение, при наличии которых задача станет корректной. Адамар привел при меры некорректных задач, в частности, задачу Коши для уравнения Лапла­са. Однако данная задача имеет широкое применение в астрономии, в геофизике, в космонавтике и т.д., т.е. имеет реальный физический смысл. Более того, многие при­кладные задачи (обработки сигналов и изображений, томографии, спектроскопии, теории управления и т.д.) являются некорректными, как это выяснилось в послед­ние десятилетия. Поэтому следует заключить, что утверждение Адамара явилось необоснованным и привело к замедлению развития многих разделов как чистой, так и прикладной математики.
5.1 Примеры некорректных задач
.
Приведем примеры уравнений или их систем, задача решения которых некор­ректна.
Пример 1. Переопределенная система линейных алгебраических уравнений (СЛАУ):
⎧
2y
⎨
⎩
− 3y2= −4
1
+2y2=3
−y
1
+4y2=15
y
1
(5.2)
Данная СЛАУ действительно является переопределенной и не имеет решения, по­скольку ранг расширенной матрицы p = rang(A|f)=3, а ранг матрицы равен
r = rang(A)=2,т.е.p>r. Кроме того, число независимых строк в равно 3 и больше n, равного 2. В том, что данная СЛАУ не имеет решения y
, y2, можно убедиться
1
непосредственно.
Действительно, если рассматривать лишь первые два уравнения, то получим ре­шение: y чим: y
=3.09, т.е. (единое) решение не существует - нарушен первый пункт корректности
y
2
=1, y2=2; если рассматривать второе и третье уравнения, то полу-
1
= y2=3; если же рассматривать первое и третье уравнения, то y1=2.635,
1
по Адамару.
Пример 2. Недоопределенная СЛАУ:
− 3y2= −4
2y
1
(5.3)
Для данной СЛАУ p = r =1<n=2, поэтому она является недоопределенной и имеет множество решений.
Действительно, данная СЛАУ имеет не одно решение, например,
=1,y2=2;
1) y
1
=2,y2=8/3;
2) y
1
=0,y2=4/3 ит.д.
3) y
1
Таким образом, решение СЛАУ неединственно - нарушен 2-й пункт корректности по Адамару.
50
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]