Чтение онлайн

на главную

Жанры

Maple 9.5/10 в математике, физике и образовании

Дьяконов Владимир Павлович

Шрифт:

Рис. 5.21 Пример представления функции синуса 31 узловыми точками при равномерном расположении узлов

Рисунок 5.22 отличается от рис. 5.21 только построением сплайновой функции, представленной графическим объектом g1 (на рис. 5.19 он исключен из параметров функции display). После построения графика сплайновой аппроксимирующей функции становится вполне ясным, что точки представляют функцию синуса, которая прекрасно представляется отрезками полиномов сплайн-функции.

Рис. 5.22.

Пример сплайновой аппроксимации синусоидальной функции

Здесь полезно обратить внимание на то, что за пределами области узловых точек значения, возвращаемые сплайновой функцией в пакете CurveFitting равны нулю. Так что экстраполяция по ней невозможна (в тоже время функция spline такой возможностью обладает).

5.9.6. Функция реализации метода наименьших квадратов LeastSquares

До сих пор мы рассматривали методы числовой аппроксимации функций или данных, при которых порядок полиномов определялся числом отсчетов функции.

Функция LeastSquares служит для реализации аппроксимации по методу наименьших квадратов. При этом методе происходит статистическая обработка данных (самих по себе или представляющих функцию) исходя из минимума среднеквадратической погрешности для всех отсчетов. Эта функция реализуется в формах:

LeastSquares(xydata, v, opts)

LeastSquares(xdata, ydata, v, opts)

Все входящие в нее параметры были определены выше (см. параметры функции BSplineCurve). Параметр opts задается в форме выражений weight=wlist, curve=f или params=pset.

Следующие примеры иллюстрируют применение функции LeastSquares:

> with(CurveFitting):

LeastSquares([[0,.5], [1,2], [2,4], [3,8]], v);

– .050000000000 + 2.44999999999999974 v

> LeastSquares([0,1,2,3], [1,2,4,6], v, weight-[1,1,1,10]);

> LeastSquares([0,1,3,5,6], [1,-1,-3,0,5], v, curve=a*v^2+k*v+c);

Наглядную иллюстрацию приближения группы точек кривой (в данном случае представленной полиномом четвертой степени) дает рис. 5.23. Кривая в облаке точек располагается таким образом, что площади квадратов над кривой и под ней в сумме равны нулю.

Рис. 5.23. Графическое представление метода наименьших квадратов

В конце этой главы мы вернемся к реализации метода наименьших квадратов при выполнении регрессионного анализа, построенного па этом методе.

5.9.7. Функция полиномиальной аппроксимации

Функция Polynomial Interpolation реализует полиномиальную интерполяцию и может использоваться в виде:

PolynomialInterpolation(xydata, v)

PolynomialInterpolation(xdata, ydata, v)

Параметры функции были определены выше. Параметр v может быть как именем, так и численным значением. Примеры применения функции представлены ниже

> with(CurveFitting):

PolynomialInterpolation([[0,0], [1,2], [2,4], [3, 3]], z);

> PolynomialInterpolation([0, 2, 5, 8], [2, a, 1, 3], 3);

5.9.8.

Функция рациональной аппроксимации

Функция рациональной интерполяции задается в виде:

RationalInterpolation(xydata, z, opts)

RationalInterpolation(xdata, ydata, z, opts)

где необязательный параметр opts задается выражениями method=methodtype или degrees=[d1,d2]. Функция возвращает результат в виде отношения двух полиномов.

Параметр methodtype может иметь значения lookaround или subresultant, задающие учет или пропуск сингулярных точек.

Пример применения функции RationalInterpolation (загрузка пакета опущена, но предполагается):

> xpoints := [0,1,2,3,4,-1]: ypoints := [0, 3, 1, 3, а, 1/11]:

f := RationalInterpolation(xpoints, ypoints, x);

> for i from 1 to 6 do normal(eval(f,x=xpoints[i])-ypoints[i]) end do;

5.9.9. Функция вычисления обычных сплайнов Spline

Функция

Spline(xydata, v, opts)

Spline(xdata, ydata, v, opts)

вычисляет обычные (не В-типа) сплайны. Примеры ее применения даны ниже:

> Spline([[0,1], [1,2], [2,5], [3,3]], х);

> Spline([0,1,2,3], [1,2,5,3], v, degree=1);

5.9.10. Функция аппроксимации непрерывными дробями

Функция ThieleInterpolation осуществляет интерполяцию на основе непрерывных дробей (Thiele's — интерполяцию). Она задается в виде:

ThieleInterpolation(xydata, v)

ThieleInterpolation(xdata, ydata, v)

Примеры применения данной функции представлены ниже:

> ThieleInterpolation([[1,3],[2,5],[4,75],[5,4]], х);

> ThieleInterpolation([1,2,а], [2,4,3], 3)

5.10. Выбор аппроксимации для сложной функции

5.10.1. Задание исходной функции и построение ее графика

Трудно представить себе область научно-технических расчетов более широкую и почитаемую, чем аппроксимация различных функциональных зависимостей. С получения простой аппроксимации сложной зависимости нередко начинаются (а часто и заканчиваются) научные исследования во многих областях как прикладной, так и фундаментальной науки. Покажем возможности в этом систем Maple на одном из комплексных примеров, давно помещенных в библиотеку пользователей системы Maple V R2, и переработанном для Maple 9.5/10. В этом примере используются многие из описанных выше средств приближения функций.

Поделиться:
Популярные книги

Бастард Императора

Орлов Андрей Юрьевич
1. Бастард Императора
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Бастард Императора

На границе империй. Том 10. Часть 1

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 1

Имя нам Легион. Том 7

Дорничев Дмитрий
7. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 7

Измена. Вторая жена мужа

Караева Алсу
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Вторая жена мужа

Буря империи

Сай Ярослав
6. Медорфенов
Фантастика:
аниме
фэнтези
фантастика: прочее
эпическая фантастика
5.00
рейтинг книги
Буря империи

Пенсия для морского дьявола

Чиркунов Игорь
1. Первый в касте бездны
Фантастика:
попаданцы
5.29
рейтинг книги
Пенсия для морского дьявола

На изломе чувств

Юнина Наталья
Любовные романы:
современные любовные романы
6.83
рейтинг книги
На изломе чувств

Тринадцатый II

NikL
2. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Тринадцатый II

Сирота

Шмаков Алексей Семенович
1. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Сирота

Законы Рода. Том 9

Flow Ascold
9. Граф Берестьев
Фантастика:
городское фэнтези
попаданцы
аниме
дорама
фэнтези
фантастика: прочее
5.00
рейтинг книги
Законы Рода. Том 9

Красноармеец

Поселягин Владимир Геннадьевич
1. Красноармеец
Фантастика:
боевая фантастика
попаданцы
4.60
рейтинг книги
Красноармеец

Огненный князь 4

Машуков Тимур
4. Багряный восход
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Огненный князь 4

Начальник милиции. Книга 5

Дамиров Рафаэль
5. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 5

Инкарнатор

Прокофьев Роман Юрьевич
1. Стеллар
Фантастика:
боевая фантастика
рпг
7.30
рейтинг книги
Инкарнатор