Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Делимся опытом Наступив на грабли - сообщи другим! Обмен опытом разработки и ремонта электронных устройств.

 
Опции темы

Новый метод расчёта arccos, cos, sin

Непрочитано 04.08.2013, 15:46  
eddy
Почётный гражданин KAZUS.RUN
 
Аватар для eddy
 
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,684
Сказал спасибо: 116
Сказали Спасибо 823 раз(а) в 597 сообщении(ях)
eddy на пути к лучшему
По умолчанию Re: Новый метод расчёта arccos, cos, sin

val_ka, все-таки, даже простая кубическая интерполяция сплайнами по сетке из 100 табличных значений даст уже точность выше 10¯⁷. И корень вычислять не надо.
Но, конечно, метод надо выбирать, исходя из задачи: если вам действительно хватит точности в полградуса, то нет смысла усложнять алгоритм. А если нужна точность в доли секунды, лучше использовать таблицы.

P.S. Проверил еще и с линейной интерполяцией. Получилась точность не хуже секунды. И это всего-то на 100 табличных значениях!
__________________
Если ты пользуешься Windows, то ты финансируешь мировой терроризм!
eddy вне форума  
Непрочитано 04.08.2013, 20:05  
lsa
Почётный гражданин KAZUS.RUN
 
Аватар для lsa
 
Регистрация: 22.06.2004
Адрес: Харьков
Сообщений: 1,479
Сказал спасибо: 3,193
Сказали Спасибо 2,982 раз(а) в 682 сообщении(ях)
lsa на пути к лучшему
По умолчанию Re: Новый метод расчёта arccos, cos, sin

Попробовал этот метод реализовать на микроконтроллере и получил такие результаты:
Микроконтроллер AVR Mega8 на частоте 20 МГц

1) Стандартная функция ACOS(x)
Размер 804 байта, время выполнения около 0,35мс (6800-7100 тактов).
Погрешность не хуже +-0,0004 градуса

2) Функция автора
Размер кода 654 байта, время выполнения около 0,20 мс (4000-4100 тактов)
Погрешность такая как и заявлено в первом топике.

Последний раз редактировалось lsa; 04.08.2013 в 20:13.
lsa вне форума  
Эти 3 пользователя(ей) сказали Спасибо lsa за это сообщение:
Godzilla82 (06.08.2013), Sanyo (06.08.2013), val_ka (05.08.2013)
Непрочитано 04.08.2013, 22:08  
eddy
Почётный гражданин KAZUS.RUN
 
Аватар для eddy
 
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,684
Сказал спасибо: 116
Сказали Спасибо 823 раз(а) в 597 сообщении(ях)
eddy на пути к лучшему
По умолчанию Re: Новый метод расчёта arccos, cos, sin

Сообщение от lsa Посмотреть сообщение
Стандартная функция ACOS(x)
Это где она стандартная? И с каких времен?
__________________
Если ты пользуешься Windows, то ты финансируешь мировой терроризм!
eddy вне форума  
Непрочитано 04.08.2013, 22:35  
Impartial
Прописка
 
Регистрация: 09.02.2011
Сообщений: 164
Сказал спасибо: 1
Сказали Спасибо 27 раз(а) в 22 сообщении(ях)
Impartial на пути к лучшему
По умолчанию Re: Новый метод расчёта arccos, cos, sin

Цитата:
Формулу же можно и преобразовать.

alpha^2= 1598,4cosx^2 - 9648cosx + 8049,6 ; (это для arccos(x)) ;
1598,4cosx^2 - 9648cosx + 8049,6 - alpha^2 = 0 ; (это для нахождения cos(x), один из корней после решения квадратного уравнения, при этом alpha какое-то чило ]0 ; 90[ );
В конце концов Ваши поиски закончатся нахождением аппроксимирующего полинома. Зачем там корень извлекать? Найдите методом наименьших квадрантов полином описывающий синус на участке 0-90. Ну или проще постройте график в экзеле и получите линию тренда с формулой.
Impartial вне форума  
Непрочитано 05.08.2013, 22:15  
val_ka
Вид на жительство
 
Регистрация: 15.07.2007
Адрес: Одесса
Сообщений: 425
Сказал спасибо: 71
Сказали Спасибо 125 раз(а) в 78 сообщении(ях)
val_ka на пути к лучшему
По умолчанию Re: Новый метод расчёта arccos, cos, sin

Сообщение от Impartial Посмотреть сообщение
В конце концов Ваши поиски закончатся нахождением аппроксимирующего полинома. Зачем там корень извлекать?
Да поиски уже (у меня) закончились два года назад (ушло на это три дня, точнее 15 часов). Зачем корень извлекать? - ну так вот я его вывел - метод этот.
(или Вы всё ещё думаете, что в математике есть хоть какие-то точные формулы?)

ps: когда-то в школе (лет 35 назад), когда мы считали по таблицам Брадиса и логарифмическим линейкам, я спросил нашу классную, математичку:
- ... а есть другой какой-то метод?
- В институте будет изучать метод Тейлора, но он очень сложный...
- А другой какой-то есть?
- Нет!
- Я найду...
- Да, найдёшь ты...
- Я найду!

Вообщем, я (по отношению к ней) своё обещание выполнил.
__________________
И если б не было Одессы, шоб я делал?!

Последний раз редактировалось val_ka; 05.08.2013 в 22:20. Причина: ps:
val_ka вне форума  
Сказали "Спасибо" val_ka
lsa (05.08.2013)
Непрочитано 05.08.2013, 23:06  
eddy
Почётный гражданин KAZUS.RUN
 
Аватар для eddy
 
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,684
Сказал спасибо: 116
Сказали Спасибо 823 раз(а) в 597 сообщении(ях)
eddy на пути к лучшему
По умолчанию Re: Новый метод расчёта arccos, cos, sin

Сообщение от val_ka Посмотреть сообщение
я (по отношению к ней) своё обещание выполнил.
Батенька, дык, можно было бы вообще параболой синус аппроксимировать. "Выполнить" обещание…
// я считаю, что точность ниже секунды недопустима. А вообще, в моих задачах точность должна быть как минимум 0.1''!!!
__________________
Если ты пользуешься Windows, то ты финансируешь мировой терроризм!
eddy вне форума  
Непрочитано 05.08.2013, 23:56  
lsa
Почётный гражданин KAZUS.RUN
 
Аватар для lsa
 
Регистрация: 22.06.2004
Адрес: Харьков
Сообщений: 1,479
Сказал спасибо: 3,193
Сказали Спасибо 2,982 раз(а) в 682 сообщении(ях)
lsa на пути к лучшему
По умолчанию Re: Новый метод расчёта arccos, cos, sin

Сообщение от eddy Посмотреть сообщение
в моих задачах точность должна быть
Вот Протоны в небе на 180 градусов разворачиваются и ничего. Война все спишет.
А вы доли градуса считаете.
Вообще автор темы и не обещал полной замены обычным методам. Это просто еще один способ получить результат.
Это как если бы во время ядерной войны сгорели все компьютеры/калькуляторы и таблицы Брадиса и нужно найти угол возвышения ствола гаубицы для выстрела. Так вот зная этот метод артиллерист на пальцах сможет вычислить простыми арифметическими действиями этот угол.
lsa вне форума  
Непрочитано 06.08.2013, 11:31  
tempora
Почётный гражданин KAZUS.RUN
 
Регистрация: 10.01.2007
Сообщений: 3,411
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Новый метод расчёта arccos, cos, sin

Сообщение от lsa Посмотреть сообщение
если бы во время ядерной войны сгорели все компьютеры/калькуляторы и таблицы Брадиса ... зная этот метод артиллерист на пальцах сможет вычислить простыми арифметическими действиями
Пока он сумеет выполнить
Сообщение от lsa Посмотреть сообщение
4000-4100
простых арифметических действий, ему настучат дубинами по кумполу не только чужие, на даже свои - так они ждать заманаются.
__________________
There's always more than one way to skin a cat.
tempora вне форума  
Непрочитано 06.08.2013, 14:47  
vspvsp
Вид на жительство
 
Аватар для vspvsp
 
Регистрация: 30.10.2007
Адрес: Ростов-на-Дону
Сообщений: 281
Сказал спасибо: 19
Сказали Спасибо 39 раз(а) в 33 сообщении(ях)
vspvsp на пути к лучшему
По умолчанию Re: Новый метод расчёта arccos, cos, sin.

Сообщение от val_ka Посмотреть сообщение
И ещё. Просто как пример.
Смотрите, вот описание видеосигнала у Гуни:
http://pic16f84.narod.ru/item_video.htm


Эта формула будет считать гораздо быстрее, и частота, следовательно, может быть гораздо меньше.
А вот у этого автора всё нормально на атмеге 88 с цветным сигналом (правда тут фазой играют), но:
Видео:


Ну а тут и синусы и что попало успевает вычислять но RGB:
Видео:


Исходник приложены!

(и оно ещё петь успевает)

Последний раз редактировалось vspvsp; 06.08.2013 в 14:55.
vspvsp вне форума  
Непрочитано 06.08.2013, 15:10  
eddy
Почётный гражданин KAZUS.RUN
 
Аватар для eddy
 
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,684
Сказал спасибо: 116
Сказали Спасибо 823 раз(а) в 597 сообщении(ях)
eddy на пути к лучшему
По умолчанию Re: Новый метод расчёта arccos, cos, sin

Сообщение от vspvsp Посмотреть сообщение
А вот у этого автора всё нормально на атмеге 88 с цветным сигналом
Текстовый же режим, да еще и 8-битный цвет. Халява-с! ☺
__________________
Если ты пользуешься Windows, то ты финансируешь мировой терроризм!
eddy вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 12:39.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.