Линейная аппроксимация. Аппроксимация функции с помощью линии тренда

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ

ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

(ФГБОУ ВПО «ВГТУ», ВГТУ)

Факультет радиотехники и электроники

Кафедра высшей математики и физико-математического моделирования


КУРСОВАЯ РАБОТА

по дисциплине: Математика

Тема: «Методы аппроксимации функций»


Разработал студент группы КП-121

И.С. Кононученко

Руководитель Кострюков С.А


ЗАДАНИЕ на курсовую работу


Тема: «Методы аппроксимации функций».

Студент группы КП-121 Кононученко Илья Сергеевич

1. Методы аппроксимации функций.

1.1. Непрерывная аппроксимация.

2. Точечная аппроксимация.

3. Интерполяционный полином Лагранжа.

4. Интерполяционный полином Ньютона.

5. Погрешность глобальной интерполяции.

6. Метод наименьших квадратов.

7. Подбор эмпирических формул.

8. Кусочно-постоянная интерполяция

9. Кусочно-линейная интерполяция.

2. Практическая часть.

2.1. Построить интерполяционный многочлен для функции f(x)=lnx- по узлам х=2; 4; 6; 8; 10; 12. Вычислить приближенное значение логарифма от 5,75. Получить оценку погрешности остаточного члена.

2.2. Функцию f(x), заданную таблицей, аппроксимировать линейной зависимостью ??(х)=Ах2+Вх+С. Найти х, для которого f(x)=10.



1. Методы аппроксимации функций

1.1 Непрерывная аппроксимация

1.2 Точечная аппроксимация

4 Интерполяционный полином Ньютона

8 Кусочно-постоянная интерполяция

9 Кусочно-линейная интерполяция

Практическая часть

2.1 Построить интерполяционный многочлен для функции f(x)=lnx-по узлам х=2; 4; 6; 8; 10; 12. Вычислить приближенное значение логарифма от 5,75. Получить оценку погрешности остаточного члена

2.2 Функцию f(x), заданную таблицей, аппроксимировать линейной зависимостью ?(х)=Ах+В, квадратичной зависимостью ?(х)=Ах2+Вх+С. Найти х, для которого f(x)=10

Список литературы


1.МЕТОДЫ АППРОКСИМАЦИИ ФУНКЦИЙ


1.1Непрерывная аппроксимация


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

Теоретически для наилучшего приближения целесообразно требовать, чтобы во всех точках некоторого отрезка отклонения аппроксимирующей функции от функции f(x) было по абсолютной величине меньше заданной величины:

В этом случае говорят, что функция равномерно приближает функцию f(x) с точностью e на интервале. Практическое получение равномерного приближения представляет большие трудности, и поэтому этот способ применяется главным образом в теоретических исследованиях.

Наиболее употребительным является так называемое среднеквадратичное приближение, для которого наименьшее значение имеет величина

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


2 Точечная аппроксимация


Аппроксимация, при которой приближение строится на заданном дискретном множестве точек, называется точечной.

Для получения точечного среднеквадратичного приближения функции y=f(x), заданной таблично, аппроксимирующую функцию строят из условия минимума величины

где yi - значения функции f(x) в точках xi.

Основная сфера применения среднеквадратичного приближения - обработка экспериментальных данных (построение эмпирических формул).

Другим видом точечной аппроксимации является интерполирование, при котором аппроксимирующая функция принимает в заданных точках xi, те же значения yi , что и функция f(x), т.е. .


Рисунок 1

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

На рис. 1 показаны качественные графики интерполяционной функции (сплошная линия) и результаты среднеквадратичного приближения (пунктирная линия). Точками отмечены табличные значения функции f(x).


3 Интерполяционный полином Лагранжа


Лагранж предложил строить интерполяционный полином в виде разложения



где li(x) - базисные функции.

Для того, чтобы полином удовлетворял условиям Лагранжа, т.е. был бы интерполяционным, базисные функции li(x) должны обладать следующими свойствами:

) быть полином степени n

) удовлетворять условию

Лагранж показал, что функции, обладающие указанными свойствами, должны иметь следующий вид


С учетом этого выражения интерполяционный полином Лагранжа может быть записан в виде

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

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



Значения интегралов от не зависят от f(x) и могут быть легко вычислены аналитически.


1.4 Интерполяционный полином Ньютона


Рассмотрим еще одну форму записи интерполяционного полинома


Требования совпадения значений полинома с заданными значения функции в узловых точках Ni(xi)=yi, i=0,1,…,n приводит к системе линейных уравнений с треугольной матрицей для неизвестных коэффициентов:



решить которую не составляет труда.

Интерполяционный полином называется полиномом Ньютона. Интересная особенность полинома Ньютона состоит в том, что каждая частичная сумма его первых (m+1) слагаемых представляет собой интерполяционный полином степени m, построенный по первым (m+1) табличным данным.


5 Погрешность глобальной интерполяции


Ошибка приближения функции f(x) интерполяционным полиномом n-й степени Ln(x) в точке x определяется разностью



Можно показать, что погрешность Rn(x) определяется следующим выражением


Здесь - производная (n+1) порядка функции f(x) в некоторой точке, а функция определена как

Если максимальное значение производной f (n+1)(x) равно



то для погрешности интерполяции следует оценка



Конкретная величина погрешности в точке x зависит, очевидно, от значения функции в этой точке. Качественный характер зависимости показан на рис. 2.


Рисунок 2

Вследствие описанного поведения погрешности, глобальная интерполяция в некоторых случаях может давать совершенно неудовлетворительный результат. Из рисунка видно, что погрешность интерполяции тем выше, чем ближе точка x лежит к концам отрезка. За пределами отрезка интерполяции (т.е. при экстраполяции) быстро растет, поэтому погрешность возрастает существенно.


1.6 Метод наименьших квадратов


Пусть для исходных данных xi, fi, i=1,…,N (нумерацию лучше начинать с единицы), выбран вид эмпирической зависимости: y=?(a0,a1,…,am) с неизвестными коэффициентами a0,a1,…,am . Запишем сумму квадратов отклонений между вычисленными по эмпирической формуле и заданными опытными данными:


S(a0,a1,…,am)=(?(x1,a0,a1,…,am)-fi)2


Параметры a0,a1,…,am будем находить из условия минимума функции S(a0,a1,…,am). В этом состоит метод наименьших квадратов (МНК).

Известно, что в точке минимума все частные производные от S по равны нулю:

Рассмотрим применение МНК для частного случая, широко используемого на практике. В качестве эмпирической функции рассмотрим полином

?(x)=a0+a1x+a2x2+…+amxm


Формула (1) для определения суммы квадратов отклонений примет вид:

S(a0,a1,…,am)=(a0+a1x+a2x2+…+amxm-fi)2 (2)


Вычислим производные

Приравнивая эти выражения к нулю и собирая коэффициенты при неизвестных a0,a1,…,am , получим следующую систему линейных уравнений

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

В случае полинома первого порядка m=1, т.е. , система нормальных уравнений примет вид


При m=2 имеем:

Как правило, выбирают несколько эмпирических зависимостей. По МНК находят коэффициенты этих зависимостей и среди них находят наилучшую по минимальной сумме отклонений.


1.7 Подбор эмпирических формул


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

аппроксимация полином интерполяция формула

Рисунок 3


Тогда говорят о подборе эмпирических формул. Построение эмпирической формулы состоит из двух этапов подбора вида этой формулы, содержащей неизвестные параметры a0,a1,…,am, и определение наилучших в некотором смысле этих параметров. Вид формулы иногда известен из физических соображений (для упругой среды связь между напряжением и деформацией) или выбираются из геометрических соображений: экспериментальные точки наносятся на график и примерно угадывается общий вид зависимости путем сравнения полученной кривой с графиками известных функций. Успех здесь в значительной степени определяется опытом и интуицией исследователя.

Для практики важен случай аппроксимации функции многочленами, т.е. F(x)=a0+a1x+a2x2+…+amxm .

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


1.8 Кусочно-постоянная интерполяция


На каждом отрезке интерполяционный многочлен равен константе, а именно левому или правому значению функции.

Для левой кусочно-линейной интерполяции

F(x)= fi-1, если xi-1 ?x

Для правой кусочно-линейной интерполяции F(x)= fi-1, если xi-1

Легко понять, что условия интерполяция выполняются. Построенная функция является разрывной, что ограничивает ее применение. Для левой кусочно-линейной интерполяции имеем графическое представление


Рисунок 4


1.9 Кусочно-линейная интерполяция


На каждом интервале функция является линейной Fi(x)=kix+li. Значения коэффициентов находятся из выполнения условий интерполяции в концах отрезка: Fi(xi-1)=fi-1, Fi(xi-1)=fi . Получаем систему уравнений: kixi-1+ li= fi-1, kixi+ li= fi , откуда находим ki=li= fi- kixi .

Следовательно, функцию F(x) можно записать в виде:


F(x)= x+ fi- kixi , если, т.е.

Или F(x)=ki ·(x-xi-1)+fi-1, ki = (fi - fi-1) / (xi - xi-1), xi-1 ? x ? xi, i=1,2,...,N-1


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

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


Рисунок 5


2. ПРАКТИЧЕСКАЯ ЧАСТЬ


2.1 Построим интерполяционный многочлен для функции


f(x)=lnx- по узлам х=2; 4; 6; 8; 10; 12.


Формула для вычисления данного многочлена выглядит следующим образом:



где n- количество узлов.

Рассчитаем значения базисных полиномов.

Формула для расчета базисных полиномов:



Запишем значения узлов функции:

Вычислим значения функций f(x) в соответствующих узлах:

f(x0)==0.6931471805599453-1.5=-0.8068528194400547(x1)= =1.386294361119891-1.25=0.136294361119891(x2)= =1.791759469228055-1.1666666666666667=0.625092802561388(x3)= =2,079441541679835-1.125=0.954441541679835(x4)= =2.302585092994045-1.1=1.202585092994045(x5)= =2.484906649788-1.083333333333333=1.401573316454667


Рассчитаем значения соответствующих базисных полиномов:



Запишем формулу вычисления многочлена f(x)=lnx- по полученным данным:

L(x)=f(x0)·l0(x)+ f(x1)·l1(x)+ f(x2)·l2(x)+ f(x3)·l3(x)+ f(x4)·l4(x)+ f(x5)·l5(x).

Подставим в формулу полученные значения:

L(x)=((- 0.8068528194400547) ·(x-4)(x-6)(x-8)(x-10)(x-12)+ +0.136294361119891·5(x-2)(x-6)(x-8)(x-10)(x-12)- 0.625092802561388·10·

· (x-2)(x-4)(x-8)(x-10)(x-12)+ 0.954441541679835·10(x-2)(x-4)(x-6)(x-10)(x-12)-1.202585092994045·5(x-2)(x-4)(x-6)(x-8)(x-12)+ 1.401573316454667·

·(x-2)(x-4)(x-6)(x-8)(x-10)=0,000443792912875·x5-0.001895922201567·x4+

032520620421826·x3-0.289410042490318·x2+1.50294940468648·x-2.886362165898854

Рисунок 6

L(x)= 0.000443792912875·x5-0.001895922201567·x4+

032520620421826·x3-0.289410042490318·x2+

50294940468648·x-2.886362165898854

Из рисунка видно, что графики функций совпадают.

Вычислим приближенное значение логарифма от 5,75 с точностью до 0,001.

Воспользуемся разложением



Пользуясь формулой



посчитаем приближенное значение логарифма:

Получим оценку погрешности остаточного члена:

Формула нахождения остаточного члена в других точках:

Rn(x)=f(x)-Ln(x).

Подставим значения и вычислим остаточный член:

Rn(x)= -0.234721044665224-(-0.149875603361276)= 0.0122

Для абсолютной погрешности интерполяционной формулы Лагранжа можно получить следующую оценку:


0122374?9.9512361


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

Функцию f(x), заданную таблицей аппроксимируем линейной зависимостью ?(х)=Ах+В, квадратичной зависимостью ?(х)=Ах2+Вх+С.


x10151720f(x)371117Решение:

Для решения этой задачи воспользуемся методом наименьших квадратов.

Система нормальных уравнений для линейной зависимости (x)=Ax+B:

Учитывая, что n=4: ;

Решаем систему линейных уравнений:

Следовательно, линейная зависимость будет иметь вид:

Рассмотрим квадратичную зависимость?(х)=Ах2+Вх+С. Система нормальных уравнений имеет вид:


Найдем не подсчитанные суммы:

Следовательно, квадратичная зависимость будет иметь вид:


Рисунок 7

Функция, заданная таблицей.

Линейная зависимость

Квадратичная зависимость


По графику найдем значение х, для которого f(x)=10.

Список литературы


1. Кириллова С.Ю. Вычислительная математика/Кириллова С.Ю. Изд-во Владим. гос. ун-та, 2009. -102с.

2. Справочное пособие по приближенным методам решения задач высшей математики/ Л.И. Бородич, А.И. Герасимович, Н.П. Кеда и др.; под ред. Л.И. Бородич.- М.: Высшая школа, 1986. -189с.

3. Тюканов, А.С. Основы численных методов: учеб. пособие для студентов. Изд-во РГПУ им. А.И. Герцена, 2007. -226с.


Репетиторство

Нужна помощь по изучению какой-либы темы?

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

    Линейная аппроксимация - (Linear approximation) – см. Аппроксимация, Линейность в экономике …

    линейная аппроксимация - линейное приближение Аппроксимацией называется приближенное выражение каких либо величин или объектов через другие более простые величины или объекты. При линейной аппроксимации приближение строится с помощью линейных функций. ] Тематики защита информации EN linear approximation of block ciphers … Справочник технического переводчика

    кусочно-линейная аппроксимация функции - — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом EN piecewise linear approximation … Справочник технического переводчика

    Аппроксимация - «замена одних математических объектов другими, в том или ином смысле близкими к исходным» ; в частности приближенное выражение сложной функции с помощью более простых. Например, при кусочно линейной А., непрерывная… … Экономико-математический словарь

    аппроксимация - «Замена одних математических объектов другими, в том или ином смысле близкими к исходным» . В частности — приближенное выражение сложной функции с помощью более простых. Например, при кусочно линейной А., непрерывная… … Справочник технического переводчика

    Группа линейных преобразований векторного пространства Vконечной размерности n над нек рым телом К. Выбор базиса в пространстве Vреализует Л. г. как группу невырожденных квадратных матриц степени пнад телом К. Тем самым устанавливается изоморфизм … Математическая энциклопедия

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

    Метод решения класса задач статистич. оценивания, в к ром новое значение оценки представляет собой поправку к уже имеющейся оценке, основанную на новом наблюдении. Первая процедура С. а. была предложена в 1951 X. Роббинсом(Н. Robbins) и С. Монро… … Математическая энциклопедия

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

НАЦИОНАЛЬНЫЙ МИНЕРАЛЬНО-СЫРЬЕВОЙ УНИВЕРСИТЕТ

«ГОРНЫЙ»

Кафедра АТПП

Математические методы обработки данных

Лабораторная работа № 2

ОБРАБОТКА ЭКСПЕРИМЕНТАЛЬНЫХ ДАННЫХ ПО МЕТОДУ ГАИМЕНЬШИХ КВАДРАТОВ

Выполнил: студент гр.АПМ-13 ____ __________ / Озеров Б.А. /

(подпись) (Ф.И.О.)

Проверил: доцент ­­­­­___________ / Иванов П.В. /

(подпись) (Ф.И.О.)

Санкт-Петербург

Цель работы: изучение практических приемов нахождения коэффициентов линейных и нелинейных регрессионных зависимостей и оценки точности аппроксимации с использованием программной среды MathCad.

Линейная аппроксимация.

Дано:

Способы аппроксимации:

line ;

2) решение системы линейных уравнений с помощью конструкции Given – Find .

Выполнение задания:

1) решение системы линейных уравнений, используя функцию line.

Делаем матрицу данных нам величин, а именно x и y. Функция line просто вычисляет быстрым способом, находит не известные коэффициенты. Получаем искомые коэффициенты. Запись в программе MathCad представлена на рис.1

рис.1 решение системы линейных уравнений, используя функцию line

в программе MathCad

2) Конструкция Given – Find использует расчетную методичку, основанную на поиске корня вблизи точки начального приближения.

В блоке Given записывается система уравнений (неравенств), подлежащих решению. Система уравнений должна быть записана после или правее Given. Перед словом Given необходимо указывать начальные приближения для всех переменных. Признаком окончания системы служит Find.

Сначала задаем матрицу данных нам величин, а именно x и y. И задаем начальное приближение А и В, от которых будем начинать искать значения линейного уравнения Ах+В=y. Затем вводим служебное слово Given и после него записываем уравнение, используя знак жирное равно. И в конце написать функцию Find с неизвестными переменными в качестве параметра. Получаем искомые коэффициенты. Запись в программе MathCad представлена на рис.2

Используя метод наименьших квадратов, мы составляем уравнения, которые записываем после слова Given:

рис.2 решение системы линейных уравнений с помощью конструкции Given – Find

в программе MathCad

Вычислили коэффициенты аппроксимирующего полинома линейного уравнения двумя разными способами. Они совпали: (а=А, b=B)

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

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

Наиболее простой метод заключается в замене сложной кривой ломаной линией, как показано на следующем рисунке.

Тонкая синяя линия состоит из отрезков прямых, по возможности максимально совпадающей с основной кривой. Работать с отрезками прямых в программе значительно проще, т. к. математически прямая описывается простым уравнением Y = k * X + c . Разумеется, замена гладкой кривой прямолинейными участками дает лишь приближенную картину соответствия X и Y , но тут уж надо идти на компромиссы.

Итак, мы заменили исходную кривую ломаной линией, т. е. выполнили кусочно-линейную аппроксимацию.

Ломаная линия определяется координатами (X;Y) точек ее изломов, т. е. для нашего случая это точки (0.8; 83), (2.2; 88), (3; 88), (4.2; 80), (5.2; 70), (7.8; 30), (10; 20) и (14.8; 12).

AB задается координатами двух точек (XA; YA) и (XB; YB) . Отрезок - это часть прямой, а уравнение прямой, как уже было сказано, описывается так: Y = k*X + c . Так как обе точки лежат на прямой, можно составить систему из двух уравнений:

YA = k*XA + с
YB = k*XB + с

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

k = (YA - YB)/(XA - XB); с = YA - k * XA

Таким образом, возвращаясь к нашей ломаной, мы по вышеприведенным формулам легко получим уравнения для каждого из отрезков ломаной по координатам точек ее излома. Остается лишь описать процесс на языке Си.{code}

#define PT_CNT 8

typedef struct{
float X, Y;
} POINT;

POINT line = {{0.8, 83}, {2.2, 88}, {3, 88}, {4.2, 80}, {5.2, 70}, {7.8, 30}, {10, 20}, {14.8, 12}};

float function(float x){
for(int i=0; i < (PT_CNT-1); i++){
if((x >= line[i].X) && (x <= line.X){
float k = (line[i].Y - line.Y)/(line[i].X - line.X);
float с = line[i].Y - k * line[i].X;
return k * x + c;
}
}
return 0;
}{/code}

Сначала определяем константу PT_CNT , которая указывает количество точек излома нашей ломаной. При этом начало и конец ломаной так же являются точками ее излома.

Затем определяем новый тип POINT для описания точки излома. Ну а после этого задаем массив, содержащий все точки излома. Это будут исходные данные для дальнейших расчетов.

Теперь определяем функцию function , которая получает в виде параметра x измеренное напряжение на датчике, а возвращает соответствующее ему значение измеряемого параметра, вычисленного по графику ломаной. Работает она по очень простому алгоритму.

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

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

Как видите, все довольно просто. Код получается достаточно универсальным, т. е. переопределив константу PT_CNT и соответственно содержимое массива line вы можете реализовать кусочно-линейную аппроксимацию любой кривой с любой точностью приближения. И только об одном следует заботиться: чтобы в кривой и аппроксимирующих ее отрезках никогда не было вертикальных кусков, потому что для вертикального отрезка вычисление коэффициента k приведет к делению на 0, а значит, совершенно неверному результату. К счастью, реальные датчики в своих характеристиках такой ситуации не создают.