Здесь - Кафедра высшей математики и физики.

advertisement
Федеральное агентство по сельскому хозяйству
Федеральное государственное образовательное учреждение
высшего профессионального образования
Государственный университет по землеустройству
ПРИКЛАДНАЯ МАТЕМАТИКА
Рекомендовано УМО по образованию в области
землеустройства и кадастров в качестве учебного пособия
для студентов высших учебных заведений, обучающихся
по направлению 650500 ― Землеустройство и земельный
кадастр и специальностям: 311000 ― Земельный кадастр,
310900 ― Землеустройство, 311000 ― Городской кадастр,
250032 ― Геодезия.
Москва 2006
УДК 51
С 60
Рецензент: профессор кафедры высшей и прикладной математики МАТХТ им. М.В. Ломоносова доктор физико-математических
наук профессор Шевелев В.В.
С 60
Соловьев, И.А.
Прикладная математика [Текст]: учеб пособие для студентов вузов / И.А. Соловьев. – М.: ГУЗ, 2006. – 38 с.
Предлагаемое пособие содержит краткие теоретические сведения и практические задания по введению в курс «Численные методы». Элементарная теория погрешностей. Решение нелинейных
уравнений. Численные методы решения систем линейных алгебраических уравнений. Методы обработки экспериментальных данных.
Оно будет полезно преподавателям для проведения семинаров
и студентам при выполнении расчетно-графических заданий.
 Государственный университет по землеустройству, 2006.
 Соловьев И. А., 2006.
2
Раздел 1.
ЭЛЕМЕНТНАЯ ТЕОРИЯ ПОГРЕШНОСТЕЙ
Абсолютной погрешностью некоторой величины называется
взятая по модулю разность между ее точным A и приближенным a
числовыми значениями
a  А  а
(1.1)
Относительной погрешностью некоторой величины называется выраженное в процентах отношение ее абсолютной погрешности
к модулю приближенного числового значения

 a  a  100%, а  0
(1.2)
a
Значащими цифрами числа называются все его цифры в десятичном изображении, кроме нулей слева. Например, у числа
1030,50 все цифры значащие, а у числа 0,0103050 только подчеркнутые цифры являются значащими.
Значащая цифра приближенного числа называется верной
в широком смысле, если абсолютная погрешность этого числа не
превосходит единицы десятичного разряда, которому принадлежит
рассматриваемая цифра.
В следующем примере от каждой значащей цифры идет стрелка
к неравенству, в котором сравнивается единица соответствующего
десятичного разряда и абсолютная погрешность. Сверху над каждой цифрой приписаны буквы, означающие «в» ― верная и «н» ―
неверная цифра. α = 305,0374, Δα = 0,02
в в в в н н н
3 0 5, 0 3 7 4
102 101 100 10-1 10-2 10-3 10-4

  
 

0,02 0,02 0,02 0,02 0,02 0,02 0,02
Абсолютная погрешность функции u  u( x , x ,..., x ) несколь-
1 2
n
ких приближено заданных переменных x , x ,..., x , имеющих со1 2
n
ответствующие абсолютные погрешности  x1 ,  x2 ,...,  xn , вычисляется по формуле
3
u 
u
u
u
  x1 
  x2   
  xn
x1
x 2
x n
(1.3)
Задание 1.1. Вычислить u  x2 y  xy  3x  2 y 1 найти абсолютную и относительную погрешность результата, если аргументы
x и y верны (в широком смысле) в написанных знаках
x1,01, y20,2 .
Решение. Поскольку x верно в написанных знаках, то абсолютная погрешность  не может превышать единицы младшего разря-
x
да, которому принадлежит верная цифра, отсюда   0,01 ; анало-
x
гично получим, что   0,1. Найдем абсолютную погрешность:
y
u
u
 
 
  2 xy  y 3   x 2  x 2   0,37705  0,38 .
u x x y y
x
y
Заметим, что абсолютную погрешность не следует записывать
более чем с двумя-тремя значащими цифрами (абсолютные погрешности при отбрасывании «лишних» знаков можно только увеличивать!).
Вычислим
теперь
значение
функции
u(1,01;20,2) 36,5740236,57 .
В приближенном числе не следует сохранять те разряды, которые отбрасываются при вычислении абсолютной погрешности.
Найдем относительную погрешность, причем запись ее не будет содержать более трех значащих цифр.

  u 100%  0,38 100% 1,039013% 1,04% .
u
u
36,57
Ответ: u  36,57  0,38  36,57(11,04%) .
Нормализованной формой записи чисел называется следующая
запись: 0, a a ...a 10 p , где 0, a a ...a ― мантисса (она по моду-
n
лю всегда меньше единицы), число n ― размерность разрядной
сетки, число p ― порядок.
Назовем « n -разрядной математикой», такую которая сохраняет
в мантиссе лишь n разрядов, все остальные разряды, не умещающие12
n
12
ся в данную разрядную сетку, отбрасываются без округления.
4
При определении погрешности основных арифметических действий полезно пользоваться следующими правилами.
1. Абсолютная погрешность суммы приближенных чисел не
превышает суммы абсолютных погрешностей слагаемых.
Заметим, что при вычислении суммы приближенных чисел на
ЭВМ или микрокалькуляторе могут не выполняться классические аксиомы, в частности, переместительный закон. Источником этого является несовершенство вычислительных средств, ибо они могут оперировать лишь с ограниченным количеством десятичных разрядов,
отбрасывая или округляя те разряды, которые не укладываются в
«Прокрустово ложе», характерное для данной ЭВМ.
Приведем пример суммирования чисел, имеющих разные порядки. При этом будем считать, что все расчеты производятся на
гипотетической ЭВМ, оперирующей лишь с четырьмя десятичными разрядами, а значение пятого разряда учитывается при округлении четвертого. Заметим, что при сложении чисел разных порядков
ЭВМ выравнивает порядки, сдвигая меньшее число вправо:
10,267,6240,50320,084650,0341618,49 .
Изменяя порядок суммирования, а именно, складывая числа в
обратном порядке, получим:
0,034160,084650,50327,62410,2618,51.
Если в приведенном примере результат суммирования в прямом и обратном направлениях различаются не столь сильно, то при
последовательном прибавлении к числу 1,001·103 десяти тысяч
одинаковых чисел 1,001·10-1 получится сумма 1,001·103, которая
отличается вдвое от результата суммирования в обратном порядке:
2,002·103.
Из рассмотренных примеров следует, что при сложении положительных чисел их необходимо предварительно расположить
в порядке возрастания.
Рассмотрим еще один пример, в котором демонстрируется нарушение сочетательного закона. Пусть вновь в «четырехразрядной»
арифметике требуется сложить четыре числа
9,8249,7789,7939,81439,20 .
Сложим те же числа, разбив их с помощью скобок на две пары:
(9,8249,778)(9,7939,814)19,6019,6139,21.
Получим, что a bc  d (a b)(c  d ) .
5
2. Абсолютная погрешность разности двух приближенных чисел не превосходит суммы абсолютных погрешностей уменьшаемого и вычитаемого.
При нахождении разности двух близких приближенных чисел
возможна так называемая потеря точности. Поясним ее на примере. Пусть требуется найти разность двух чисел x10,135 и
y10,134 верных (в широком смысле) в написанных знаках, а также указать абсолютную и относительную погрешность результата.
Имеем
  0,001,  102
x
x
,   0,001,  102
y
y
,


x y
  0,002,

100
x y x y
x y x y
200
.
Таким образом, погрешность результата оказалось много
большей погрешностей исходных данных.
Чтобы избежать подобных ситуаций, при нахождении разности
применяют преобразование исходных формул, содержащих разности близких чисел. Например,
2,01 2 
( 2,01 2)( 2,01 2)
0,01

3,5310
 3.
2,01 2
2,01 2
Если невозможно совершить подобное преобразование, уменьшаемое и вычитаемое следует брать с достаточным числом запасных верных знаков.
3. Относительная погрешность произведения приближенных
чисел, отличных от нуля, не превышает суммы относительных погрешностей сомножителей.
Приведем два примера нарушения классических законов теории
действительных чисел, связанных с умножением.
Пусть в «четырехразрядной» арифметике требуется найти произведение двумя способами.
Первый способ:
0,400010
 1(0,257410
 10,257310
 1) 0,400010
 10,00101010,000410
 1.
Второй способ:
0,40001010,25741010,40001010,257310
 1
0,10291010,10291010,0000101
6
1
1
Здесь при умножении чисел 0,400010
за преде 0,257410

лами разрядной сетки мантиссы оказались подчеркнутые цифры,
которые
были
отброшены
без
округления:
0,102961010,102910
 1. Аналогично
0, 4000 101  0, 2573 101  0,10292 101  0,1029 101 .
Получили разные результаты, свидетельствующие о том, что в
данной «четырехразрядной» арифметике наблюдается нарушение
одного из основных законов обычной арифметики, а именно, дистрибутивного
a   b c   a  b  a  c .
Поскольку каждая вычислительная машина может работать
лишь с ограниченным множеством чисел
a
 x b
,
min
max
то операция умножения может выводить за эти пределы.
Предположим, что на гипотетической ЭВМ, в которой максимально допустимое число имеет порядок 1016, требуется найти
произведение трех чисел
x  2 109, x  5106, x  4 108.
1
2
3
При
следующем
порядке
умножения
получим,
x  x  x  4 1012. Когда сомножители расположены в дру1 2 3
гом порядке, а именно, x  x  x  2109  4108 5106, умноже-
1 3 2
ние х1 на х3 выводит за пределы максимально допустимого числа
x  x  81017 , и при счете на ЭВМ произойдет так называемый
1 3
«аварийный останов» или «Авост». Таким образом, при вычислении на ЭВМ произведения возможной ситуации, когда
x x x  x x x .
1 2 3 1 3 2
4. Относительная погрешность частного двух приближенных
чисел, из которых делимое отлично от нуля, не превосходит суммы
относительных погрешностей делимого и делителя.
Заметим, что, как при умножении приближенных чисел, так и при
делении, в результате целесообразно сохранять столько значащих
цифр, сколько их в числе с наибольшей относительной погрешностью.
7
Раздел 2.
ЧИСЛЕННЫЕ МЕТОДЫ АНАЛИЗА МАТЕМАТИЧЕСКИХ
МОДЕЛЕЙ, ОПИСЫВАЕМЫХ УРАВНЕНИЯМИ
С ОДНИМ НЕИЗВЕСТНЫМ
2.1. Постановка задачи. Дано уравнение
f ( x)  0.
(2.1)
Требуется найти все или некоторые его действительные корни.
Описание метода. На первом этапе, который носит название
отделения корней, определяются отрезки локализации, на каждом
из которых уравнение (2.1) имеет единственный корень (или совпадающие корни).
Отделение корней можно осуществить графически. Например,
3
для уравнения x  2x 10
3
(или x 2 x 1) следует построить
3
два графика y  x и y 2x 1, и найти отрезок, которому в пределах точности построения графиков принадлежит абсцисса точки
пересечения.
y
y  2 x  1
y  x3
1
0
x 0,5 1
x
Рис.2.1.
Из рисунка 2.1 следует, что точка пересечения двух графиков
принадлежит отрезку [0; 0,5].
Другой способ отделения корней основан на следующей теореме (о существовании единственного корня уравнения на отрезке).
Теорема 2.1. Если выполняются следующие три условия:
а) функция f ( x) непрерывна на отрезке x [a;b] , б) функция f ( x)
строго монотонна на отрезке [a;b] , в) на концах отрезка функция
f ( x) принимает значение разных знаков, то есть f (a)  f (b)  0 , то
на отрезке [a;b] уравнение (2.1) имеет единственный корень.
8
3
На примере уравнения x  2x 10 покажем, как отделить корни, используя теорему 2.1. Найдем производную f ( x)  3x2  2 , она
определена при всех действительных x , поэтому первое условие теоремы выполнено; функция непрерывна. Поскольку производная при
всех действительных x положительна, то функция всюду возрастает,
и второе условие теоремы также будет справедливо для любого отрезка. Для того чтобы воспользоваться третьим условием, вычислим
значение функции в какой-нибудь точке, удобнее всего вычислить
f (0)  1 0 . В силу возрастания функции естественно искать положительные значения при x  0 , найдем, например, f (1)  2  0 .
Таким образом, все условия теоремы выполнены для отрезка [0,1],
и на нем уравнение (2.2) имеет единственный корень x .
При отделении корней на заданном отрезке обычно применяется табуляция. Для этого могут быть использованы программы. Среди полученных в результате табуляции отрезков, выделяют те, на
концах которых функция имеет значение разных знаков.
Далее следует перейти ко второму этапу решения, который носит название уточнения корней. На этом этапе с помощью того или
иного метода вычисляется значение корня с заданной точностью  .
Для уточнения корней на практике широко используются методы
бисекции (половинного деления отрезка или метод проб), простой
итерации, метод Ньютона (касательных).
2.2. Метод бисекции
Алгоритм этого метода основан на следующей идее. Отрезок
локализации корня [a;b] на каждом шаге делят центральной точкой c  0,5(a  b) на два равных отрезка [a; c] и [c;b] , затем вычисляют f (c) и исключают из дальнейшего рассмотрения тот отрезок, на концах которого функция имеет значение одинаковых
знаков. С отрезком, на концах которого f ( x) принимает значение
разных знаков, процедуру деления повторяют. Процесс продолжается до тех пор, пока длина получившегося отрезка [a ;b ] , где
n n
f (a )  f (b )  0 , не станет меньше удвоенной заданной точности
n
n
b a 2 .
n n
9
(2.2)
За приближенное значение корня принимается середина этого
отрезка
a b
x  n n
2
n
(2.3)
Априорную оценку количества итераций, необходимых для достижения требуемой точности, можно произвести на основании
следующего неравенства
ba
x  x* 
,
n
2n 1
(2.4)
где x ― истинное значение корня ( f ( x)  0 ), n ― количество
итераций (шагов деления).
Из (2.5) следует, что точность  будет достигнута, если количество шагов n будет ближайшим натуральным числом, большим,
чем ln(b  a) ln 2 1.
Из неравенства (2.5) также следует, что метод бисекции сходится со скоростью геометрической прогрессии, знаменатель который равен 0,5.
3
Задание 2.1. Найти решение уравнения x  2x 10 с точностью   0,01, сужая отрезок локализации корня [0;1] с помощью
метода бисекции. Вычисления значений многочлена производить
на микрокалькуляторе с помощью схемы Горнера [1]. Значения
функции вычислять с точностью до четвертого знака после запятой.
Решение. Вычисление значения в точке x  0,5 многочлена
P( x) 1 x3  0  x2  2  x 1 приведено в таблице 2.1.
Таблица 2.1
1
1
0
2
-1
0,5
0,25
1,125
0,5
2,25
0,125
В первой строке таблицы 2.1 выписаны коэффициенты многочлена в порядке их следования, начиная с коэффициента при старшей степени. Во второй строке содержатся произведения аргумента 0,5 на значения величин из соседнего левого столбца и нижней
10
строки. В третьей строке в первом столбце переносится коэффициент из первой строки.
Во всех остальных столбцах последней строки располагаются
суммы величин из первых двух строк. Результат вычисления расположен в нижней строке последнего столбца P(0,5)  0,125 .
Из двух отрезков [0;0,5] и [0,5;1], на которые разделился отрезок [0;1] , выбираем для дальнейшего рассмотрения отрезок [0;0,5],
поскольку f (0)  f (0,5)  0 . Результаты всех последующих вычислений представлены в таблице 2.2.
Таблица 2.2
xх
f ( x)
0
0,5
1,0000 0,1250
0,25
0,375
0,438
0,469
0,454
0,4843 0,1973 0,4413 0,4402 0,0016
Так как b a  0,454  0,438  0,016  2 0,01, то требуемая
n
n
точность достигнута после семи шагов, и значение искомого корня
таково x  0,5(0,438  0,454)  0,446.
7
Ответ: x*  x    0,446  0,01.
7
2.3. Метод простой итерации
Для того чтобы применить метод простой итерации, исходное
уравнение (2.1) следует на отрезке локализации корня [a;b] привести к виду
x   ( x), ( x  
(2.5)
 a;b 
)
так, чтобы выполнялось условие
max  ( x)  q  1.
xa ,b 
(2.6)
Укажем некоторые приемы перехода от уравнения (2.1) к уравнению (2.5), для которого выполняется условие (2.6).
Если на отрезке [a;b] справедливо неравенство
0 m f ( x) M ,
(2.7)
то в качестве (х) можно взять функцию
 ( x) x f ( x) / M .
(2.8)
Например, для уравнения f ( x)  x3  2 x 1  0 на отрезке локаx[0;1]
лизации
корня
справедливо
неравенство
11
0  2  f / ( x)  3x2  2  5 . Отсюда, исходное уравнение можно
привести к виду, x  x  f ( x) M  0,2  0,6 x  0,2 x3 .
Если производная f / ( x) знакопостоянна и непрерывна на отрезке локализации корня, то уравнение (2.1) можно привести к виду
(2.5) так, чтобы выполнилось неравенство (2.6), применяя следующее преобразование
2
f ( x),
(2.9)
M m
где
(2.10)
m  min f ( x), M  max f ( x),
x a,b
x a,b
Рассмотренному выше уравнению x2  2 x 1  0 можно сопоx x
ставить в соответствии с формулами (2.9), (2.10) следующее преобразование x  x 
2
( x3  2 x 1).
5 2
В некоторых случаях удобен такой прием. Пусть в результате
преобразований получено уравнение (2.6), но для него на отрезке локализации корня вместо неравенства (2.7) справедливо неравенство
 ( x) k 1,x a,b,
(2.11)
тогда следует перейти к уравнению
x  1( x), x a,b ,
где
(2.12)
 1 – обратная функция.
Например, из уравнения 10 x3  x 10  0 , для которого выполнены условия теоремы 2.1 на отрезке x[1;2] , можно получить
следующее
уравнение
x 10 x3 10 . Здесь
 ( x) 10 x3 10 ;
 / ( x)  30 x2  30 при x[1;2] . Если перейти к обратной функции, то есть к уравнению x3 0,11 , неравенство (2.7) будет достигнуто.
В самом деле, 
1( x) 3 0,1x 1, ( 1)0,1/(33 (0,1x 1)2 и
( 1( x))1 0,034 для x[1;2] .
12
Условия (2.7) можно получить и сужая отрезок локализации
корня путем применения нескольких итераций метода бисекции.
Продемонстрируем это на примере уравнения x3  2 x 1  0 .
Легко
получить,
что
x  0,5  0,5x3,
 ( x)  0,5  0,5x3,
 / ( x) 1,5x2, и  ( x)   (1) 1,51. После одной итерации по
методу бисекции отрезок локализации корня имеет границы
[0;0,5] , и на нем max  ( x)  3 1.
8
Итерационная последовательность метода простой итерации
строится по формуле
x
  ( x ), n  0,1,2, ,
(2.13)
n1
n
где n – номер итерации, а начальное приближение
вольно из отрезка локализации корня
x [a;b] .
0
x
0
выбирается произ-
Условия сходимости, а также скорость сходимости сформулированы в теореме 2.2.
Теорема 2.2. Если на отрезке [a;b] функция  ( x) имеет непрерывную производную и отображает отрезок [a;b] в себя, и
max  ( x) q 1, x [a;b] , тогда последовательность (2.13)
x a,b 
независимо от выбора начального приближения x [a;b] сходится
0
к точному решению x   ( x) со скоростью геометрической прогрессии, знаменатель который q , причем справедливы оценки
x  x*  qn x  x* ,
n
0
q
x  x* 
x x ,
1q n n1
n
qn
*
x x 
x x .
1q 1 0
n
13
(2.14)
(2.15)
(2.16)
Задание 2.2. Методом простой итерации найти с точностью
  0,001 решение уравнения x 0,20,6 x 0,2 x3, выбрав начальное приближение на отрезке [0;1] . Используя априорную оценку
(2.16) определить число итераций, необходимых для достижения
требуемой точности. В качестве критерия остановки итерационного
процесса использовать апостериорную оценку (2.16). Решение.
Проверим выполнение условий теоремы 2.2
 ( x)0,60,6x2; max  ( x) 0,6q1.
x 0,1
Найдем первую итерацию, положив в качестве нулевой x  0,5 .
0
Имеем x  0,2  0,6  0,5  0,2  0,53  0,475 . Воспользуемся апри-
1
орной оценкой (2.17) и найдем число n итераций, необходимых для
достижения точности   0,001.
qn

x x 
x x  .
1q 1 0
n
Из (2.16) следует
ln
Отсюда
 (1q)
n
103(10,6)
ln
x x
1 0  0,50,475 8,09.
ln q
ln 0,6
Таким образом, требуется примерно девять итераций. Занесем
результаты дальнейших расчетов в табл. 2.3.
Таблица 2.3
n
x
n
xn  xn1 
q
1 q
0
1
2
3
4
5
0,5
0,475
0,464
0,458
0,456
0,455
-
0,017
0,008
0,004
0,002
0,0007
Ответ: x  0,455 103.
14
2.4. Метод Ньютона
Если в каждой точке отрезка [a;b] локализации корня уравнения (2.1) график функции y  f ( x) имеет касательную, сохраняет
направление выпуклости, а функция f ( x) строго монотонна, в качестве приближения к корню x можно взять точку пересечения
касательной, проведенной на одном из концов отрезка, с осью абсцисс. В случае вогнутой кривой ( f // ( x)  0 ), касательную следует
проводить в том конце [a;b] , где функция принимает положительное значение; для выпуклой кривой ( f // ( x)  0 ) приближение к корню достигается при использовании касательной на том
конце отрезка, где функция имеет отрицательное значение.
Итерационная последовательность метода Ньютона имеет вид
f (x )
n ,n 0,1,2,
x
x 
n 1 n f ( x )
n
(2.17)
Начальное приближение выбирается в соответствии со следующим правилом
 b, если f (b) f (b) 0,
x 
0
a, если f (a) f (a)0.
(2.18)
На практике часто используется также такое правило выбора
начального приближения. В качестве x берется тот конец отрезка
0
локализации корня, для которого выполняется неравенство
f ( x )  f // ( x )  0.
0
0
(2.20)
Условия, достаточные для сходимости метода Ньютона, сформулированы в следующей теореме.
Теорема 2.3. Если на отрезке x [a;b] выполняется условия:
1) f ( x) дважды непрерывно дифференцируема,
2) 0  f ( x) ,
(2.21)
3) 0 f ( x)   ,
4) начальное приближение x
0
(2.22)
располагается столь близко к
корню x*, что справедливо неравенство
15
 x  x*  q 1,
2 0
(2.23)
то итерационный процесс Ньютона сходится к корню x .
Причем справедлива оценка
2 2n
*
x x 
q .

n
(2.24)
Задание 2.3. Методом Ньютона найти с точностью   104 корень уравнения f ( x)  4 x3  2 x 1  0 , принадлежащий отрезку
[0;2]. За начальное приближение взять x 1. В качестве критерия
0
остановки итерационного процесса будем использовать неравен-
x
 x  . Решение. Итерационная формула имеет
n 1 n
ство
вид
f (x )
4 x3 2 x 1 8x3 1
n x  n
n  n .
x x 
n 1 n f ( x ) n 12x 2 2 12x 2 2
n
n
n
Расчеты сведены в табл. 2.4.
Таблица 2.4
n
x
n
xn1  xn
0
1,00000
1
0,90000
2
0,88497
3
4
0,88464 0,884646
-
0,1
0,01503
3·10-4
Ответ: x*  0,8846  104.
16
6,1·10-6
Раздел 3.
ЧИСЛЕННЫЕ МЕТОДЫ АНАЛИЗА МАТЕМАТИЧЕСКИХ
МОДЕЛЕЙ, ОПИСЫВАЕМЫХ СИСТЕМАМИ ЛИНЕЙНЫХ
АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ
Постановка задачи.
Требуется определить все числа x , x ,..., x , обращающие в
1 2
тождества линейные уравнения
 a11 x1  a12 x2 
 a x a x 
 12 1
22 2



am1 x1  am 2 x2 
m
 a1m xm  b1
 a2 m xm  b2
(3.1)
 amm xm  bm
Используя обозначения
 a11

a
A   21


 am1
a12
a22
am 2
amn 
 b1 
 x1 

 
 
a2 m 
b
x
2
; B   ; X   2 ,

 
 

 
 
amm 
 bm 
 xm 
(3.2)
систему уравнений (3.1) можно переписать в матричной форме
A B  X .
(3.3)
В дальнейшем будем считать, что система (3.1) имеет единственное решение.
Методы, которые позволяют получить точное решение за конечное число арифметических действий, если исходные данные

 заданы точно и промежуточные вычисb
,
a
;
i

1,
m
;
j

1,
m


 i ij

ления производятся без округлений, носят название точных или
прямых методов.
Рассмотрим алгоритм широко используемого в вычислительной
практике метода Гаусса с выбором ведущего элемента.
Метод Гаусса состоит из двух основных этапов, называемых
прямым ходом и обратным ходом.
Суть прямого хода заключается в последовательном исключении неизвестных с целью преобразования системы к так называемому ступенчатому виду, когда основная матрица системы имеет
на главной диагонали отличные от нуля элементы, а под главной
диагональю находятся только нулевые элементы. В качестве оче17
редного исключаемого неизвестного выбирается такое, которое
имеет наибольший по модулю коэффициент среди коэффициентов
уравнений, подлежащих преобразованиям. Таким образом, достигаются наименьшие вычислительные погрешности. Первый шаг
прямого хода. Пусть элемент a  0 и пусть он является наиболь-
11
шим среди элементов первого столбца. Если этот элемент не является наибольшим, то так переставляют строки, чтобы на месте a
11
оказался именно наибольший по модулю. Такой элемент будем
называть ведущим элементом на данном шаге преобразований.
Получим под ним в первом столбце одни нулевые элементы, для
этого вычтем из элементов второй строки расширенной матрицы
системы соответствующие элементы первой строки, умноженные
a
21 , а из третьей строки- элементы первой, умноженные
a
11
a
a
a
на 31 , (сокращенно: ( (2)  (1)  21 ), из (3)  (1)  31 ,…, из
a
a
a
11
11
11
a
(m)  (1)  31 ):
a
11
на число
a12
... a1m
b1
 a11



 a21  a11  a21 a22  a12 a21 ...a2 m  a1m  a21 b2  b1  a21 

a11
a11
a11
a11 
A

 ......................................................................................... 

a21
a
a
a 
am 2  a12 21 ...amm  a1m  21 bm  b1  21 
 am1  a11 
a11
a11
a11
a11 

В результате получим
a12 ... a1m b1 
 a11


(1)
0
a22
...a2(1)m b2(1) 

A
 0................................. 


(1)
0
am(1)2 ...amm
bm(1) 

.
18
.
Второй шаг прямого хода. Пусть элемент a(1)  0 и вновь он
22
наибольший среди элементов второго столбца в непреобразованной части расширенной матрицы, т.е. среди элементов
a , a ,..., a . Этот элемент на данном шаге является ведущим
22 32
m2
элементом. Получим под ним одни нулевые элементы, для этого
вычтем из элементов третьей строки расширенной матрицы системы соответствующие элементы второй строки, умноженные
(1)
(1)
(1)
a
a
a
на число 32 , сокращенно: (3)  (2)  32 , из (4)  (2)  42 ,…,
(1)
(1)
(1)
a
a
a
22
22
22
(1)
a
из (m)  (2)  m2 :
(1)
a
22

a
a12
... a1m
b1
 11
(1)
0
a22
a2(1)m
b2(1)

(1)
(1)
a (1)

(1)
(1) a32
(1)
(1) a32
A   0 a32
 a22
 (1) ...a3(1)m  a2(1m)  32
b

b

3m
2m
(1)
(1)
a22
a22
a22

 .................................................................................

(1)
(1)
(1)
 0 a (1)  a (1)  am 2 ...a (1)  a (1)  am 2 b (1)  b (1)  am 2
m2
22
mm
2m
mm
2m
(1)
(1)
(1)

a22
a22
a22













.
В результате получим
a12 ... a1m b1 
 a11


(1)
a22
...a2(1)m b2(1) 
0
A 0
0 ... a3(2)
b3(2) 
m


 ................................... 


(2)
0 ...amm
bm(2) 
0
.
Последний (m1) -й шаг прямого хода.
Пусть в результате (m 2) шага получена следующая матрица,
эквивалентная исходной расширенной матрице:
19
a12 ... a1( m 1)
a1m
b1
 a11



(1)
a22
...a2((1)m 1)
a2(1)m
b2(1) 
0


0
0 ... a3((2)m 1)
a3(2)
b3(2) 
m

A 

.....................................................


2)
( m  2)
( m  2)
0

0 ... a((mm1)(
a
b
m 1)
( m 1) m
m 1


( m  2)
( m  2)
( m  2) 
0
0
...
a
a
b
m
(
n

1)
mn
m


Пусть элемент a(m  2)
(m1)(m1)
 0 . Получим под ним нулевой
элемент, для этого вычтем из элементов последней строки расширенной матрицы системы соответствующие элементы предпослед-
ней
строки,
умноженные
число
(m 2)
a
(m 1)n
(m 2)
,
сокращенно:
a
(m 1)(n 1)
(m 2)
a
32
(m)  (m 1) 
. В результате получим
(m 2)
a
(m1)(m 1)
a12 ... a1( m1)
a1m
b1
 a11



(1)
a22
...a2((1)m1)
a2(1)m
b2(1)
0



(2)
(2)
(2)
0
0 ... a3( m1)
a3m
b3


A
 .....................................................



2)
( m  2)
0
0 ... a((mm1)(
bm( m12) 
m 1) a( m 1) m


( m 1) 
0
0
...
0
0
b
m

.
Обратный ход начинается с записи системы, которой соответствует итоговая расширенная матрица, полученная в результате прямого хода:
a11 x1 +a12 x2 +...+ a1( m 1) xm 1 + a1m xm = b1
(1)
a22
x2 +...+ a2((1)m 1) xm 1 + a2(1)m xm =b2(1)
.......................................................................
2)
( m  2)
( m  2)
a((mm1)(
m 1) xm 1 +a( m 1) m xm = bm 1
( m 1)
amm
xm = bm( m 1)
20
Из последнего уравнения находят x
m
и подставляют найденное
значение в предпоследнее уравнение и находят x
, и т.д., в пер-
m1
вое уравнение подставляют x , x
,..., x и находят x .
m m1
2
1
Замечание1. Если какой-то из ведущих элементов оказывается
равным нулю, то его меняют местами с одним из ненулевых элементов, принадлежащим этой же строке основной матрицы системы. Если же все элементы, принадлежащие строке основной матрицы системы, где отыскивается ведущий элемент, равны нулю, а
за разделительной чертой находится ненулевой элемент b(i)  0 ,
k
то решение прекращают, так как система оказывается несовместной.
Замечание 2. Строки, целиком состоящие из нулей, удаляются.
В результате прямого хода после вычеркивания нулевых строк появится ступенчатая матрица, у которой элементы a , a ,..., a
11 22
nn
отличны от нуля, а в столбцах под ними одни нулевые элементы.
Тогда обратный ход начинается с системы вида:
a11 x1 +a12 x2 +...+a( n 1)( n 1) xn 1 +a( n 1) n xn +a( n 1)( n 1) xn 1 +...+a( n 1) m xm =b1
(1)
a22
x2 +...+a((1)n 1)( n 1) xn 1 +a((1)n 1) n xn +a((1)n 1)( n 1) xn 1 +...+a((1)n 1) m xm = b2(1)
..............................................................................................................
2)
( n  2)
( n  2)
( n  2)
( n  2)
a((nn1)(
n 1) xn 1 +a( n 1) n xn +a( n 1)( n 1) xn 1 +...+a( n 1) m xm = bn 1
( n 1)
( n 1)
ann
xn +an( n( n1)1) xn 1 +...+anm
xm = bn( n 1)
Неизвестные
являются
x , x ,..., x
1 2
n
базовыми,
а
x ,x
,..., x - свободными. Свободные неизвестные переноn1 n2
m
сятся в правые части
a11 x1 +a12 x2 +...+a( n 1)( n 1) xn 1 +a( n 1) n xn =  a( n 1)( n 1) xn 1  ...  a( n 1) m xm +b1
(1)
a22
x2 +...+a((1)n 1)( n 1) xn 1 +a((1)n 1) n xn =  a((1)n 1)( n 1) xn 1  ...  a((1)n 1) m xm + b2(1)
..............................................................................................................
2)
( n  2)
( n  2)
( n  2)
( n 2 )
a((nn1)(
n 1) xn 1 +a( n 1) n xn =  a( n 1)( n 1) xn 1  ...  a( n 1) m xm + bn 1
( n 1)
( n 1)
ann
xn =  an( n( n1)1) xn 1  ...  anm
xm + bn( n 1)
.
Далее начинается описанное выше продолжение обратного хода
метода Гаусса. Базовая неизвестная x из последнего уравнения
n
21
выражается через b(n1) и линейную комбинацию свободных неизвестных x
n
,x
,..., x , найденное выражение для x затем
n1 n2
m
n
подставляется в предпоследнее уравнение, из которого находится
и т.д., пока из первого уравнения не будет получено выражеx
n1
ние базовой неизвестной x через b
1
1
и линейную комбинацию
свободных неизвестных.
Замечание 3. Иногда ведущий элемент выбирается как наибольший по модулю среди всех элементов не преобразованной части
основной матрицы системы.
К преимуществам метода Гаусса следует отнести такие его особенности. а) В методе Гаусса, чтобы получить решение системы из
m уравнений, требуется совершить
2 3
m операций (действий), где
3
m – число неизвестных. Для получения решения такой же системы
методом Крамера потребуется m[(m 1)m! m!] операций. б) Метод
Гаусса позволяет производить действия с несколькими уравнениями системы, не затрагивая остальные уравнения. Метод Крамера
требует «работать» со всеми уравнениями одновременно. Алгоритм
элементарных преобразований, используемый в методе Гаусса, гораздо проще алгоритма вычисления определителей по методу разложения по элементам строки в методе Крамера. В то же время недостатком метода Гаусса является накопление вычислительных погрешностей от шага к шагу. Именно поэтому метод Гаусса, как
правило, в современных вычислительных устройствах применяется
для систем с количеством неизвестных не более 1000.
Задание 3.1. Получить решение системы
 0,00100 x  6,0000 x 6,0010,
1
2


 2,5010 x 5,0000 x  2,4990.
1
2

методом Гаусса с выбором и без выбора главного элемента. Все
операции производить, сохраняя только пять значащих цифр и отбрасывая лишние знаки без округления (т.е. вычисления должны
производиться в «пятизначной арифметике»). Решение. Заметим,
что точное решение системы x  1,0000 ; x 1,0000 .
1
2
22
1. Решение методом Гаусса без выбора главного элемента.
Прямой ход. Исключим x из второго уравнения. Для этого
1
прибавим ко второму уравнению первое, умноженное на 2501.
Имеем
х2 · (2501,0· 6,0000 + 5,0000) = 15011 · х2;
6,0010 · 2501,0 + 2,4990 = 15008,501 + 2,4990 ≈ 15010,499 ≈ 15010,
(подчеркнутые цифры удалены без округления преобразуемых чисел).
В результате прямого хода будет получена система:
 0,00100 x  6,0000 x 6,0010
1
2


15011 x 15010

2

На первом шаге обратного хода
15010
x 
 0,99993,
2 15011
подставим x в первое уравнение и найдем
2
1
x 
 (6,0010  6,0000  0,99993) 
1 0,00100
(6,00105,99958) 0,00150


 1,5000
0,00100
0,00100
Таким образом, накопление вычислительных погрешностей
привело к значительному искажению решения системы.
2. Решение методом Гаусса с выбором главного элемента.
Прямой ход. Заметим, что рациональнее все преобразования вести не с самими уравнениями, а с расширенной матрицей системы
 6,0000 0,00100 6,0010 
,
B 

2,5010 2,4990 
 5,0000
в которой столбец свободных членов F отделен от элементов матрицы A вертикальной чертой. Среди коэффициентов матрицы A
системы выбираем наибольший по модулю:
max
 0,00100 ; 6,0000 ; 2,5010 ; 5,0000   6,0000.
Переставим столбцы матрицы B так, чтобы наибольший коэффициент переместился на главную диагональ матрицы A (напомним, что главная диагональ соединяет верхний левый элемент матрицы A с нижним правым). Получаем
23
 6,0000 0,00100 6,0010 
B 

5,0000
2,5010
2,4990


С помощью элемента «6», которые носит название ведущего,
добьемся того, чтобы в столбце, содержащем его, под главной диагональю находились бы нули. Для этого вычтем из элементов второй строки соответствующие элементы первой строки, умноженные на 5/6.
В арифметике с пятью значащими цифрами получаются следующие результаты вычислений:
5
 0,83333...  0,83333;
6
5, 0000
2,5010 
(0, 00100)  2,5010  0,83333  0, 00100  2,5010  0, 000833 3 
6, 0000
 2,501833  2,5018;
5, 0000
2, 4990 
(6, 0010)  2, 4990  0,83333  6, 0010  2, 4990  5, 0008 1 3 3 
6, 0000
 2, 4990  5, 0008  2,5018
В результате прямого хода расширенная матрица В принимает следующий вид:
 6,0000 0,00100 6,0010 
B 
.
0,0000
2,5018

2,5018


Этой матрице соответствует следующая система уравнений:
6,0000 x 0,0010 x 6,0010
2
1


2,5018x 2,5018

1

В результате обратного хода получим
2,5018
x 
 10000; x 
1 2,5018
2
6,0010 0,00100 x
1  6,00100,00100  1,0000.

6,0000
6,0000
Ответ: Решение системы методом Гаусса без выбора главного
элемента: x  1,5000 ; x  0,99993 . Решение системы методом
1
2
Гаусса с выбором главного элемента: x  1,0000 ; x 1,0000 .
1
24
1
Раздел 4. МЕТОД НАИМЕНЬШИХ КВАДРАТОВ
4.1. Метод наименьших квадратов, не учитывающий
погрешности аргумента
Постановка задачи. Результатом экспериментальных измерений
довольно часто является табличная функция (табл. 4.1), в которой
величины y имеют значительные неизвестные погрешности  ,
y
iЭ
а значения x
аргумента считаются точными (погрешности их
iЭ
равны нулю:   0 ).
x
Таблица 4.1
x
iЭ
y
iЭ
x
1
y
1
x
3
y
3
x
2
y
2
…
…
x
n
y
n
Построение
y  f (a , a ,
0 1
двух
этапов:
искомой
аналитической
зависимости
, a , x) , соответствующей таблице 4.1, состоит из
m
1) выяснения общего вида формулы
, a , x) , определяемой конечным числом парамет-
y  f (a , a ,
0 1
m
ров a , a , , a , где m  n 1; 2) нахождение для выбранной зави0 1
m
симости y  f (a , a , , a , x) наилучших параметров a (i  0,m)
i
0 1
m
из условия минимизации среднего квадратического отклонения
min (a , a , , a ) , где
0 1
m
2 1/ 2

 
y

f
(
a
,
a
,
,
a
,
x
)

  , (4.1)
0 1
m iЭ 
 iЭ

при этом отдельные отклонения экспериментальных значений y
iЭ
от расчетных f (a , a , , a , x ) могут быть больше среднего
0 1
m iЭ
 n
1
 (a , a , , a )   
0 1
m n
 i 1
квадратического отклонения
На первом этапе, этапе выбора общего вида формулы
y  f (a , a , , a , x) , могут иметь место два случая.
0 1
m
25
В первом случае общий вид восстанавливаемой зависимости
известен из физической сущности исследуемого процесса. Например, при обработке экспериментальной зависимости давления реального газа p от абсолютной температуры T при постоянном
объеме V , можно воспользоваться уравнением Ван-дер-Ваальса, из
которого следует, что связь между p и T – линейная.
Во втором случае общий вид зависимости заранее неизвестен и
подбор f (a , a , , a , x) осуществляется на основе анализа таб-
0 1
m
личных данных, которые сравниваются со значениями набора известных функций: степенной, показательной, логарифмической,
тригонометрических … Чаще всего используются конечные суммы
по той или иной системе функций
m
y  f (a , a , , a , x)   a  ( x),(m  n 1),
0 1
ь
i 0 i i
где, например,   xi (i  0,m).
На
(4.2)
i
втором
этапе,
этапе
определения
параметров
a (i  0,m, где m  n 1) используется известный из теории веро-
i
ятности принцип, согласно которому наивероятнейшими значениями будут те, которые обеспечивают минимальные значения среднеквадратического отклонения (формула 4.1).
Записывая условия экстремума

 0, i  0, m,
a
i
(4.3)
получают так называемую систему нормальных уравнений.
На практике наиболее часто в качестве аппроксимирующих
функций используются многочлены по степеням независимого аргумента. Причем, как правило, выбираются многочлены не высоких
степеней. Это связано с тем, что в процессе решения системы нормальных уравнений ошибки во входной информации и ошибки
округлений значительно преумножаются.
Выпишем широко применяемую на практике систему нормальных уравнений для линейной зависимости y  a  a x :
0
26
1
n
n

na  a  x   y
 0 1i 1 i i 1 i

n 2 n
 n
a  x  a  x   x y
 0 i 1 i i 1 i i 1 i i
В общем виде, когда искомая зависимость записывается как
многочлен m – ой степени
m
y  f (a ,a , ,a , x)   a x k , mn 1,
0 1
m
k 0 k
(4.4)
система нормальных уравнений компактно записывается так
k 0,n
m
n j i n i
  x y , i 0,m
 a  x
j 0 j k 1 k
k 1 k k
j 0,m
i 0
(4.5)
Заметим, что минимизация среднего квадратического отклонения (формула 4.1) в случае, когда степень многочлена m ровно на
единицу меньше количества точек n , приводит к интерполяционному многочлену.
Задание 4.1. по методу наименьших квадратов определить коэффициенты линейной зависимости y  a  a x по данным табли-
0
1
цы 4.2.
Вычислить среднее квадратическое отклонение расчетных значений от табличных.
Таблица 4.2
x
i
y
iэ
1
2
3
4
5
1,35
2,16
2,63
3,13
3,91
Решение. С целью уменьшения объема вычислений исходную
таблицу удобно преобразовать, введя так называемый «ложный
нуль», т.е. новое положение начала координат. В качестве «ложного нуля» целесообразно принять значение хi, которое расположено
в центре таблицы.
27
Пусть z  x  3, тогда таблица 4.2 преобразуется в таблицу 4.3.
i
i
В последнюю включим данные, необходимые для составления системы нормальных уравнений.
Таблица 4.3
i
zi
yi
zi2
zi yi
1
-2
1,35
4
-2,7
2
-1
2,16
1
-2,16
3
0
2,63
0
0
4
1
3,13
1
3,13
Σ
0
13,18
10
6,09
5
2
3,91
4
7,82
Система нормальных уравнений имеет вид ( n  5 ):
 5a  0a 13,18,
1
 0

0a 10a 6,09.
1
 0
