2 / 2 / 0
Регистрация: 08.09.2011
Сообщений: 31
1

Чебышевские узлы интерполяции.

22.02.2012, 16:39. Показов 8535. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите, пожалуйста!! Срочно нужно сдать код. Суть в следующем: нужно построить график зависимости погрешности от числа узлов, где под узлами понимаются чебышевские.
для интерполиционных узлов, график строится и все работает, помогите сделать, что бы строился график для чебышевских узлов.
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function L_n=Lag2(x,y,xx)
%x-массив координат узлов
%y-массив значений интерполируемой функции
N=length(x);
z=zeros(size(x));
s=0;
for k=1:N
    P=1;
  for i=1:N
      if k~=i
          P=P.*(xx-x(i))./(x(k)-x(i));
      end
  end
    s=s+y(k)*P;
end
L_n=s;
end
и вот собственно построение графиков не работает только чебышев
Matlab M
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
41
g=inline('exp(-x)');
nmax=15;
for n=3:1:nmax
    h=2/(n-1)
    for l=1:n
        x(l)=-1+(l-1)*h;
    end
y=g(x);
xx=linspace(-1,1,30);
 jj = length(xx);
for j = 1:jj
Ln(j)=Lag2(x,y,xx(j))
end
hold on;
yy = g(xx)
err=abs(Ln-g(xx))
maxerr(n)=max(err)
end
figure('color','w')
hh = 3:1:nmax
plot(hh,maxerr(3:nmax),'g')
 
%%%%%%% Чебышев
nmax=15;
for n=3:1:nmax-1
    h=2/(n-1);
    for l=1:n
        x1(l)=cos((2*n+1)/nmax*0.5*pi);
    end
end
y1=g(x1);
xx=linspace(-0.9,0.9,30);
jj = length(xx);
for j = 1:jj
Ln(j)=Lag2(x1,y1,xx(j))
end
err1=abs(Ln-g(xx));
max1err(n)=max(err1)
figure('Color','w')
hh1 = 3:1:nmax-1
plot(hh1,max1err(3:nmax-1),'r')
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.02.2012, 16:39
Ответы с готовыми решениями:

Построить график интерполяционного многочлена Ньютона, отметить на нем узлы интерполяции. Вычислить значения
Построить график интерполяционного многочлена Ньютона, отметить на нем узлы интерполяции. Вычислить...

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

Узлы в Fortran
Нужна небольшая помощь с лабораторной по информатике! Задача такая: "Написать программу, которая...

Узлы в дереве
Доброго время суток господа. Просьба помочь с программой: Найти максимум количества узлов,...

2
2 / 2 / 0
Регистрация: 08.09.2011
Сообщений: 31
24.02.2012, 09:06  [ТС] 2
Очень прошу помогите нарисовать график зависимости максимальной ошибки по чебышеву от числа узлов интерполяции
0
2013 / 1285 / 61
Регистрация: 05.06.2010
Сообщений: 2,213
25.02.2012, 15:45 3
Немного (почти все) изменил. Какие были ошибки долго перечислять - сам сравни.
Matlab M
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
g=inline('exp(-x)');
nmax=15;
maxerr = [];
for n=3:1:nmax
%     h=2/(n-1);
%     for l=1:n
%         x(l)=-1+(l-1)*h;
%     end
    x=linspace(-1,1,n);
    y=g(x);
    xx=linspace(-1,1,30);
    
    Ln=Lag2(x,y,xx);
    % hold on;
    yy = g(xx);
    err=abs(Ln-g(xx));
    maxerr = [maxerr max(err)];
end
figure('color','w')
semilogy(1:nmax-3+1, maxerr, 'g'); axis tight;
 
%%%%%%% Чебышев
nmax=15;
max1err = [];
for n=3:1:nmax
    
    l=0:n-1;
    x1=cos((2*l+1)/n*0.5*pi);
 
    y1=g(x1);
    xx=linspace(-1,1,30);
    
    Ln=Lag2(x1, y1, xx);
    yy = g(xx);
    err=abs(Ln-g(xx));
    max1err=[max1err max(err)];
end
figure('color','w')
semilogy(1:nmax-3+1, max1err, 'g'); axis tight;
и Лагранж
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function L_n=Lag2(x,y,xx)
%x-массив координат узлов
%y-массив значений интерполируемой функции
N=length(x);
L_n = zeros(size(xx));
s=0;
for k=1:N
    P=ones(size(xx));
  for i=1:N
      if k~=i
          P=P.*(xx-x(i))./(x(k)-x(i));
      end
  end
    L_n = L_n + y(k)*P;
end
end
Добавлено через 20 минут
Цитата Сообщение от nhr Посмотреть сообщение
для интерполиционных узлов
круто! Сразу и не заметил
2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.02.2012, 15:45
Помогаю со студенческими работами здесь

Хосты и Узлы
Я начал изучать PHP по вот этой книге: "Котеров, Костарев - PHP 5". Вот в этом отрывке, из первой...

TreeView узлы
Здравствуйте, уже какой день не могу победить узлы в TreeView, есть 2 формы, на первой форме...

Деревья в си и их узлы
Как определить число узлов в дереве, у которых есть две дочери? Написал код с выводом дерева,...

Узлы Treeview
begin qrG.SQL.Text := 'select * from KODF where lvl = 2'; qrG.Open; while not...

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

Что такое узлы?
Что такое узлы в HTML5 и как добавлять и удалять узлы?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru