Skip to content

yevgeny-yakushov/power-approximate

Repository files navigation

Степенная аппроксимация qt/c++

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

Пример:

    // Устанавливаем границы
    #define LEFT_POINT_RANGE    1.0
    #define RIGHT_POINT_RANGE   6.0
    
    // Определяем исходную функцию
    double func1(double x) { return qLn(x) + 0.05 * qSin(x * 10.0); };
    
    int main(int argc, char *argv[])
    {
        QApplication a(argc, argv);
    
    	CCreateApproximate appr0(func1, LEFT_POINT_RANGE, RIGHT_POINT_RANGE, 10,  1);
    	CCreateApproximate appr1(func1, LEFT_POINT_RANGE, RIGHT_POINT_RANGE, 20,  2);
    	CCreateApproximate appr2(func1, LEFT_POINT_RANGE, RIGHT_POINT_RANGE, 30,  3);
    	CCreateApproximate appr3(func1, LEFT_POINT_RANGE, RIGHT_POINT_RANGE, 50,  4);
    	CCreateApproximate appr4(func1, LEFT_POINT_RANGE, RIGHT_POINT_RANGE, 100, 5);
    
        return a.exec();
    }

Также есть возможность добавить некотрые помехи на входные данные

    // С генерированием помех (добавит небольшой разброс по Oy)
	CCreateApproximate appr0(func1, LEFT_POINT_RANGE, RIGHT_POINT_RANGE, 10,  1, true, -0.5, 0.5);

Вывод

Все расчеты будут выведены в консоль, пример:

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

Пример графиков:

График аппроксимации 1 степени

График аппроксимации 5 степени

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages