реклама на сайте
подробности

 
 
11 страниц V  « < 9 10 11  
Reply to this topicStart new topic
> Придумал алгоритм интерполяции. Протестируем результаты?, вызов от дилетанта
_Ivana
сообщение Nov 8 2013, 21:02
Сообщение #151


Местный
***

Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710



А выложите вашу реализацию, если вам не трудно, интересно посмотреть. Хоть в мой матлабовский код впишите третьим вариантом. Я вывел свой вышепредставленный алгоритм из другой математической модели, нежели стандартная постановка задачи построения полинома по 4 точкам.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Nov 9 2013, 08:03
Сообщение #152


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(_Ivana @ Nov 8 2013, 23:02) *
А выложите вашу реализацию, если вам не трудно, интересно посмотреть. Хоть в мой матлабовский код впишите третьим вариантом. Я вывел свой вышепредставленный алгоритм из другой математической модели, нежели стандартная постановка задачи построения полинома по 4 точкам.

Я когда то его уже выкладывал.Переделывать на скрипт нет желания,берите уж какой есть.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
_Ivana
сообщение Nov 9 2013, 13:21
Сообщение #153


Местный
***

Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710



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

CODE
clf reset
N = 10; x = 1:N; y = rand(1, N); h = 0.01; d = 0;
plot(x, y, 'or', 'LineWidth', 2); hold on; grid on; axis on;
title(['Локальная интерполяция случайного набора точек', ...
' полиномом Лагранжа 3 степени, 2 алгоритма расчета.']);
plot(x(1), y(1), 'b-', x(1), y(1), 'g:');
legend('точки', 'мой алгоритм', 'Фарроу по Anatoliy');
for k = 1:(N-2)
% мой алгоритм: 1 умножение, 1 сдвиг, 6 сложений
c = d; e = y(k+1) - y(k); d = y(k+2) - y(k+1) - e;
b2 = c/2; b3 = (d - c)/6; b1 = e - b2 - b3;

if (k == 1) continue; end
t = 0:h:1; f = b3.*t.^3 + b2.*t.^2 + b1.*t + y(k);
plot(t+x(k), f, 'b-')

% Фарроу по _Anatoliy: 1 умножение, 2 сдвига, 6 сложений
p = y(k) - y(k+1); q = (y(k+2) - y(k))/2;
a3 = ( (y(k+2) - y(k-1))/3 + p )/2;
a2 = p + q; a1 = q - a3;

t = -1:h:0; f = a3.*t.^3 + a2.*t.^2 + a1.*t + y(k+1);
plot(t+1+x(k), f, 'g:')
end
Go to the top of the page
 
+Quote Post
_Ivana
сообщение May 17 2014, 10:57
Сообщение #154


Местный
***

Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710



Цитата(_Anatoliy @ Nov 8 2013, 18:16) *
Ага,у меня тоже меньше 6-ти сложений не получилось,видимо предел.
Оказывается, не предел ) На досуге подумал, получил 5 сложений, 1 умножение и 1 сдвиг.
CODE
clf reset
N = 10; x = 1:N; y = rand(1, N);
h = 0.01; g = y(3) - y(2); d = g - y(2) + y(1);
plot(x, y, 'or', 'LineWidth', 2); hold on; grid on; axis on;
title(['Локальная интерполяция случайного набора точек', ...
' полиномом Лагранжа 3 степени, 2 алгоритма расчета.']);
plot(x(1), y(1), 'b-', x(1), y(1), 'g:');
legend('точки', 'мой алгоритм', 'Фарроу по Anatoliy');
for k = 2:(N-2)
% мой алгоритм: 1 умножение, 1 сдвиг, 5 сложений
c = d; e = g; g = y(k+2) - y(k+1); d = g - e;
b2 = c/2; b3 = (d - c)/6; b1 = e - b2 - b3;
t = 0:h:1; f = b3.*t.^3 + b2.*t.^2 + b1.*t + y(k);
plot(t+x(k), f, 'b-')

% Фарроу по _Anatoliy: 1 умножение, 2 сдвига, 6 сложений
p = y(k) - y(k+1); q = (y(k+2) - y(k))/2;
a3 = ( (y(k+2) - y(k-1))/3 + p )/2;
a2 = p + q; a1 = q - a3;

t = -1:h:0; f = a3.*t.^3 + a2.*t.^2 + a1.*t + y(k+1);
plot(t+1+x(k), f, 'g:')
end

Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение May 18 2014, 10:42
Сообщение #155


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(_Ivana @ May 17 2014, 18:07) *
Оказывается, не предел ) На досуге подумал, получил 5 сложений, 1 умножение и 1 сдвиг.

Только для чего всё это? Я,например,не собирался реализовывать свой вариант в FPGA,баловство это.Делал просто чтоб молодость вспомнить.
Go to the top of the page
 
+Quote Post
_Ivana
сообщение May 18 2014, 11:01
Сообщение #156


Местный
***

Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710



Ну как, спорт, например )... Или вы к тому, чтобы я занялся делом, а не выводил пяти...пых обезьян, как герой мультфильма Саус Парк? На сайте Бахурина лежит "оптимизированный алгоритм", вы его еще оптимизировали на 2 сложения, я на 3 сложения и сдвиг... И никому не интересны эти результаты?
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение May 18 2014, 12:51
Сообщение #157


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(_Ivana @ May 18 2014, 18:11) *
Ну как, спорт, например )... Или вы к тому, чтобы я занялся делом, а не выводил пяти...пых обезьян, как герой мультфильма Саус Парк?

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

Цитата(_Ivana @ May 18 2014, 18:11) *
И никому не интересны эти результаты?

А насчёт результатов не торопитесь,пусть народ посмотрит.
Go to the top of the page
 
+Quote Post
_Ivana
сообщение May 18 2014, 13:27
Сообщение #158


Местный
***

Группа: Свой
Сообщений: 352
Регистрация: 13-08-11
Из: Воронеж
Пользователь №: 66 710



Спасибо вам, _Anatoliy, искренне. За представленную ранее собственную оптимизацию, за высланную давно статью, за честность ваших оценок и за приятное общение. Независимо от мнений "посмотревшего народа" или их отсутствия.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение May 19 2014, 01:39
Сообщение #159


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(_Ivana @ May 18 2014, 20:37) *
Спасибо вам, _Anatoliy, искренне. За представленную ранее собственную оптимизацию, за высланную давно статью, за честность ваших оценок и за приятное общение. Независимо от мнений "посмотревшего народа" или их отсутствия.

Да не за что.Всегда пожалуйста.
Go to the top of the page
 
+Quote Post
Krys
сообщение Apr 14 2015, 09:05
Сообщение #160


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Топикстартер, выложите, пожалуйста, Вашу статью ещё раз. По той ссылке уже не забрать. Может, её просто прикрепить к сообщению на форуме?


--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post
ViKo
сообщение May 13 2016, 06:43
Сообщение #161


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Наткнулся на статью нашего ... топикстартера. rolleyes.gif
https://habrahabr.ru/post/282441/
Go to the top of the page
 
+Quote Post

11 страниц V  « < 9 10 11
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st June 2025 - 14:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01468 секунд с 7
ELECTRONIX ©2004-2016