Форум программистов, компьютерный форум CyberForum.ru

Интерполяционный многочлены по чебышевским узлам - C++

Восстановить пароль Регистрация
 
CoRReS
0 / 0 / 0
Регистрация: 17.10.2012
Сообщений: 61
06.05.2014, 16:34     Интерполяционный многочлены по чебышевским узлам #1
Всем здравствуйте!Столкнулся с проблемой:
1)Как находить узлы я знаю,и написал,и значения в ней нашел...Но как же строить сам многочлен я не понимаю...
2)Написать программу, которая строит для данной функции интерполяционный многочлены Pn произвольной степени по чебышевским узлам в соответствующей форме и позволяет вычислять значения этих многочленов в указанной точке.

Нужна допустим для функции ln x на отрезке [1,5] в барицентрической форме. Точность 10^ (-4)

Если кто объяснит или поможет мне понять как это писать,буду благодарен.

Добавлено через 2 часа 14 минут
Очень нуждаюсь в помощи(
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.05.2014, 16:34     Интерполяционный многочлены по чебышевским узлам
Посмотрите здесь:

C++ Многочлены
C++ Многочлены
C++ списки-многочлены. сложение
C++ Построить интерполяционный многочлен и интерполяционный сплайн
C++ класс, моделирующий многочлены n – го порядка
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CoRReS
0 / 0 / 0
Регистрация: 17.10.2012
Сообщений: 61
09.05.2014, 13:51  [ТС]     Интерполяционный многочлены по чебышевским узлам #2
беда(
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
09.05.2014, 13:53     Интерполяционный многочлены по чебышевским узлам #3
CoRReS, код есть какой-то для начала?
CoRReS
0 / 0 / 0
Регистрация: 17.10.2012
Сообщений: 61
10.05.2014, 02:55  [ТС]     Интерполяционный многочлены по чебышевским узлам #4
Цитата Сообщение от Tulosba Посмотреть сообщение
CoRReS, код есть какой-то для начала?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
//D. f(x)=ln x, [Epsilon]=10^-4, [a,b]=[1,5], многочлен в барицентрической форме
#include <cmath>
#include <math.h>
#include <iostream>
#include <fstream>
 
 
using namespace std;
 
double root(int,int,int,int);
 
double root (int i,int a,int b,int n)
{
    double Pi=3.14159265358979323846;
    return (((a+b)/2)+((b-a)/2)*cos(((Pi*(2*i+1))/(2*n+2))));
}
 
int main()
{
    ofstream run ("1.txt");
    int a=1;
    int b=5;
    int n=200;
    double massive[200];
    
    for(int i=0;i<n;i++)
    {
        massive[i]=root(i,a,b,n);
    }
    int time=0;
    for(int i=0;i<200;i++)
    {
        run << "{";
        run << massive[i]<<",";
        run << log10(massive[i]);
        run << "}"<< ",";
    }
    run.close();
    return 0;
}

Собственно функция для нахождения чебышевских узлов...
А через массив нахожу значения функции (ln x ) в чебышевских узлах и вывожу в файл для построения графиков в Mathematic...
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
12.05.2014, 00:31     Интерполяционный многочлены по чебышевским узлам #5
Как минимум вижу проблему из-за целочисленного деления:
C++
1
return (((a+b)/2)+((b-a)/2)*cos(((Pi*(2*i+1))/(2*n+2))));
Должно быть хотя бы так:
C++
1
return (((a+b)/2.)+((b-a)/2.)*cos(((Pi*(2*i+1.))/(2*n+2.))));
Т.е. чтобы хотя бы один аргумент был при делении вещественным.
CoRReS
0 / 0 / 0
Регистрация: 17.10.2012
Сообщений: 61
12.05.2014, 01:19  [ТС]     Интерполяционный многочлены по чебышевским узлам #6
спасибо)
Yandex
Объявления
12.05.2014, 01:19     Интерполяционный многочлены по чебышевским узлам
Ответ Создать тему
Опции темы

Текущее время: 17:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru