close

Вход

Забыли?

вход по аккаунту

?

Lab krv int12-1

код для вставкиСкачать
Лабораторная работа №2
ПРИБЛИЖЕННОЕ ВЫЧИСЛЕНИЕ КРИВОЛИНЕЙНОГО ИНТЕГРАЛА
1. Теоретическая часть
1.1. Криволинейный интеграл первого рода
Определение Пусть в каждой точке гладкой кривой L = AB в плоскости Оху задана непрерывная ограниченная функция двух переменных f (x, y). Непрерывная кривая x = x(t), y = y(t) называется гладкой на отрезке  ≤ t ≤ β, если функции x = x(t) и y = y(t) имеют на этом отрезке непрерывные производные x(t) и y(t), одновременно не равные нулю. Произвольно разобьем кривую L на n частей точками А = М0, М1, М2, ... , Мn = B. На каждой из полученных дуг Мi-1, Мi выберем произвольную точку Ri (ξi, ηi) (рис.1) и составим сумму Sn = Δli,(1)
где Δli = Мi-1 Мi - длина дуги Мi-1, Мi. Сумма (1) называется интегральной суммой первого рода для функции f (x, y) по кривой L. Пусть λ = Δli - наибольшая из длин дуг Мi-1, Мi. Если при λ → 0 (n→∞) существует предел интегральных сумм Sn , Рис.1.
не зависящий ни от способа разбиения кривой L на части, ни от выбора точек Ri(ξi,ηi) на них, то этот предел называется криволинейным интегралом первого рода (или криволинейным интегралом по длине дуги) от функции f (x) по кривой L и обозначается или .
Вычисление Вычисление криволинейного интеграла первого рода сводится к вычислению определенного интеграла. А именно: 1. Если кривая L задана явно непрерывно дифференцируемой функцией у = у(х), х[a, b], то = . (2)
2. Если кривая L задана параметрически, т.е. в виде x = x(t), y = y(t), где x = x(t), y = y(t) - непрерывно дифференцируемые функции на некотором отрезке [, β], то = . (3)
3. Если плоская кривая L задана полярным уравнением r = r(φ), где φ [, β], то = . (4)
1.2. Криволинейный интеграл второго рода
Определение Пусть L = AB - гладкая кривая, а Р (x, y) и Q (x, y) - некоторые функции, определенные в точках кривой L. Разобьем кривую L точками А = М0, М1, М2, ... , Мn = B в направлении от точки А к точке В на n произвольных дуг Мi-1, Мi с длинами Δli (i = 1, 2, ... , n). На каждой из полученных дуг Мi-1, Мi выберем произвольную точку Ri (ξi, ηi) (рис.2) и составим сумму Sn = Δxi + Q(ξi, ηi) Δyi] (2)
где Δхi = хi - хi-1 - проекция дуги Мi-1, Мi на
ось Ох, а Δуi = уi - уi-1 - на ось Оу. Сумма (2) называется интегральной суммой второго рода для вектор-функции F(x, y) = Р (x, y) i + Q (x, y) j по кривой L. Пусть λ = Δli - наибольшая из длин дуг Мi-1, Мi. Если при λ → 0 существует предел интегральных сумм (2), не зависящий ни от способа разбиения Рис.2.
кривой L на дуги, ни от выбора точек Ri(ξi,ηi) на них, то этот предел называется криволинейным интегралом второго рода (или криволинейным интегралом по координатам) от вектор-функции F(x, y) = Р (x, y) i + Q (x, y) j по кривой L и обозначается + Q(x, y) dy или + Q(x, y) dy.
Вычисление 1. Если кривая L задана явно непрерывно дифференцируемой функцией у = у(х), х[a, b], то + Q(x, y) dy = . (5)
2. Если кривая L задана параметрически в виде x = x(t), y = y(t), где x = x(t), y = y(t) - непрерывно дифференцируемые функции на некотором отрезке [, β], то + Q(x, y) dy = . (6)
1.3. Численные методы вычисления криволинейного интеграла
Для численного вычисления криволинейного интеграла можно воспользоваться косвенным или прямым методом. Суть косвенного метода состоит в том, что криволинейный интеграл аналитически сводится к определенному интегралу и затем численно вычисляется уже определенный интеграл (см. лабораторную работу №1). В данной лабораторной работе рассматривается прямой метод, а косвенный можно использовать для проверки правильности полученных как аналитических, так и численных результатов. При этом возможно использование Mathcad'а или, как сказано выше, программы численного вычисления определенного интеграла. Прямой метод вычисления криволинейного интеграла основан на его определении как предела интегральных сумм, не зависящий ни от способа разбиения кривой L на дуги Мi-1Мi (i = 1, 2, ... , n), ни от выбора точек Ri(ξi,ηi) на них. Это позволяет, во-первых, разбить кривую, во-вторых, выбрать точки Ri(ξi,ηi) удобным для вычислений образом. Рассмотрим этот метод подробнее. Причем вначале рассмотрим численный метод вычисления криволинейного интеграла второго рода, а затем небольшие изменения в нем, позволяющие вычислять криволинейный интеграл первого рода.
Численный метод вычисления криволинейного интеграла второго рода
Явное задание кривой интегрирования. Пусть кривая АВ (L) задана уравнением у = у (х), х[a, b], при этом абсциссы точек А и В соответственно равны a и b. Предположим, что необходимо вычислить (приближенно) величину интеграла второго рода + Q(x, y) dy
от известных функций Р(x, y) и Q(x, y) по кривой у = у(х) от точки А до точки В.
Разобьем отрезок [a, b] на n равных отрезков длины Δх = (рис.3). В этом случае каждая конечная точка такого час-
тичного отрезка легко вычисляется по формуле: xi = а + i * Δх (i = 1, 2, ... , n). Приращения функции у = у (х) на каждом из частичных отрезков: Δуi = у(xi) - у (xi -1). В точке xi = (i = 1, 2, ... , n) - Рис.3.
середине каждого частичного отрезка - вычислим значения функции у = у(х): уi = у(xi).
Замечание 1. Середина первого частичного отрезка: x1 = а +. Срединные точки последующих отрезков: xi = xi -1 + Δх (i = 2, 3, ... , n).
Замечание 2. Значения функции у = f (х) можно вычислять не только в середине частичных отрезков, но и в других удобных для вычисления точках, например, начальных (x1 = а) или конечных (x1 = Δх) точках этих отрезков. В любом случае xi = xi -1 + Δх (i = 2, 3, ... , n).
Дальнейшая схема вычисления криволинейного интеграла второго рода имеет вид:
+ Q(x, y) dy = + Q(x, y) dy,(7)
где
+ Q(x, y) dy ≈ Р(xi, уi) Δх + Q(xi, уi) Δуi . (8)
При параметрическом задании кривой интегрирования x = x(t), y = y(t), где t [, β], алгоритм приближенного вычисления криволинейного интеграла второго рода мало чем отличается от приведенного выше. Отличие лишь в том, что на равные частичные отрезки разбивается отрезок [, β], а приращения функций Δхi и Δуi на i-ом частичном отрезке вычисляется по формулам Δхi = x(ti) - x(ti-1), Δуi = у(ti) - у(ti-1),
где ti - точки разбиения отрезка [, β] (i = 1, 2, ... , n). Значения xi и уi в формуле (8) - это значения функций x = x(t), y = y(t) в срединной точке ti i-го частичного отрезка: xi = x(ti), уi = y(ti). Численный метод вычисления криволинейного интеграла первого рода
При явном и параметрическом задании кривой интегрирования алгоритм вычисления криволинейного интеграла первого рода практически остается таким же, как и в случае соответствующего интеграла второго рода, за исключением оператора суммирования интегральной суммы
= ,
где
≈ f (xi, уi) Δsi , Δsi = (см. рис.3).(9)
При явном задании кривой интегрирования, очевидно, что величина Δхi постоянна (в соответствии с алгоритмом): Δхi = Δх = (i = 1, 2, ... , n).
При задании кривой интегрирования в полярных координатах разбиению подлежит угол φ = β -  на угловые интервалы длины Δφ =. В этом случае каждая конечная точка такого частичного интервала легко вычисляется по формуле: φi =  + i * Δφ (i = 0, 1, 2, ... , n). Приращения функции r = r (φ) на каждом из частичных интервалов: Δri = r (φ i) - r (φ i -1). В точке φ i = (i = 1, 2, ... , n) - середине каждого углового частичного интервала - вычислим значения функции r = r (φ): r i = r (φ i). Тогда
= ,
где
≈ f (ri, φi) Δsi.
Рис.4.
Здесь Δsi = - аппроксимация длины дуги кривой L |Мi-1Мi| = Δli : r i * Δφ - длина дуги Ci-1Ci окружности радиуса r i, опирающейся на угол Δφ , приблизительно равная длине отрезка Мi-1Ni ; Δri - приращение функции r = r (φ) на i - ом частичном интервале (рис.4). Из почти прямоугольного треугольника Мi-1Мi Ni получаем выражение для Δsi ≈ |Мi-1Мi| = Δli .
2. Порядок выполнения лабораторной работы.
Работа рассчитана на два-три занятия и состоит из нескольких этапов.
На первом этапе преподаватель вкратце напоминает теоретические основы численных методов вычисления криволинейных интегралов и раздает задания. Примерный перечень вариантов заданий представлен в приложении 1. На втором этапе студенты знакомятся с методическими указаниями по выполнению лабораторной работы и начинают аналитически вычислять значения заданного криволинейного интеграла в рабочей тетради. Рекомендация. Если аналитические вычисления вызывают затруднение, можно перейти к третьему этапу, оставив аналитические вычисления на дом.
Примеры аналитических вычислений:
1. Вычислить криволинейный интеграл , где L - дуга параболы у2 = 2х, заключенная между точками (2, 2) и (8, 4) (рис.4).
Это - криволинейный интеграл первого рода, причем кривая интегрирования задана явно. Найдем дифференциал дуги dl для кривой у = . Имеем: Рис. 4.
у = , dl = dx = dx
Следовательно, данный интеграл равен (2):
= dx = dx =dx = =∙= (17- 5).
2. Вычислить криволинейный интеграл , где L - окружность х2 + у2 = ах (a > 0).
Для представления окружности х2 + у2 = ах в каноническом виде выделим полный квадрат по х:
х2 - ах + + у2 = , т.е. (х - )2 + у2 = . Это - окружность радиуса с центром в точке (, 0)
График этой окружности представлен на рис.5. Рис.5.
Введем полярные координаты x = r cos φ, y = r sin φ. Подынтегральная функция в полярных координатах примет вид = = r Тогда, т.к. х2 + у2 = ах, имеем: r2 cos2 φ + r2 sin2 φ = a r cos φ или r (cos2 φ + sin2 φ) = a cos φ. Окончательно, уравнение окружности L в полярных координатах имеет вид: r = a cos φ. Соответственно, дифференциал дуги (4):
dl = = dφ = a dφ.
При этом (см. рис. 5): φ. Подынтегральная функция в полярных координатах примет вид = = r Таким образом, = = а dφ = 2а2.
3. Вычислить криволинейный интеграл первого рода от функции трех переменных , где L - дуга кривой, заданной параметрически x = t cos t, y = t sin t, z = t, 0 ≤ t ≤ π.
Перейдем в подынтегральном выражении к переменной t. Имеем для подынтегральной функции 5z - 2= 5t - 2= 3t. Теперь выразим через t дифференциал dl (3): dl = dt = dt = =dt =
= dt = Таким образом, = dt = =d(2 + t2) = = - 2 .
4. Вычислить криволинейный интеграл от точки А(0; 0) до точки В(1; 1) по кривым а) у=х, б) у=х2, в) у= (рис.6). а) Из уравнения линии у = х получаем dy = dx, поэтому = = .
б) Из уравнения линии у = х2 получаем dy =2xdx, поэтому = =.
в) Из уравнения линии х = получаем dy = dx, поэтому Рис.6.
= =.
Таким образом, интеграл второго рода в общем случае зависит от вида кривой, соединяющей конечные точки. 5. Найти площадь области, ограниченной эллипсом x = a cos t, y = b sin t. Площадь S области D, ограниченной кривой L, находят по формуле S =. Поэтому, в нашем случае
S = = = === πab.
Третий этап работы состоит в написании и отладке программы на знакомом (и доступном для рабочей ПЭВМ) языке программирования. Примеры программ на PASCALе вычисления криволинейных интегралов, рассмотренных в примерах, представлены ниже. Эти программы можно использовать в качестве тестовых при выполнении собственных заданий, т.к. отличия в программах будут незначительными. Замечания. Для получения "красивых" таблиц
а) в строковых константах (в кавычках) при наборе их латиницей количество символов должно быть таким же, как и в примере, где они набраны кириллицей;
б) количество пробелов в строковых константах также должно быть таким же, как и в примере. Для этого последовательность количества пределов в строковой константе представлена в комментарии.
Пример 1. Вычислить криволинейный интеграл , где L - дуга параболы у2 = 2х, заключенная между точками (2, 2) и (8, 4) .
program ivanov_kri1_1; {по параболе АВ: у*у=2х, А(2,2), В(8,4)}
var
x0,xn,dx,dy,s,xi,xc,yc,dl,tr:real;
n,i :integer;
function piv(x,y,dl:real):real; {подынтегральное выражение x/y dl}
begin
piv:=x/y*dl
end;
function put(x:real):real; {кривая интегрирования sqrt(2x)}
begin
put:= sqrt(2*x)
end;
begin
writeln ('введите пределы интегрирования по х: x0 и xn');
read(x0,xn); {ввод x0,xn }
tr:=(17*sqrt(17) - 5*sqrt(5))/6; (аналитическое решение)}
writeln ('введите число разбиений n отрезка [a,b]');
read(n); {ввод n }
writeln (":20,'Р Е З У Л Ь Т А Т Ы');{впереди 20 пробелов}
writeln; writeln (' n точн.знач. числ.реш. абс.ош. отн.ош');{4,7,2,3,5 пробелов}
writeln; dx:=(xn-x0)/n;
s:=0; {интегральная сумма}
xi:=x0; {начальная точка частичных отрезков}
xс:=x0-dx/2; {серединная точка частичных отрезков}
for i:=1 to n do
begin
xс:=xc+dx;
yc:=put(xc); {значение подынтегр. функции в серединной точке}
dy:= put(xi+dx) - put(xi); {приращение пути на частичном отрезке}
dl:=sqrt(dx*dx + dy*dy); {≈ длине дуги для частичного отрезка}
s:= s+ piv(xc,yc,dl)
xi:=xi+dx;
end;
writeln(n:6,tr:14:6,s:12:6,abs(s-tr):11:6,abs((s-tr)/tr):12:6);
readln;
readln;
end.
Окно вывода отлаженной программы должно иметь вид:
введите пределы интегрирования по х: x0 и xn
2
8
введите число разбиений n
100
Р Е З У Л Ь Т А Т Ы
n точн.знач. числ.реш. абс.ош. отн.ош.
100 9.818743 9.818766 0.000023 0.000002
Отлаженную программу необходимо "запомнить" под своим оригинальным именем на своем компьютере и, что очень желательно (во избежание затирания программы другим пользователем), на дискете или на "флэшке".
Пример 2. Вычислить криволинейный интеграл , где L - окружность r = a cosφ (a = 2) .
program ivanov_kri1_2; {полярный}
var
fi0,fin,dfi,dr,s,fii,fic,rc,dl,tr:real;
n,i :integer;
const a=2;
function piv(r,fi,dl:real):real; {подынтегральное выражение r dl}
begin
piv:=r*dl;
end;
function put(fi:real):real; {кривая интегрирования acosφ}
begin
put:= a*cos(fi);
end;
begin
writeln ('введите пределы интегрирования по фи: fi0 и fin');
read(fi0,fin); {ввод fi0,fin }
{т.к. точное значение π/2 в паскале на "черном" экране ввести нельзя, то}
{'перевводим' пределы в программе, а требуемые значения вводим}
{ произвольно, например, 0, 0}
fi0:= -pi/2; fin:= pi/2; tr:=2*a*a; (аналитическое решение)}
writeln ('введите число разбиений n отрезка [fi0, fin]');
read(n); {ввод n }
writeln (":20,'Р Е З У Л Ь Т А Т Ы');{впереди 20 пробелов}
writeln; writeln (' n точн.знач. числ.реш. абс.ош. отн.ош');{4,7,2,3,5 пробелов}
writeln; dfi:=(fin-fi0)/n;
s:=0; {интегральная сумма}
fii:=fi0; {начальная точка частичных угловых интервалов}
fiс:=fi0-dfi/2; {серединная точка частичных угловых интервалов }
for i:=1 to n do
begin
fiс:=fic+dfi;
rc:=put(fic); {значение подынтегр. функции в серединной точке}
dr:= put(fii+dfi) - put(fii); {приращение пути на угловом интервале }
dl:=sqrt(rc*dfi*rc*dfi+dr*dr); {≈длине дуги для частичного углового интервала }
s:= s+ piv(rc,fic,dl);
fii:=fii+dfi;
end;
writeln(n:6,tr:14:6,s:12:6,abs(s-tr):11:6,abs((s-tr)/tr):12:6);
readln;
readln;
end.
Окно вывода отлаженной программы должно иметь вид:
введите пределы интегрирования по фи: fi0 и fin
1
1
введите число разбиений n
100
Р Е З У Л Ь Т А Т Ы
n точн.знач. числ.реш. абс.ош. отн.ош.
100 8.000000 8.000219 0.000219 0.000027
Пример 3. Вычислить криволинейный интеграл первого рода от функции трех переменных , где L - дуга кривой, заданной параметрически x = t cos t, y = t sin t, z = t, 0 ≤ t ≤ π.
program ivanov_kri1_3; {параметрическое задание кривой интегрирования}
var
t0,tn,dt,dl,dx,dy,dz,s,ti,tc,xi,yi,zi,xi1,yi1,zi1,xc,yc,zc,u,tr:real;
n,i :integer;
function piv(x,y,z,dl:real):real; {подынтегральное выражение}
begin
piv:=(5*z-2*sqrt(x*x+y*y))*dl;
end;
procedure put(t:real; var x,y,z:real); {кривая интегрирования}
begin
x:= t*cos(t);
y:= t*sin(t);
x:= t;
end;
begin
writeln ('введите пределы интегрирования по t: t0 и tn');
read(t0,tn); {ввод t0,tn }
{т.к. точное значение π в паскале на "черном" экране ввести нельзя, то}
{'перевводим' пределы в программе, а требуемые значения вводим}
{ произвольно, например, 0, 0}
t0:= 0; tn:= pi; tr:=sqrt((2+pi*pi)*(2+pi*pi)*(2+pi*pi))-2*sqrt(2); (аналитическое решение)}
writeln ('введите число разбиений n отрезка [t0, tn]');
read(n); {ввод n }
writeln (":13,'Р Е З У Л Ь Т А Т Ы'); {впереди 13 пробелов}
writeln; writeln (' n числ.реш.'); {5,7 пробелов}
writeln; dt:=(tn-t0)/n;
s:=0; {интегральная сумма}
ti:=t0; {начальная точка частичных отрезков}
tс:=t0-dt/2; {серединная точка частичных отрезков }
for i:=1 to n do
begin
tс:=tc+dt;
put(tc,xc,yc,zc); {значения подынтегр. функции в серединной точке отрезка}
put(ti,xi,yi,zi); {значения подынтегр. функции в начальной точке отрезка}
put(ti+dt,xi1,yi1,zi1); {значения подынтегр. функции в конечной точке отрезка}
dx:= xi1-xi;
dy:= yi1-yi;
dz:= zi1-zi;
dl:=sqrt(dx*dx+dy*dy+dz*dz); {≈длине дуги}
s:= s+ piv(xc,yc,xc,dl);
ti:=ti+dt;
end;
writeln(n:7, s:14:6);
writeln('аналитическое решение tr=', tr:10:6);
writeln;
writeln('ошибка метода');
writeln('абсолютная', abs(s-tr):18:6);
writeln('относительная', abs((s-tr)/tr):15:6);
readln;
readln;
end.
Окно вывода отлаженной программы должно иметь вид:
введите пределы интегрирования по t: t0 и tn
1
1
введите число разбиений n отрезка [t0, tn]
100
Р Е З У Л Ь Т А Т Ы
n числ.реш.
100 38.062661
аналитическое решение tr= 38.065081
ошибка метода
абсолютная 0.002420
относительная 0.000064
Пример 4. Вычислить криволинейный интеграл от точки А(0; 0) до точки В(1; 1) по кривым а) у=х, б) у=х2, в) у= (см. рис.6). program ivanov_kri2_1; {по трем кривым АВС (рис.6)}
var
a,b,dx,dy1,dy2,dy3,xi,xc,yc1,yc2,yc3,s1,s2,s3,tr1,tr2,tr3:real;
n,i :integer;
function piv(x,y,dx,dy:real):real; {подынтегральное выражение}
begin
piv:= y*dx+2*dy;
end;
function put1(x:real):real; {кривая интегрирования y=x }
begin
put1:= x; end;
function put2(x:real):real; {кривая интегрирования y=x2}
begin
put2:= x*x; end;
function put3(y:real):real; {кривая интегрирования y=x1/3}
begin
put3:= exp(ln(x)/3); end;
begin
{аналитическое решение}
tr1:=5/2; { по кривой y=x}
tr2:=7/3; { по кривой y=x2}
tr3:=11/4; { по кривой y= x1/3}
writeln ('введите число разбиений n отрезка [0,1]');
read(n); {ввод n }
writeln ('n=', n:5); writeln (":20,'Р Е З У Л Ь Т А Т Ы');{впереди 20 пробелов}
writeln; writeln (":13,'кривая y=x y=x*x y=e(ln(x)/3');{5,10,6 пробелов}
writeln; a:=0; {абсцисса точки А}
b:=1; {абсцисса точки B} dx:=(b-a)/n;
s1:=0; {интегральная сумма для кривой y=x }
s2:=0; {интегральная сумма для кривой y=x*x }
s3:=0; {интегральная сумма для кривой y=e(ln(x)/3}
xi:=a; {начальная точка частичных отрезков}
xс:=xi-dx/2; {серединная точка частичных отрезков}
for i:=1 to n do
begin
xс:=xc+dx;
yc1:=put1(xc); {знач. подынтегр. ф-ции в серединной точке для y=x }
yc2:=put2(xc); {знач. подынтегр. ф-ции в серединной точке для y=x*x }
yc3:=put3(xc); {зн. подынтегр. ф-ции в серединной точке для e(ln(x)/3 }
dy1:= put1(xi+dx) - put1(xi); {приращение пути для y=x}
dy2:= put2(xi+dx) - put2(xi); {приращение пути для y= x*x}
dy3:= put3(xi+dx) - put3(xi); {приращение пути для y= e(ln(x)/3}
s1:= s1+ piv(xc,yc1,dx,dy1);
s2:= s2+ piv(xc,yc2,dx,dy2);
s3:= s3+ piv(xc,yc3,dx,dy3);
xi:=xi+dx;
end;
writeln('численные', s1:20:6, s2:14:6, s3:14:6);
writeln; writeln('аналитические', tr1:16:6, tr2:14:6, tr3:14:6);
readln;
readln;
end.
Окно вывода отлаженной программы должно иметь вид:
введите число разбиений n
100
n= 100
Р Е З У Л Ь Т А Т Ы
кривая y=x y=x*x y=e(ln(x)/3)
численные 2.500000 2.333325 2.750122
аналитические 2.500000 2.333333 2.750000
Пример 5. Найти площадь области, ограниченной эллипсом x = a cos t, y = b sin t. Площадь S области D, ограниченной кривой L, находят по формуле S =. program petrov_kri2_2; {площадь эллипса}
var
t0,tn,dt,dx,dy,ti,tc,xi,yi,xi1,yi1,xc,yc,s,tr:real;
n,i :integer;
const a=2;
const b=3;
function piv(x,y,dx,dy:real):real; {подынтегральное выражение}
begin
piv:= x*dy-y*dx;
end;
procedure put (t:real; var x,y:real); {кривая интегрирования }
begin
x:=a*cos(t);
y:=b*sin(t); end;
begin
tr:=pi*a*b; {аналитическое решение}
{пределы интегрирования t0, tn}
t0:=0; tn:=2*pi; write ('введите число разбиений n =');
read(n); {ввод n }
writeln; writeln (":12,'Р Е З У Л Ь Т А Т Ы');{впереди 12 пробелов}
writeln; writeln (' числ.реш. аналит.реш.');{6,7 пробелов}
dt:=(tn-t0)/n;
s:=0; {интегральная сумма}
ti:=t0; {начальная точка частичных угловых отрезков}
tс:=t0-dt/2; {серединная точка частичных угловых отрезков}
for i:=1 to n do
begin
tс:=tc+dt;
put (tc,xc,yc); {знач. x и y в серед. точке част. угловых отрезков }
put (ti,xi,yi); { знач. x и y в начальной точке част. угловых отрезков }
put (ti+dt,xi1,yi1); { знач. x и y в конечной точке част. угловых отрезков }
dx:= xi1-xi; {приращение x на част. угловом отрезке}
dy:= yi1-yi; {приращение y на част. угловом отрезке}
s:= s+ piv(xc,yc,dx,dy); {интегральная сумма}
ti:=ti+dt;
end;
s:=s/2;
writeln(s:15:6, tr:16:6);
writeln; writeln('ошибка метода');
writeln('абсолютная', abs(s-tr):18:6);
writeln('относительная', abs((s-tr)/tr):15:6);
readln;
readln;
end.
Окно вывода отлаженной программы должно иметь вид:
введите число разбиений n=100
Р Е З У Л Ь Т А Т Ы
числ.реш. аналит.реш.
18.846455 18.849556
ошибка метода
абсолютная 0.003100
относительная 0.000164
Четвертый этап работы заключается в записи в отлаженную программу (в раздел описания функций) описания "своего" подынтегрального выражения (в предложенных выше программах это piv), "своей" кривой интегрирования (put) и "своего" аналитического решения (tr). После отладки программы ее необходимо "пропустить" со значениями n, равными 5, 10, 25, 100,1000.
При записи "своих" выражений следует обратить внимание на операцию деления. Например, правильная запись дроби может иметь вид sqr(a)*a*b*c/(r*t*sqr(s)), или sqr(a)*a*b*c/ r / t / sqr(s), или a*a*a*b*c/(r*t*s*s), или какой-либо другой, но обязательно знаменатель должен быть в скобках или его множители должны быть отделены друг от друга операцией / (деление). Числитель брать в скобки нужно в случае, если это многочлен. Другая особенность данного этапа состоит в ограниченности библиотеки встроенных функций PASCALя. Для записи встречающихся в заданиях функций используются функции sin(x), cos(x), sqr t(x) (), sqr(x) (x2), atan(x) (arctg x), ln(x), abs(x) (|x|), а также постоянная pi (π).
Для записи других функций следует пользоваться тождественными формулами :
tg x =, arcsin x = arctg , xa = ealnx,
arcctg x = - arctg x, arccos x = arcctg. Еще два замечания: 1) Так как встроенная функция sqr(x) выполняется значительно дольше, чем операция * (умножение), то при возведении в целую степень при небольших значениях показателя степени желательно использовать операцию умножения.
2) Если в выражении функции некоторая степень встречается несколько раз, ее желательно вычислить один раз и в дальнейшем использовать вычисленное значение. Например, функцию y = x5 + sin(x5 + x4 - x3) можно описать так:
function primer (x:real):real;
y:real;
begin
y:= x*x*x*x*x;
primer:= y+sin(y+y/x-y/x/x)
end;
Пятый этап представляет собой защиту работы. При этом необходимо:
1. Знать определения криволинейных интегралов первого и второго рода, методы аналитического и численного вычисления данных интегралов (в пределах данной методички).
2. Уметь объяснять полученные результаты, как-то, как и почему влияет на оценку интеграла число разбиений отрезка интегрирования.
3. Уметь объяснять функциональное назначение отдельных операторов и мест в программе.
4. Показать результаты аналитических расчетов в рабочей тетради.
5. При небольшом значении n вручную получить приближенное значение какого-нибудь простого криволинейного интеграла, предложенного преподавателем. Для этого может быть использован список таких заданий, предложенный в приложении 1. Желательно, чтобы интеграл в данном задании отличался по роду и виду интегральной функции от основного интеграла лабораторной работы. При выполнении этого задания можно пользоваться калькулятором или Mathcad'ом.
Примеры выполнения таких заданий представлен ниже.
Примеры выполнения задания ручного счета.
1. Вычислить вручную приближенное значение криволинейного интеграла , где АВ - отрезок прямой у = х от точки А(0, 0) до точки В(4, 3) при n = 4. Так как, согласно определению, криволинейный интеграл первого рода (по длине дуги кривой) есть предел интегральных сумм вида Sn =Δli, не зависящий ни от способа разбиения кривой АВ на частичные дуги, ни от выбора точек Ri (ξi, ηi), то для приближенного вычисления заданного в условии задачи интеграла построим интегральную сумму следующим образом: 1) разобьем кривую АВ на четыре (n = 4) частичных дуги так, чтобы их проекции на ось Ох ( [х0; х1], [х1; х2], [х2; х3], [х3; х4] ) равнялись между собой. В нашем случае х0 = 0, х4 = 4;
2) абсциссы точек Ri(ξi,ηi) (i = 1, 2, 3, 4), а именно ξi будем выбирать (согласно выбранному алгоритму) в серединах отрезков [хi-1; хi], а их ординаты ηi - это ординаты точек кривой АВ, соответствующие абсциссам ξi ;
3) длину частичной дуги Δli заменим длиной хорды, соединяющей конечные точки данной дуги: Δli ≈ Δsi = .
Разобьем отрезок [0; 4] (по х) на 4 равных частичных отрезка: [0; 1], [1; 2], [2; 3], [3; 4]. При этом: х0 = 0, х1 = 1, х2 = 2, х3 = 3, х4 = 4. Длина каждого из этих отрезков Δх = Δхi = хi - хi-1 = 1 (i = 1, 2, 3, 4). Подсчитаем значения у в граничных точках данных отрезков:
уi = хi (i = 0, 1, 2, 3, 4): у0 = 0, у1 = , у2 = , у3 = , у4 = . Приращение у на каждом i -м частичном отрезке (i = 1, 2, 3, 4) Δуi = уi - уi-1 :
Δу1 = - 0 = ; Δу2 = - = ; Δу3 = - = ; Δу4 = - = . Срединные точки частичных интервалов ξi = xi= (i = 1, 2, 3, 4) : х1 = = , х2 = = , х3 = = , х4 = = . Значения у в этих срединных точках ηi = уi = xi (i = 1, 2, 3, 4) : у1 = ∙ = , у2 = ∙ = , у3 = ∙ = , у4 = ∙ = . Полученные результаты сведем в таблицу ixi yi
=xi Δхi =хi-хi-1 Δyi =yi - yi-1 xi
= уi
=xi Δsi = f(xi, уi) = xi - уif(xi,уi)Δsi
000111221331441
Таким образом, искомое приближенное значение криволинейного интеграла равно I ≈ S4 = f (х1, y1) ∙Δs1 + f (х2, y2) ∙Δs2 + f (х3, y3) ∙Δs3 + f (х4, y4) ∙Δs4 = = ∙ + ∙ + ∙ + ∙ = = .
Точное значение интеграла
= = = = .
2. Вычислить вручную приближенное значение криволинейного интеграла , где L - дуга кривой x = t cos t, y = t sin t, z = t, 0 ≤ t ≤ 2π, при n = 4.
Разобьем кривую L на четыре (n = 4) частичных дуги Δli (i = 1, 2, 3, 4) так, чтобы длины частичных интервалов [t0; t1], [t1; t2], [t2; t3], [t3; t4] ) равнялись между собой.
Построим таблицу, содержащей следующие графы:
1. i - номер частичного интервала, на которые разбивается отрезок [0, 2π] (i = 1, 2, 3, 4);
2. ti - граничные точки частичных интервалов (i = 0, 1, 2, 3, 4). При этом: t0 = 0, t4 = 2π (отрезок [0, 2π] разбивается на 4 отрезка одинаковой длины); 3. xi = ti cos ti - значения функции x = t cos t в граничных точках частичных интервалов (i = 0, 1, 2, 3, 4);
4. уi = ti sin ti - значения функции y = t sin t в граничных точках частичных интервалов (i = 0, 1, 2, 3, 4);
5. zi = ti - значения функции z = t в граничных точках частичных интервалов
(i = 0, 1, 2, 3, 4);
6. Δti = ti - ti - 1 - приращение параметра t на i - ом частичном интервале
(i = 1, 2, 3, 4). В соответствии с выбранным алгоритмом Δti = = ;
7. Δxi = xi - xi - 1 - приращение функции х на i - ом частичном интервале; 8. Δуi = уi - уi - 1 - приращение функции у на i - ом частичном интервале;
9. Δzi = zi - zi - 1 - приращение функции z на i - ом частичном интервале;
10. Δsi = - длина хорды, соединяющей конечные точки частичной дуги Δli ;
11. ti= (i = 1, 2, 3, 4) - срединные точки частичных интервалов ;
12. xi= ti cos ti - значения функции x = t cos t в срединных точках частичных интервалов (i = 1, 2, 3, 4);
13. yi= ti sin ti - значения функции y = t sin t в срединных точках частичных интервалов (i = 1, 2, 3, 4);
14. zi= ti - значения функции z = t в срединных точках частичных интервалов (i = 1, 2, 3, 4);
15. fi= f(xi, yi, zi) = 2zi - - значения подынтегральной функции в точках (xi, уi, zi).
i ti xi yi zi Δti Δxi Δyi Δzi Δsiti xi yizi fi00000100π2π-π 0π-π-π-30-π-π--42π2π02π2ππ-
Таким образом, искомое приближенное значение криволинейного интеграла I ≈ S4 = f(x1, y1, z1) ∙Δs1 + f(x2, y2, z2) ∙Δs2 + f(x3, y3, z3) ∙Δs3 + f(x4, y4, z4) ∙Δs4 = = ∙ + ∙ + ∙ + ∙ = (+ 3+ 5+ 7) ≈ 77,926.
Точное значение интеграла || dl =dt = dt = dt || =
==== = = ( - 1 ) ≈ 88,103.
3. Вычислить вручную приближенное значение криволинейного интеграла , где L - лепесток лемнискаты ρ = 3, расположенный в первом координатном углу, при n = 4.
Кривая задана уравнением в полярных координатах, причем угол φ изменяется от 0 до . При переходе к полярным координатам x = ρ cos φ, y = ρ sin φ. Следовательно, подынтегральная функция будет иметь вид f (ρ, φ) = ρ cos φ + ρ sin φ Разобьем кривую L на четыре (n = 4) частичных дуги Δli (i = 1, 2, 3, 4) так, чтобы длины частичных угловых интервалов [φ0; φ1], [φ1; φ2], [φ2; φ3], [φ3; φ4] ) равнялись между собой.
Построим таблицу, содержащей следующие графы:
1. i - номер частичного углового интервала, на которые разбивается отрезок [0, ] (i = 1, 2, 3, 4);
2. φi - граничные точки частичных угловых интервалов (i = 0, 1, 2, 3, 4). При этом: φ0 = 0, φ4 = (отрезок [0, ] разбивается на 4 отрезка одинаковой угловой длины); 3. ρi = 3 - значения функции ρ = 3 в граничных точках частичных интервалов (i = 0, 1, 2, 3, 4);
4. Δφi = φi - φi - 1 - приращение угла φ на i - ом частичном угловом интервале
(i = 1, 2, 3, 4). В соответствии с выбранным алгоритмом Δφi = = ;
5. Δρi = ρi - ρi - 1 = 3(-)- приращение функции ρ на i - ом частичном интервале (i = 1, 2, 3, 4); 6. φi= (i = 1, 2, 3, 4) - срединные точки частичных угловых интервалов ;
7. ρi= 3 - значения функции ρ = 3 в срединных точках частичных угловых интервалов (i = 1, 2, 3, 4);
8. Δsi = ~ длина хорды, соединяющей конечные точки частичной дуги Δli (i = 1, 2, 3, 4);
9. fi= f(ρi, φi) = ρi cos φi + ρi sin φi - значения подынтегральной функции в точках (ρi, φi); 10. fi∙ Δsi i φi ρi Δφi Δρi φi ρiΔsi fifi∙ Δsi00012,5232,5231,8562,6262,1825,7323 0,4772,8841,22944,91632,523-0,4772,8841,22944.91640-2,5231,8562,6262,1825,73
Таким образом, искомое приближенное значение криволинейного интеграла равно I ≈ S4 = f(ρ1, φ1) ∙Δs1 + f(ρ2, φ2) ∙Δs2 + f(ρ3, φ3) ∙Δs3 + f(ρ4, φ4) ∙Δs4 = = 5,73 + 4,916 + 4,916 + 5,73 = 21,292.
Точное значение интеграла: = = = || ρ = , = = = || =
= = 9 = 9(sinφ - cosφ) = 18.
4. Вычислить вручную приближенное значение криволинейного интеграла , где L - отрезок параболы у = х2 от точки А(0, 0) до точки В(1, 1) при n = 4. Замечание. При вычислении криволинейного интеграла второго рода составляются таблицы, аналогичные таблицам, составляемым при вычислении криволинейного интеграла первого рода, за исключением того, что не вычисляются значения Δsi , а вместо значений f(xi, уi) вычисляются значения P(xi, уi) и Q(xi, уi). После составления таблицы приближенное вычисление интеграла производится по формуле S4 =Δxi + Q(хi, yi)).
ixi yi
=(xi)2 Δхi =хi-хi-1 Δyi =yi - yi-1 xi
= уi
=(xi)2P(xi, уi) = xi ∙ уi Q(xi, уi) = 1P(xi,уi)Δxi +
Q(xi,уi)Δyi00011+21+31+4111+
Таким образом, искомое приближенное значение криволинейного интеграла равно I ≈ S4 = P(х1, y1) ∙Δx1 + Q(х1, y1) ∙Δy1 + P(х2, y2) ∙Δx2 + Q(х2, y2) ∙Δy2 + + P(х3, y3) ∙Δx3 + Q(х3, y3) ∙Δy3 + P(х4, y4) ∙Δx4 + Q(х4, y4) ∙Δy4 = = +++ + ++ + = + = 1,242.
Точное значение интеграла
= = = + 1 = = 1,25.
5. Вычислить вручную приближенное значение работы силы = yx + (y + x) при перемещении материальной точки по прямой у = х из точки А(0, 0) в точку В(1, 1), при n = 4.
С точки зрения физики криволинейный интеграл второго рода вдоль некоторой кривой равняется работе переменной силы при перемещении материальной точки вдоль этой кривой. Т.о., в нашем случае для вычисления искомого значения работы необходимо вычислить по прямой у = х от точки А(0, 0) до точки В(1, 1).
ixi yi
= xi Δхi =хi-хi-1 Δyi =yi - yi-1 xi
= уi
= xiP(xi, уi) = yi ∙ xi Q(xi, уi) = (yi + xi)P(xi,уi)Δxi +
Q(xi,уi)Δyi0001+2+3+411+ Таким образом, искомое приближенное значение криволинейного интеграла равно I ≈ S4 = P(х1, y1) ∙Δx1 + Q(х1, y1) ∙Δy1 + P(х2, y2) ∙Δx2 + Q(х2, y2) ∙Δy2 + + P(х3, y3) ∙Δx3 + Q(х3, y3) ∙Δy3 + P(х4, y4) ∙Δx4 + Q(х4, y4) ∙Δy4 = = +++ + ++ + = + = 1,328.
Точное значение интеграла
= = = + 1 = = 1,333.
6. Вычислить вручную приближенное значение работы силы =(x-y)+x при перемещении материальной точки по четверти окружности x = 3cost, y = 3sint из точки А(-3, 0) в точку В(0, 3), при n = 4.
В нашем случае для вычисления искомого значения работы необходимо вычислить по окружности x = 3cost, y = 3sint от точки А(-3, 0) до точки В(0, 3).
Разобьем кривую АВ на четыре (n = 4) частичных дуги Δli (i = 1, 2, 3, 4) так, чтобы длины частичных интервалов [t0; t1], [t1; t2], [t2; t3], [t3; t4] ) равнялись между собой.
Построим таблицу, аналогичную (за некоторым исключением, см. замечание к примеру 4 ) таблице примера 2:
1. i - номер частичного интервала, на которые разбивается отрезок [π, π/2] (i = 1, 2, 3, 4);
2. ti - граничные точки частичных интервалов (i = 0, 1, 2, 3, 4). При этом: t0 = π, t4 = π/2; 3. xi = 3cos ti - значения функции x = 3cos t в граничных точках частичных интервалов (i = 0, 1, 2, 3, 4);
4. уi = 3sin ti - значения функции y = 3sin t в граничных точках частичных интервалов (i = 0, 1, 2, 3, 4);
5. Δti = ti - ti - 1 - приращение параметра t на i - ом частичном интервале
(i = 1, 2, 3, 4). В соответствии с выбранным алгоритмом Δti = = -;
6. Δxi = xi - xi - 1 - приращение функции х на i - ом частичном интервале; 7. Δуi = уi - уi - 1 - приращение функции у на i - ом частичном интервале;
8. ti= (i = 1, 2, 3, 4) - срединные точки частичных интервалов ;
9. xi= 3 cos ti - значения функции x = 3cos t в срединных точках частичных интервалов (i = 1, 2, 3, 4);
10. yi= 3 sin ti - значения функции y = 3sin t в срединных точках частичных интервалов (i = 1, 2, 3, 4);
10. Pi= P(xi, уi) = xi - уi - значения функции P(x, y) в точках (xi, уi);
11. Qi= Q(xi, уi) = xi- значения функции Q(x, y) в точках (xi, уi)
i ti xi yi Δti Δxi Δyi ti xi yi Pi Qi0π-301-2,7721,148-0,2281,148π-2,9420,585-3,527-2,9422-2,121 2,121-0,6510,973π-2,494 1,667-4,161 -2,494 3-1,1482,772-0,9730,651π-1,6672,494-4,161-1,667403-1,1480,228π-0,5852,942-3,527-0,585
Таким образом, искомое приближенное значение криволинейного интеграла равно I ≈ S4 = P(х1, y1) ∙Δx1 + Q(х1, y1) ∙Δy1 + P(х2, y2) ∙Δx2 + Q(х2, y2) ∙Δy2 + + P(х3, y3) ∙Δx3 + Q(х3, y3) ∙Δy3 + P(х4, y4) ∙Δx4 + Q(х4, y4) ∙Δy4 = = -3,527 ∙ 0,228 - 2,942 ∙ 1,148 - 4,161 ∙ 0,651 - 2,494 ∙ 0,973 - 4,161 ∙ 0,973 - 1,667 ∙ 0,651 - - 3,527 ∙ 1,148 - 0,585 ∙ 0,228 = -18,633.
- Точное значение интеграла
== = 9= -+ 9 = = = - - + - 9π = - - = -18,637.
Примечание. Студенты, не успевшие по тем или иным причинам сдать работу в течение семестра (в компьютерном классе) сдают отчет на бумажных носителях. Отчет должен содержать 1. Титульный лист.
2. Задание на лабораторную работу с аналитическими вычислениями.
3. Листинг (распечатку) программы на языке программирования.
4. Листинг результатов работы программы, "пропущенной" со значениями n, равными 5, 10, 25, 100,1000.
5. Ручной расчет приближенного значения своего (или заданного преподавателем) интеграла при n, равном 4.
Приложение 1.
Варианты основных заданий и заданий для ручного счета (задание для ручного счета желательно выбирать отличающимися от основного как по роду, так и по виду задания кривой интегрирования)
Криволинейный интеграл по длине дуги ( I рода)
1. Вычислить криволинейный интеграл , где АО - отрезок прямой от точки А(3, -4) до точки О(0, 0).
2. Вычислить криволинейный интеграл , где АB - дуга параболы y2 = 2x от точки А(1, ) до точки B(2, 2).
3. Вычислить криволинейный интеграл по нижней половине окружности от точки А(-4, 0) до точки B(4, 0).
4. Вычислить криволинейный интеграл , где АB - дуга кривой y = x4 от точки А(1, 1) до точки B(2, 16).
5. Вычислить криволинейный интеграл по дуге АВ винтовой линии от точки А(3, 0, 0) до точки B(3, 0, 4π).
Винтовая линия 6. Вычислить криволинейный интеграл , где АВ - отрезок прямой у = - 2 от точки А(0, -2) до точки В(4, 0).
7. Вычислить криволинейный интеграл по левой половине окружности x2 + y2 = 4 от точки А(0, 2) до точки B(0, -2).
8. Вычислить криволинейный интеграл , где АB - дуга кривой y = ln x от точки А(1, 0) до точки B(e, 1).
9. Вычислить криволинейный интеграл
по дуге АВ циклоиды от точки А(0, 0) до точки B(6π, 0).
10. Вычислить криволинейный интеграл Циклоида , где L - первая арка циклоиды .
11. Вычислить криволинейный интеграл по дуге АВ линии от точки А(0, 0, 0) до точки B(,,).
12. Вычислить криволинейный интеграл , где L - дуга логарифмической спирали r = 5 e3φ от точки А(5, 0) до точки В (5 e3π /2, π/2).
13. Найти массу всей кардиоиды r = 2 (1 + cos φ), если плотность μ (P) в каждой ее точке Р μ (P) = . Кардиоида r =a(1+cosφ)
14. Найти массу всей лемнискаты r2 = 2 cos 2φ, если плотность μ (P) в каждой ее точке Р μ (P) = r. Лемниската r2 = a2 cos 2φ 15. Найти массу первого витка конической винтовой линии , если плотность μ в каждой ее точке выражается формулой μ = t.
Коническая винтовая линия
Криволинейный интеграл по координатам ( II рода)
16. Вычислить криволинейный интеграл по дуге АВ кривой x = t, y = t2, z = t3 от точки А(0, 0, 0) до точки B(1, 1, 1). 17. Найти работу силового поля F = xi + yj + zk при перемещении материальной точки вдоль первого витка конической винтовой линии из точки О(0,0,0) в точку А(2π, 0, 2π).
18. Вычислить криволинейный интеграл , где АВ - правая половина эллипса x = 3cos t, y = 2sin t. 19. Вычислить криволинейный интеграл , где АВ - дуга параболы x = 4 - у2, расположенная между ее точками пересечения с осью ординат. 20. Вычислить криволинейный интеграл , где АВ - дуга параболы у = х2 от точки А(-1, 1) до точки В(2, 4).
21. Вычислить криволинейный интеграл , где АВ - отрезок прямой х - у + 2 = 0 от точки А(-1, 1) до точки В(2, 4).
22. Вычислить криволинейный интеграл , где АВ - нижняя часть окружности х2 + у2 = 9 от точки А(-3, 0) до точки В(3, 0).
23. Вычислить криволинейный интеграл , где АВ - нижняя половина эллипса x = 2cos t, y = sin t.
24. Вычислить криволинейный интеграл , где АВ - дуга параболы у = 4 - х2, расположенная между ее точками пересечения с осью абсцисс. 25. Вычислить работу силы F = xyz i - j + yk при перемещении материальной точки по дуге кривой из точки А(0,1,0) в точку В(1,1,1).
26. Найти площадь области, ограниченной параболами у = 4х2, х = 4у2. 27. Вычислить работу силы F = (x - y) i + х j при перемещении материальной точки по параболе у2 = 8х из точки А(2, 4) в точку В(4, 4).
28. Найти площадь области, ограниченной параболами х2 = у, у2 = -8х. 29. Вычислить работу силы F = (2z - x) i + (x - y) j + (3x + z) k по прямой = = от точки А(1, 0, -1) до точки B(3, -1, 2). 30. Найти площадь области, ограниченной астроидой . Астроида - 1 -
Документ
Категория
Без категории
Просмотров
328
Размер файла
1 514 Кб
Теги
lab, krv, int12
1/--страниц
Пожаловаться на содержимое документа