Научная статья на тему 'Модель реализации тригонометрических функций на кривых третьего порядка'

Модель реализации тригонометрических функций на кривых третьего порядка Текст научной статьи по специальности «Математика»

CC BY
238
60
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Auditorium
Область наук
Ключевые слова
РИГОНОМЕТРИЧЕСКАЯ ФУНКЦИЯ / КОСИНУС / КРИВАЯ ТРЕТЬЕГО ПОРЯДКА / КРИВАЯ БЕЗЬЕ / СПЛАЙН / АППРОКСИМАЦИЯ

Аннотация научной статьи по математике, автор научной работы — Василевский В. Г.

Статья посвящена исследованию модели реализации тригонометрических функций. Итоговая реализация представлена сплайном из трёх кривых третьего порядка. Описаны коэффициенты кривых. Описано сравнение с другими методами: с кусочно-линейной аппроксимацией, со степенным рядом Тейлора. В статье присутствуют сведения о погрешности результатов моделирования.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Модель реализации тригонометрических функций на кривых третьего порядка»

УДК 551.46

МОДЕЛЬ РЕАЛИЗАЦИИ ТРИГОНОМЕТРИЧЕСКИХ ФУНКЦИЙ НА КРИВЫХ ТРЕТЬЕГО ПОРЯДКА

© 2014 В.Г. Василевский

аспирант каф/ программного обеспечения и администрирования информационных систем e-mail: vw17@mail.ru

Курский государственный университет

Статья посвящена исследованию модели реализации тригонометрических функций. Итоговая реализация представлена сплайном из трёх кривых третьего порядка. Описаны коэффициенты кривых. Описано сравнение с другими методами: с кусочно-линейной аппроксимацией, со степенным рядом Тейлора. В статье присутствуют сведения о погрешности результатов моделирования.

Ключевые слова: тригонометрическая функция, косинус, кривая третьего порядка, кривая Безье, сплайн, аппроксимация

Существуют условия задачи, по которым необходимо рассчитать значение некоторых тригонометрических функций: синуса, косинуса, тангенса, котангенса, секанса, косеканса, при этом оптимально задействуя все имеющиеся немногочисленные ресурсы (иоворя бытовым языком, найти «золотую середину»). Такая задача особенно распространена в программировании устройств, имеющих низкую частоту процессора и маленькие ресурсы памяти как для хранения исполняемой программы, так и для её исполнения. Остро стоит вопрос точности вычислений: высокая точность значительно расширяет возможности применения. Также актуален косвенный вопрос о сложности итоговой модели для понимания специалистами. Хотя этот вопрос напрямую не влияет на решаемую задачу, но так называемый порог вхождения влияет на обширность применения полученного решения в практике и на его дальнейшее развитие.

Анализируя поставленную задачу, мы выдвинули гипотезу, что jyf может быть решена при помощи кривых третьего порядка, так называемых кривых Безье [Farin 1988; Stone, Park, Derose 1989]. Данная гипотеза была основана на том, что кривая третьего порядка имеет ряд преимуществ по сравнению с другими моделями решения данной задачи.

Уравнение кривой третьей степени:

б(0 = (1-)3Po + 3<1-)2Pi + 3t2(1-t)P2 + t3P3, t e [0, 1].

Кусочно-линейная аппроксимация и разложение в ряд Тейлора являются одними из распространённых методов решения. Априорное предположение о кривых третьей степени и о кусочно-линейной аппроксимации заключалось в том, что для получения достаточно точных результатов кривая потребует меньше предварительно подготовленных данных, чем кусочно-линейная аппроксимация, что уменьшит затраты памяти на саму программу. Проще говоря, программа будет меньше «весить». Однако в расчёте кривой используется вычисление третьей степени, что несколько больше нагружает процессор, чем линейная функция.

Предварительное предположение о кривых третьего порядка и степенных рядах

ТЕХНИЧЕСКИЕ НАУКИ

Тейлора: из-за меньшей степени, кривые потребуют меньше ресурсов процессора, чем ряды.

Функции синуса, косинуса, тангенса, котангенса, секанса, косеканса можно получить, зная значения всего одной из них. В нашем случае мы моделируем косинус. Значения функции повторяются с некоторым периодом 2пТ. Период делится на четыре четверти. Значения в каждой четверти можно вычислить, зная значения всего в одной из них [Выгодский 1978]. Значения в нашей модели вычисляются по первой четверти.

В ходе моделирования и проведения экспериментальных испытаний над моделями был получен удовлетворительный экземпляр, который соответствует поставленным целям и заданному уровню. Такой моделью стал сплайн из трёх кривых, определённых на [0; п/6], [п/6; п/3], [п/3; п/2].

График полученного сплайна кривых, моделирующего функцию косинуса, изображён на рисунке.

Погрешность полученной модели не превышает 2*10-6. Данная погрешность связана преимущественно с различиями в самих функциях кривой и тригонометрической.

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

Первая кривая, определённая на [0; п/6]:

P0 = 1,00000000;

P1 = 1,00020297;

P2 = 0,95349027;

P3 = 0,86602540.

Auditorium: электронный научный журнал Курского государственного университета. 2014. № 4

Василевский В. Г. Модель реализации тригонометрических функций

на кривых третьего порядка

Вторая кривая, определённая на [п/6; п/3]:

P0 = 0,86602540;

P1 = 0,77891224;

P2 = 0,65129044;

P3 = 0,50000000.

Третья кривая, определённая на [п/3; п/2]:

P0 = 0,50000000;

P1 = 0,34891267;

P2 = 0,17457785;

P3 = 0,00000000.

Исследование сплайна кривых третьего порядка показало, что для моделирования функции косинуса с достаточной точностью используемый инструмент действительно требует меньше заранее подготовленных сведений, что уменьшает размеры самой программы и размеры используемой оперативной памяти в ходе исполнения программного кода, а при наличии небольшого излишка мощностей процессора весьма приемлемо в использовании.

Модель, представленная сплайном кривых третьего порядка, по сравнению с рядом Тейлора требует меньше ресурсов процессора, поэтому может использоваться на маломощных устройствах.

Стоит отметить, что у полученной модели тоже невысокое потребление оперативной памяти. Все расчёты происходят в относительно небольшом количестве операций и не требуют хранения большого объёма промежуточных данных. Также остаются не изученными возможности оптимизации работы модели и возможности повышения точности расчётов.

Модель реализации, основанная на сплайне кривых третьего порядка, имеет особенность: при увеличении количества кривых нагрузка на процессор не

увеличивается. Требуются ресурсы только на хранение коэффициентов самих кривых, что не так уж много, а точность расчётов при этом увеличивается.

Исследование проходило по принципу увеличения сложности модели: одна кривая, сплайн из пары кривых, сплайн из трёх кривых. По нашему экспертному мнению, имеет место гипотеза, что существует возможность построить модель такой точности, чтобы покрыть заданную разрядность, то есть в заданных дискретных рамках получать точный результат при относительно небольших затратах.

В результате проведённого исследования можно сделать вывод, что была получена модель реализации тригонометрических функций на кривых третьего порядка, которая позволяет получить достаточно точное, хотя и не идеальное, решение быстрее, чем точные методы (ряд Тейлора), при этом точность решения все же выше, чем у наиболее скоростных методов (кусочно-линейная аппроксимация). Границы возможностей кривых ещё не изучены, модели на их основе требуют новых исследований, чтобы раскрыть их потенциал.

ТЕХНИЧЕСКИЕ НАУКИ

Библиографический список

Farm G. Curves and surfaces for computer aided design, Academic Press, 1988.

Stone M. C., Park X., Derose T. D. A Geometric Characterization of Parametric Cubic Curves // University of Washington ACM Transactions on Graphics 1989., Vol. 8. No. 3. July. P. 147-163

ВыгодскийМ. Я. Справочник по элементарной математике. М.: Наука, 1978.

Auditorium: электронный научный журнал Курского государственного университета. 2014. № 4

i Надоели баннеры? Вы всегда можете отключить рекламу.