Решение системы таково: a  2,636 a  0,609 .
0
1
Отсюда
получается
следующая
зависимость
y  a  a z  2,636  0,609z . Переходя к координате x , запишем
0
1
следующее выражение для y :
y  2,636  0,609( x  3)  0,809  0,609x
Найдем среднее квадратическое отклонение
1
 y   ((1,35  0,809  0, 609 1) 2  (2,16  0,809  0, 609  2) 2  (3,13  0,809  0, 609  4)2 
5
1/ 2
(3,91  0,809  0, 609  5) 2  (2, 63  0,809  0, 609  3) 2 
 0, 007742  0, 088
Ответ: y  0,809  0,609x ,   0,088 .
y
4.2. Обработка данных измерений с помощью метода
наименьших квадратов, учитывающим погрешности
всех измеряемых величин
Постановка задачи. Результат измерения температуры моря
y  T в зависимости от глубины x  R представлены табличной
функцией ( R ,T ), i  1, N . С помощью метода наименьших квадра-
i i
тов, учитывающим погрешности как температуры T , так и координаты термодатчика R, определить параметры B и B модельной
0
28
1
зависимости T  F (B , B , R) , а также средние квадратические от-
0 1
клонения:
1/ 2
1 N

 R    ( R1  F 1 ( B0 , B1 , Ti )) 2  ;
 N i 1

1/ 2
1 N

 T    (T1  F ( B0 , Bi , Ri )) 2  ,
 N i 1

где F 1(B , B ,T ) – функция, обратная к F (B , B , R) .
0 1
0 1
Необходимость применения метода обработки экспериментальных данных морских измерений, в котором бы учитывались
погрешности, как в функции, так и аргумента, вызвана тем, что изза имеющихся течений происходят случайные колебания датчиков
измерений около выбранных положений.
Поскольку используемые в настоящей задаче модельные зависимости могут быть приведены с помощью тех или иных подстановок к линейной y  B  B x , то дальнейшие рассуждения будем
0
1
соотносить с линейной функцией.
Исходя из табличной функции ( x , y ), i 1, N , с помощью
i i
формулы расстояния от точки ( x , y ) до прямой B x  y  B  0
i i
1
0
получим следующую сумму квадратов отклонений экспериментальных данных от расчетных (расстояний от табличных точек до
расчетной прямой):
N
S ( B0 , B1 )   ( B1 xi  yi  B0 ) 2 /(1  B12 )
i 1
Функция S (B , B ) имеет минимум при тех B и B , которые
0 1
удовлетворяют системе уравнений
S
 0;
B0
S
0
B1
0
1
(4.6)
Производя необходимые упрощения, систему (4.6) можно привести к следующему виду:
N
N

NB0  B1  xi   y i

i 1
i 1
 N
N
N
N
N
N
N

2
2
2
2
 B0  xi  B1  x1  B1 B0  xi  N  B1 B0  B1  xi y i  2 B0 B1  y i  B1  y i   xi y i
i 1
i 1
i 1
i 1
i 1
i 1
 i 1


29
Выразим из первого уравнения системы B через B ,
0
N
N
i 1
i 1
1
B0  ( y i  B1  x i ) / N .
Поставим во второе уравнение системы найденное выражение
для B . В результате получим следующее квадратное уравнение
0
относительно B :
1
B12  P( B1 )  1  0,
(4.7)
где
N
P
x
i 1
2
i

N
1 N
1 N
( xi ) 2   y i2  ( y i ) 2
N i 1
N i 1
i 1
N
N
N
1
xi y i   xi  y i

N i 1 i 1
i 1
(4.8)
Если выполняется условие
N
 xi y i 
i 1
1
N
N
N
i 1
i 1
 xi  y i  0,
то решение уравнений для B и B
0
1
(4.9)
имеет вид
( B1 )1, 2  ( P  p 2  4 ) / 2.
Если же условие (4.9) не выполняется, а числитель в выражении (4.8) для коэффициента P отличен от нуля, то квадратное
уравнение (4.7) вырождается и (B )  0 .
13
Замечание 1. В случае постоянства функции
F (B , B , R)  co ns t (или y  B  B x  const )
0 1
0
1
 (или  ) следует считать бесконечной величиной.
R
x
Замечание 2. Возможны случаи, когда табличные значения
(R ,T ) (i 1, N ) находятся вне области определения функций
i i
F (B , B , R) и F 1(B , B ,T ) . В программе необходимо прекра0 1
0 1
щение вычислений 
R
и
T
в этих случаях.
Проиллюстрируем на примере описанный алгоритм.
Пусть требуется подобрать коэффициенты B и B линейной
зависимости y  B  B x и вычислить
0
1
0
1
 и  , исходя из следуx
y
ющей табличной функции (для удобства дальнейших вычислений
30
включены x2 и y 2 и
таблица расширена: в нее помимо x и y
i
i
x y (здесь y и x совпадают соответственно T и R ).
i i
Величина
хi
-2
уi
-0,8
2
xi
4
хi ·уi
1,6
2
yi
0,64
Табличные значения
-1
1
0,4
1,0
1
1
-0,4
1,0
0,16
1,00
i
i
Суммы
2
-0,6
4
-1,2
0,36
0
0,0
10
1,0
2,16
Вычислим коэффициенты искомой зависимости модифицированным методом наименьших квадратов, имеем P  7,84 ;
(B )  7,96 ; (B )  0 ; (B )  0,1255407 ; (B )  0 .
11
01
12
02
Из двух пар найденных коэффициентов приоритет имеет та, для
которой среднее квадратическое отклонение которой наименьшее:
1
k  
N
Выбираем из

(( B1 ) k xi  y i  ( B0 ) k ) /(1)( B ) )

i 1

N
2
2
1 k
1/ 2
.
 , (k 1,2) наименьшее. Имеем  1,59 ;
k
1
  0,68 . Таким образом, приоритет получает зависимость
2
Ей
соответствует
обратная
функция
y  0,1255407 x .
x  7,9655442 y . Вычислим средние квадратические погрешности:
1 4

 y    ( y i  0  0.1255407 xi ) 2 
 4 i 1

1 4

 x    xi  0  7,9655442 y i 2 
 4 i 1

1/ 2
 0,7187703;
1/ 2
 5,723
Обычным методом наименьших квадратов получим зависимость y  0,1x , которой соответствует обратная функция x 10 y .
Для этих функций получаются такие оценки:
4


1
 

(0,1xi  y i  0) 2 

2
 4(1  0,1 ) i 1

1 N

 y    (0,1xi  y i ) 2 
 4 i 1

1 4

 x    (10 y i  xi ) 2 
 4 i 1

1/ 2
1/ 2
 0,717635;
1/ 2
 7,17635.
31
 0,7140735;
Раздел 5.
ПОСТРОЕНИЕ ГИСТОГРАММ НА ОСНОВЕ ОБРАБОТКИ
ЭКСПЕРИМЕНТАЛЬНЫХ ДАННЫХ
Существующие методы построения гистограмм для набора экспериментальных точек эффективно «работают», если количество
данных исчисляется, по крайней мере, десятками на выбранный отрезок их оценки. Нами разработан метод «падающих прямоугольников», который предназначен для построения гистограмм и связанных с ними характеристик случайных явлений, когда, либо количество точек начинается с трех, либо количество сменяющихся
диапазонов монотонности не меньше трех.
Идея нахождения гистограммы состоит в аппроксимации
промежуточных значений отрезками кривой (или прямой), как показано на рисунках 5.1. и 5.2.
Рис. 5.1. Ломаная линия для дискретного
набора экспериментально измеренных
данных.
Рис. 5.2. Исходный дискретный набор
точек, на основе которых стоится
гистограмма.
На каждом участке между двумя соседними точками описываемый процесс определяется непрерывной и строго монотонной
функцией, в простейшем случае — отрезком прямой.
Опишем алгоритм построения гистограммы по методу «падающих прямоугольников».
Первый шаг. На первоначальном рисунке первый участок монотонности кривой (t , y ) , (t , y ) проецируем на ось ординат и
0 0
1 1
фиксируем в памяти ЭВМ координаты концов отрезка по оси ординат ( y , y ) . На новом рисунке в координатах ( y , J ) строим пря-
0 1
0
32
моугольник с высотой, равной единице по оси (0, J ) и с основаниями в точках y и y .
0
1
Второй шаг. Следующий участок монотонности кривой
(t , y ) (t , y ) , вновь проецируем на ось ординат и фиксируем в
1 1
2 2
памяти ЭВМ числа ( y , y ) .
1 2
Над прямоугольником, полученным после первого шага,
надстраиваем новый прямоугольник с высотой, равной
единицей. Координаты концов
основания этого нового прямоугольника имеют абсциссы
(t , y ) . Если границы абсцисс
1 1
нового прямоугольника выхоРис. 5.3. Иллюстрация метода падающих дят за границы абсцисс старого
прямоугольника,
то
его
прямоугольников.
«надстройка» опускается вниз
по оси ординат (0, J ) на единицу длины (рис. 5.3).
(k 1) -ый шаг. ( (k 1) -ый участок монотонности кривой
(t , y ) , (t
,y
)
k k
k 1 k 1 вновь проецируем на ось ординат и фиксиру)
ем в памяти ЭВМ числа ( ( y , y
k k 1 . Над прямоугольником, полученным после k -того шага, надстраиваем новый прямоугольник с
высотой, равной единице. Координаты концов основания этого но) . Если границы
вого прямоугольника имеют абсциссы ( y , y
k k 1
абсцисс нового прямоугольника выходят за крайние границы абсцисс всех прежде построенных прямоугольников, то его “надстройка” опускается вниз по оси ординат (0, J ) по правилу «падающих
прямоугольников», то есть, соответствующий участок нового прямоугольника «приземляется» на верхнее основание первого попавшегося «по пути» прежнего прямоугольника и так, пока не будет достигнут уровень самого нижнего прежде построенного прямоугольника (или ось абсцисс). В результате будет получена ступенчатая
фигура, образованная такими какими-то m прямоугольниками.
33
Обозначим высоту каждого i -того прямоугольника через h , а
i
через H —сумму всех высот прямоугольников в полученной к
k
моменту времени t ступенчатой фигуре:
k
l
H  h
k
i
i 1
Тогда гистограмма к моменту времени t
собой ступенчатую фигуру
(5.1)
k
будет представлять
h1

при t[t0;t1]
1
H
(
y

t
)
k 1 0


h2
 
при t(t1;t2 ]
(t , y)   2 H k ( y2  y1)
k
.................................


hk
при t(tk 1;tk ]
 k 
H k ( yk  yk 1)

(5.2)
Полное описание случайного временного ряда в моменты
времени t , t , …, t , …, tm будет даваться последовательностью
1 2
k
гистограмм (t , y) , (t , y) , …, (t , y) ,…, (tm , y) .
2
1
k
Полученная гистограмма обладает свойством нормировки:

k yi
 (tk , y)dy    (tk , y)dy 
i 1 y

i 1
k
k h
yi
hi
 y
  i  1, k  1,2,..., m.
y
i 1 H k ( yi  yi 1) i 1 i 1 H k
(5.3)
Чтобы подсчитать среднее значение величины y , описываемой ломаной линией (t , y ) , …, (t , y ) в момент времени t
0 0
m m
необходимо найти интеграл
34
k

k yi
 y(t )   y(t , y)dy    y(tk , y)dy 
k
k
i 1 y

i 1
2
k y
k h y y
yi
hi

  i i i 1 ,
y
2
i 1 2 H k ( yi  yi 1) i 1 i 1 H k
k  1,2,..., m.
(5.4)
Моментная функция второго порядка будет равна:
 2
k yi 2
 y (tk , y)dy    y (tk , y)dy 
i 1 y

i 1
k y3
yi
hi


yi 1
3
H
(
y

y
)
i 1
k i i 1
k h y 2  yi yi 1 y 2
i 1 ,
 i i
3
i 1 H k
k  1,2,..., m.
(5.5)
Отсюда следует, что дисперсия равна

2
 (t )   ( y y(tk )2(t , y)dy 
k
k

k h y 2  yi yi 1 y 2
k yi  y
i
i
i

1
i 1` hi )2 ,

( 
3
2
Hk
i 1 H k
i 1
k  1,2,..., m.
(5.6)
К достоинствам предложенного способа построения гистограммы следует отнести то, что она может быть построена, уже
начиная с третьей точки, в то время как обычный подход требует
достаточно большого статистического материала. Вторым достоинством является то, что здесь не предполагается искусственное разбиение всего участка от y
до y
на равные шаги
min
max
y  const . К третьему преимуществу предложенного в настоящей
работе построению гистограммы следует отнести тот факт, что в
отличие от общепринятого способа, требующего O(mm ) операций,
35
здесь производится всего O(m) действий. Однако есть один недостаток этого метода, заключающийся в том, что формула (5.2) содержит в знаменателе разность y  y , которая может обращать-
i
i 1
ся в нуль, тем самым вычислительный процесс, связанный с построением гистограммы может приводить к заранее непредвиденным осложнениям.
Можно указать еще один способ построения гистограммы, основанный не на подсчете относительных частот с помощью высот
прямоугольников. Дело в том, что эти относительные частоты вида
h / H учитывают только сколько раз на данном отрезке [ y ; y ]
i
i 1 i
k
прямая, параллельная оси абсцисс, пересекает построенную ломаную. В то же время не учитывается длина самого отрезка [ y ; y ] ,
i 1 i
а эти длины все в общем случае различны, например, для двух отрезков
разной
длины,
отличающихся
на
порядок
y y
 y  y
, будут получаются равные относительil il 1
i j i j 1
ные частоты.
Один из путей устранения отмеченного недостатка заключается
в том, чтобы относительные частоты подсчитывать с помощью
площадей построенных прямоугольников. Обозначим площадь
каждого i -того прямоугольника, с высотой h единиц, через Q , а
i
i
площадь всей построенной фигуры через Q . Тогда относительные
k
частоты появления величины y на участке основания каждого получившегося прямоугольника можно подсчитать так:
Q
 i  i , k  1,2..., m .
Qk
Полученная ступенчатая фигура на плоскости
Q
h

1
 ~ 1 , при t[t0;t1]
~
 Q(t m )(y1- y0 ) Q(t m )

Q
h
2
2 , при t(t ;t ]


~
~
1 2
ˆ(t , y)   Q
 (t m )(y2 - y1) Q(t m )
m

.................................

Q
h
m
~
 ~ 1 , при t(tm 1;tm ]
 Q(t m )(ym - y m-1) Q(t m )
36
и будет искомой гистограммой.
Построенная таким образом гистограмма также удовлетворяет
условию нормировки:

k yi
k
hi
 (tk , y)dy  
 (tk , y)dy   y
i 1 y
i 1 Q(tk )

i 1
k
yi
Qi

1, k 1,2,..., m.
yi 1
Q
(
t
)
i 1
k
Среднее значение имеет вид:
 ~
k yi ~
 y(t )   y(t , y)dy    y(tk , y)dy 
k
k
i 1 y

i 1
2  y2
k y2 h y
k
y
h
i 
i
i
i
i 1 

~
~
y
2
i 1 2 Q(tk ) i 1 i 1 Q(tk )
k hi ( y  yi 1) ( yi  y ) k Qi ( yi  yi 1)
i
i 1   ~

,
~
2
Q
(
t
)
2
Q(tk )
i 1
i 1 k
k  1,2,..., m.
Моментная функция второго порядка вычисляется так:
 2~
k yi 2 ~
 y (tk , y)dy    y (tk , y)dy 
i 1 y

i 1
k y3 h y
k Q y 2  yi yi 1 y 2
i i  i i
i 1 , k  1,2,..., m.

~ y
~
3
i 1 3 Qk i 1 i 1 Qk
Дисперсия имеет вид:

~
2
 (t )   ( y y(tk ) 2(t , y)dy 
k
k

k Q y 2  yi yi 1 y 2
k
i 1  (  yi  yi 1` Qi ) 2 ,
 ~ i i
~
3
2
Q
(
t
)
Q
(tk )
i 1
i 1
k
k  1,2,..., m.
Предложенный алгоритм учитывает только информационные
свойства кривой, связанные с монотонностью, но не учитывает из37
менения выпуклости. Однако это можно исправить, если построить
методом падающих прямоугольников две ступенчатые фигуры: одну по участкам монотонности, другую по участкам выпуклости.
Можно таким образом исследовать и другие производные. Чтобы
воспользоваться описанным алгоритмом для ломаных фигур функции следует аппроксимировать линейными зависимостями на выбранных элементарных отрезках по оси абсцисс.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1. Боглаев Ю.П. Вычислительная математика и программирование /
Ю.П. Боглаев.— М.: Высшая школа, 1990— 544 с.
2. Соловьев И.А. Математическое моделирование стохастических
явлений переноса теплоты, массы и энергии: Автореферат диссертации на соискание ученой степени доктора физико-математических
наук / И.А. Словьев. — М.: Изд-во МГГУ, 2003— 32 с.
38
39
Download