МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ
В качестве примера рассмотрим применение алгоритмов кластеризации в построении структуры событий MPI-программы, реализующей решение задачи Дирихле на решетке из 16 процессов. Логически программа состоит из двух этапов: предварительная рассылка начальных данных и цикл основных вычислений. После каждой итерации цикла основных вычислений происходит обмен граничными данными между смежными процессами, как показано на рис. 1.
Алгоритмы полной связи и одиночной связи представлены на рис. 2, 3.
На рисунках выделены события, соответствующие событиям цикла основных вычислений. Как видно, оба алгоритма корректно объединили эти события в один кластер. При этом применение алгоритма полной связи позволило выявить более детальную структуру событий MPI-программы.
Библиографический список
1. MPI: A Message-Passing Interface Standard. http://www. mpi-forum.org
2. A.K. Jain et al. Data Clustering: A Review /ACM Computing Surveys, Vol. 31, No. 3, September 1999
3. K.C. Gowda and G. Krishna. Agglomerative clustering using the concept of mutual nearest neighborhood. / Pattern Recognition 10, 105-112. - 1977
СИСТЕМАТИЗАЦИЯ РЕШЕНИИ ТИПОВЫХ КРАЕВЫХ ЗАДАЧ ДЛЯ УРАВНЕНИЙ МАТЕМАТИЧЕСКОЙ ФИЗИКИ В ВИДЕ РЯДОВ ФУРЬЕ
А.В. АНТОНЕЦ, доц. каф. высшей математики МГУЛ, канд. физ.-мат. наук
Несмотря на наличие довольно объемистых справочников, облегчающих получение нужных аналитических решений как обыкновенных дифференциальных уравнений, так и классических уравнений в частных производных математической физики, практическое решение конкретных краевых задач требует интенсивного применения математических умений, которыми не всегда в достаточной степени владеют специалисты с высшим инженерным образованием. В данной работе с целью лучшего удовлетворения запросов расширенного круга разработчиков различных математических моделей предпринята попытка некоторой систематизации полученных методом разделения переменных (методом Фурье) аналитических решений типовых краевых задач математической физики в виде тригонометрических или обобщенных (по системам удобных ортогональных функций) рядов Фурье.
Рассмотрены различные краевые и смешанные начально-краевые задачи с однородными и неоднородными граничными условиями для линейных однородных и неоднородных дифференциальных уравнений с частными производными 2-го порядка с двумя независимыми переменными гиперболического, параболического и эллиптического типов. Изложенные результаты могут использоваться при подготовке учебных практикумов для студентов технических специальностей и оперативном получении информативных инженерных оценок физических взаимодействий в критических узлах машин.
1. Начально-краевые задачи для гиперболических уравнений в частных производных 2-го порядка
1.1. Изучение малых свободных поперечных колебаний конечной струны с закрепленными концами
Пусть u(x; t) = y(x; t) - форма (отклонение от положения равновесия и = 0, 0 < x < l) струны длиной l в каждый фиксированный момент времени t > 0.
Требуется найти тождественно не равную нулю непрерывную функцию u(x; t), удовлетворяющую дифференциальному уравнению в частных производных и дополнительным условиям
д2и / dt2 = а2-д2и / dx2, a = const > 0. (1.1)
Начальные условия (форма и скорости точек струны при t = 0)
u\t=0 = 9(x), ди / dt\t=0 = y(x). (1.2)
Однородные (нулевые) граничные условия (жесткое закрепление концов струны)
u\x = 0 = ^(0 = 0, и\х = i = h2(t) = 0. (1.3)
Прямая проверка показывает, что решение задачи (1.1) - (1.3) может быть представлено формулой Даламбера
x+a-t
u(x; t) = 2-1[9(x - a-t) + 9(x + a-t) + a"1 - j y(^)-d^].
x-a-t
Что касается метода Фурье, то находим полную систему (бесконечное счетное множество) ортогональных собственных функций уравнения (1.1), удовлетворяющих однородным граничным условиям (1.3) с произвольными постоянными An и Bn
180
ЛЕСНОЙ ВЕСТНИК 4/2007
МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ
un(x; t) = Tn(t)-Xn(x) = [An-cos(annt / l ) +
+ Bn-sin (annt / l )]-sin(nnx / l).
Так как уравнение (1.1) линейно и однородно, то любая линейная комбинация его частных решений также будет его решением. Поэтому решение задачи (1.1) - (1.3) можем представить в виде
да
u (x; t) = У [A ■cos(annt / l ) +
однорЛ ’ ' L n v '
n=1
+ Bn-sin(a%nt / l)] ■sin(nnx / l), (1.4)
где постоянные An и Bn определяются начальными условиями (1.2)
l
An = 2ЛЛ ■ I ф (x)sin(nnx / l)dx, Bn =
0
l
= 2-(ann)-1 ■ | y(x)sin(nnx / l)dx.
0
1.2. Изучение малых вынужденных поперечных колебаний конечной струны с закрепленными концами
Вместо (1.1) надо решить с начальными
(1.2) и граничными (1.3) условиями неоднородное дифференциальное уравнение
d2u / dt2 = a2^d2u / dx2 + fix; t), a = const > 0. (1.5)
По свойству линейности уравнения (1.5) искомое его решение находится в виде
u (x; t) = u (x; t) + v (x; t),
где u ^(x; t) дается формулой (1.4), а v (x; t) является частным решением (1.5) с однородными начальными (1.2) и граничными (1.3) условиями.
Функции f(x; t) и v (x; t) представим параметрическими (с параметром t) разложениями в тригонометрические ряды
да
f(x; t) = У fn(tfisin(nnx / l), f(t) =
n=1
l
= 27_1 ■ | fx; t)sin(nnx / l)dx;
0
да
v(x; t) = У vn(t)sin(nnx/l). (1.6)
n=1
Для отыскания функций vn(t) получаются обыкновенные линейные неоднородные дифференциальные уравнения 2-го порядка с постоянными коэффициентами и нулевыми начальными условиями:
Vn'(t) + (ann / l)2^Vn(t) = f(t), Vn(0) = Vn'(0) = 0.
Их решения записываются в виде
l
Vn(t) = (ann / /)-1 ■ [(|f (^)cos(arcH^ / l)-d^)-sin(annt / l) -
0
t
- (| f„(^)^sin(a%nt1 / l)dd)cos(a%nt / l)].
0
1.3. Изучение малых вынужденных поперечных колебаний конечной струны с незакрепленными (подвижными) концами
Требуется найти решение неоднородного дифференциального уравнения (1.5) с начальными (1.2) и ненулевыми (при h2(t) + h22(t) Ф 0) граничными (1.3) условиями. Данная смешанная начально-краевая задача простой заменой искомой функции сводится к задаче с нулевыми граничными условиями п. 1.2. Так, будем искать решение в виде суммы двух функций
u(x; t) = u1(x; t) + w(x; t),
где w(x; t) = h1(t) + (h2(t) - h1(t))^(x / l), w | x=0 = h1(t),
WL = l = h2(t),
u1|t = 0 = (u - w)| = 0 =
= фМ - [h1(0) + h(0) - ^(0)Хг / l)] = Ф1СГ),
du1/ dt 11=0 = (du / dt - dw / dt) 11=0 =
= V(x) - [h1'(0) + h'(0) - h/(0)>(x / l)] = ^(x)
u1 |x=0 = (u - w)L = 0 = 0, u1 |x=l = (u - w)L=l = 0
Обозначим
f(x; t) = fix; t) + a2^d2w / dx2 - d2w / dt2 =
=fx; t) - [h/'(t) + (h/(t) - hfit))ix / l)].
В итоге для определения введенной функции u1(x; t) имеем задачу п.1.2
d2u1 / dt2 = a2^d2u1 / dx2+f(x; t),
u1 1 t=0 = Фl(x), du / dt\t = 0 = VM 4=0 = 0 4=l = °.
2.Начально-краевые задачи для параболических уравнений в частных производных 2-го порядка
2.1. Изучение изменения от времени температуры вдоль конечного теплоизолированного стержня при произвольном ее начальном распределении и постоянной нулевой температуре на его концах
Пусть u(x; t) - распределение температуры в точках 0 < x < l конечного теплоизолированного стержня длиной l в каждый фиксированный момент времени t > 0. Требуется найти тождественно не равную нулю непрерывную функцию u(x; t), удовлетворяющую дифференциальному уравнению в частных производных (одномерному однородному уравнению теплопроводности) и дополнительным условиям
du / dt = a2^d2u / cx2, a = const > 0. (2.1)
Начальное (при t = 0) распределение температуры
u 11=0 = Ф(x), ф(0) = ф(1) = 0. (2.2)
Однородные (нулевые) граничные условия u|x = 0 = h1(t) = 0, u|x = l = h2(t) = 0. (2.3)
ЛЕСНОЙ ВЕСТНИК 4/2007
181
МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ
Краевой задаче (2.1), (2.3) отвечает полная система из бесконечного счетного множества собственных функций
un(x; t) = T(t)-X(x) = An-exp(- (ann / [)2-t)-sin(%nx / I), где An - произвольные постоянные.
Решение исходной линейной однородной смешанной начально-краевой задачи (2.1) - (2.3) записывается в виде
да
ио о (x; t) = X An-exp(- (ann / I)2-t)-sin(nnx / I), (2.4)
n= /
где An = 2-/"1 • I ф (x)-sin(nnx / /)-dx
0
- коэффициенты Фурье разложения функции ф (x) из условия (2.2) в тригонометрический ряд Фурье по синусам на промежутке xe [0; I].
2.2. Изучение изменения от времени температуры вдоль конечного
нетеплоизолированного стержня при произвольном ее начальном распределении и постоянной нулевой температуре на его концах Вместо (2.1) надо решить с начальным
(2.2) и граничными (2.3) условиями неоднородное дифференциальное уравнение
ди / dt = a2-d2u / dx2+fix; t), a = const > 0. (2.5) По свойству линейности уравнения (2.5) искомое его решение, так же как и в случае (1.5), находится в виде суммы
и (x; t) = и (x; t) + v (x; t),
где и ^(x; t) дается формулой (2.4), а v (x; t) является частным решением (2.5) с однородными начальным (2.2) и граничными (2.3) условиями.
ФункцииДx; t) и v (x; t) представим параметрическими (с параметром t) разложениями в тригонометрические ряды (1.6). Для отыскания функций vn(t) получаются обыкновенные линейные неоднородные дифференциальные уравнения 1-го порядка с постоянными коэффициентами и нулевым начальным условием vn'(t) + (ann / I)2-vn(t) = f (t), v (0) = 0. Их решения записываются в виде
t
vn(t) = exp(- (ann / I)2-t)-( |exp((ann / ОЧЩ^)-^).
0
2.3. Изучение изменения от времени температуры вдоль конечного
нетеплоизолированного стержня при произвольном ее начальном распределении и заданных нестационарных температурах на его концах
Требуется найти решение неоднородного дифференциального уравнения (2.5) с начальным
(2.2) и ненулевыми (при h2(t) + h22(t) Ф 0) граничными (2.3) условиями. Данная смешанная начально-краевая задача заменой искомой функции u(x; t) = u1(x; t) + w(x; t) сводится, аналогично п. 1.3, к задаче с нулевыми граничными условиями п. 2.2 ди1 / dt = a2-d2u1 / dx2 + f(x; t), и11 (=0 = Фl(x) = Ф(x) - [h1(0) + ^(0) - h(0))-(x / /)], их\х = 0 = 0, и lx = / = 0, f1(x; t) = fx; t) + a2-d2w / dx2 - dw / dt = fx; t)
- [h/(t) + (h2'(t) - h/(t))-(x / /)].
3. Краевые задачи для эллиптических уравнений в частных производных
2-го порядка
3.1. Решение задачи Дирихле для уравнения
Лапласа в прямоугольной области
Требуется найти функцию u(x; y), удовлетворяющую дифференциальному уравнению Лапласа внутри прямоугольника
D = {(x; у) \ 0 < x < a; 0 <y < b}, a > 0, b > 0 и краевым условиям Дирихле на его границе
d2u / dx2 + d2u / dy2 = 0, (3.1)
u(0; y) = g1(y), u(a; y) = g2(y), (3.2)
u(x; 0) = h1(x), u(x; b) = h2(x). (3.3)
Сначала найдем решение u1(x; y) = u(x; y) этой задачи с однородными условиями по координате x, т.е. с нулевыми функциями g1(y) = g2(y) = 0.
Тогда приходим к бесконечному счетному множеству собственных функций
u1n(x; y) = X1n(x)Y1n(y) =
= sin(nnx / a)-[Cn-exp(- nny / a) + Dn-exp(nny / a)], где C Dn - произвольные постоянные.
Ввиду линейности и однородности уравнения Лапласа решение u1(x; y) можно представить в виде
да
u1(x; y) = X ujx; y),
n=1
где постоянные Cn, Dn определяются при удовлетворении ненулевых граничных условий по координате y
Cn + Dn = 2-a-l-I1, Cn-exp(- nnb / a) +
+ Dn-exp(nnb / a) = 2-a-1-I2,
a
11 = | h1(x)-sin(nnx / a)-dx,
0
a
12 = | h2(x)-sin(nnx / a)-dx.
0
Или: Cn = (a-sh(nnb / a))-1-(exp(nnb / a) I - I2), Dn = - (a-sh(nnb да a))-1-(exp(- nnb / a) I - I2), u1(x; y) = 2-a_1 • Xsin(nnx / a)-sh'l(nnb / a)x
n=1
x[sh(nn(b - y) / a) I + sh(nny / a)-I2].
182
ЛЕСНОЙ ВЕСТНИК 4/2007
МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ
Аналогично решению мДх; у) получим запись решения u2(x; у) = u(x; у) с нулевыми функциями hp) = h (у) = 0
да
u2(x; у) = 2b • Xsin(nny / b)-sh~l(%na / 6)*
n=1
*[sh(nn(a - x) / b)/ + sh(nnx / b)/2], где
b b
/1 = JЯ^УяНппу / b>dv, /2 = Jg2(y)•sin(лny / Ь)^.
0 0
Искомое решение задачи (3.1) - (3.3), очевидно, является суммой двух найденных специальных решений: u(x; у) = uL(x; у) = u1(x; у) + u2(x; у).
3.2. Решение задачи Дирихле для уравнения Пуассона в прямоугольной области
Аналогично п. 3.1 надо найти решение задачи Дирихле с граничными условиями (3.2), (3.3) для уравнения Пуассона
52u / дх2 + 52u / ду2 = fix; у). (3.4)
Как и в п. 2.2, представим u(x; у) = up(x; у) = uL(x; у) + v(x; у), где uL(x; у) - отыскиваемое по способу п. 3.1 решение задачи (3.1) - (3.3) для однородного уравнения (3.4), а v(x; у) - частное решение (3.4) с нулевыми граничными условиями (3.2), (3.3).
Функцию fx; у), допуская при
/(0; у) + f2(a; у) Ф 0 существование точек разрыва на границах x = {0; a}, разложим в параметрический (с параметром у) ряд Фурье:
fx; у) = fp)^sin(%nx / a),fp) =
a
= 2-a_1 • Jf x; y)•sin(кnx / a)dx.
0
Далее находим
да
v(x; у) = X vp)^sin(nnx / a),
Vn'O) - "(nn/af^vp) = fO),
vn0>) = a•(2%n)-l•[(F1(y) + О^ехр^у / a) -- (Fp) + C) • exp(- ппу / a)],
C = [exp(- nnb / a)F2(b) - exp(nnb / a) • F1(b)]/ /(exp(nnb / a) - exp(- nnb / a)),
F1O) = J f(-)• exp(- nn- / a) • d-, F2O) =
0 у
= J m• exp(nn- / a)d-.
0
3.3. Решение смешанной краевой задачи Дирихле-Неймана (вариант 1) для уравнения Пуассона в прямоугольной области
Требуется найти решение дифференциального уравнения Пуассона (3.4) при смешанных краевых условиях
u(0; у) = gp), u(a; у) = gO), duJ ду\ у = 0 =
= r1(x), u(x; b) = h2(x). (3.5)
Сделаем замену искомой функции u(x; у) = u1(x; у) + w(x; у), где w(x; у) = gp) + (gp) - ^(у)) • (x / a),
wL=0=^ wL=f = g2(y),
u1\x = 0 = (u - W)L = 0 = 0 u1Lx = a = (u ,- W)L = a = 0 дu1/дy\y = 0 = (du/ду - дм/ду)\у=0 =
= r1(x) - [g/(0) + (g2'(0) - g1'(0))• (x / a)] = ^.(x),
u1 \у = b = (u - ^)\у=b = h2(x) - [g1(b) +
+ (g2(b) - g1(b))• (x / a)] = h2*(x), Обозначим
fp; у) = fx; у) - (&2w / дx2 + &2w / ду2) =
=fx; у) - [g1b) + g'O) - g/CO) • (x / a)]. Функцию u1(x; у), удовлетворяющую указанным выше краевым условиям и уравнению Пуассона с правой частью f1(x; у), ищем в виде u1(x; у) = u1p(x; у) = u1L(x; у) + v(x; у), где u1L(x; у) - соответствующее решение уравнения Лапласа;
v(x; у) - частное решение приведенного уравнения Пуассона со всеми нулевыми краевыми условиями.
Последовательно находим
да
u1L(x; у) = Х^п(у) • sin(nnx/a),
n=1
цТОО - (nn/a)2• ц п(у) = 0, ц п(у) =
= Cn • exp(- n^/a) + Dn• exp^^/a),
да
д'иц!ду \ у = 0 = ^Цп'(0)• sin(nnx/a) =
n=1
да
= r1*(x), u1L(x; b) = X цп(Ь)• sin(nnx/a) = h2*(x),
a n=1
Ц„'(0) = 2 • a-1 • (J r1* (-) • sin(nn-/a)• d-) = / , цп(Ь) =
0
a
= 2 • a1 (J h2*(-)• sin(nn-/a)• d-) = /n,
0
{C ; D } = {/ - X • exp(nnb/a); / +
n n n n n
+ Xn• exp(- nnb/a)} / (2• ch(nnb/a )), Xn = In• (nn/a)-1.
Для отыскания частного решения v(x; у) аналогично п. 3.2 имеем
да
f1(x; у) = X /пОО•sHnnx / a),У1п(у) =
n=1
a
= 2• a"1 • J f1(x; у) • sin(nnx / a)• dx,
0
да
v(x; у) = X vn0>)• sin(nnx / a),
Vn"(У) - (nn/a)2^ vp) = У1n(У), vn(^) = a • (2nn)-1- [(F1(^) + C) • exp(лny / a) -- (Fp) + C) • exp(- ппу / a)],
C = [exp(- nnb / a) • F2(b) - exp(nnb / a) •F1(b)]/ (exp(nnb / a) - exp(- nnb / a)),
ЛЕСНОЙ ВЕСТНИК 4/2007
183