Делимся опытом Наступив на грабли - сообщи другим! Обмен опытом разработки и ремонта электронных устройств. |
06.08.2013, 23:26
|
#51
|
Вид на жительство
Регистрация: 15.07.2007
Адрес: Одесса
Сообщений: 434
Сказал спасибо: 71
Сказали Спасибо 125 раз(а) в 78 сообщении(ях)
|
Re: Новый метод расчёта arccos, cos, sin
Сообщение от eddy
|
конечно, метод надо выбирать, исходя из задачи: если вам действительно хватит точности в полградуса, то нет смысла усложнять алгоритм.
|
Вообщем-то изначально формула выводилась не для контроллеров, а для упрощённого ручного вычисления, когда под рукой ничего нет, кроме ручки и тетрадки. (как хорошо подметил Isa - даже на случай войны (для артиллеристов). )
Контроллеры - это была уже вторая идея, просто для проверки.
Большое спасибо всем за проделанную работу со сравнительной оценкой этой формулы.
__________________
И если б не было Одессы, шоб я делал?!
|
|
|
|
07.08.2013, 09:56
|
#52
|
Вид на жительство
Регистрация: 07.01.2007
Адрес: Ленинградская обл
Сообщений: 428
Сказал спасибо: 147
Сказали Спасибо 71 раз(а) в 56 сообщении(ях)
|
Re: Новый метод расчёта arccos, cos, sin
самый быстрый проверенный метод - по таблице
В т ч готовые произведения чисел, не так их и много...
|
|
|
|
07.08.2013, 11:16
|
#53
|
Гражданин KAZUS.RU
Регистрация: 16.06.2005
Сообщений: 945
Сказал спасибо: 25
Сказали Спасибо 175 раз(а) в 124 сообщении(ях)
|
Re: Новый метод расчёта arccos, cos, sin
Сообщение от val_ka
|
Нет, этого метода не было.
|
Ню-ню. Читаем:
Метод впервые был описан в применении к вычислению тригонометрических функций и операций преобразования координат Джеком Волдером в 1956 году, затем в 1959 году. В 1956 году Акушский и Юдицкий выдвинули аналогичную идею для вычисления показательных и логарифмических функций.
|
|
|
|
07.08.2013, 11:23
|
#54
|
Гражданин KAZUS.RU
Регистрация: 16.06.2005
Сообщений: 945
Сказал спасибо: 25
Сказали Спасибо 175 раз(а) в 124 сообщении(ях)
|
Re: Новый метод расчёта arccos, cos, sin
В советской литературе метод CORDIC известен как "Цифра за цифрой", потому что один проход давал одну цифру. Т.е. достижение точности в 9 знаков требовало 9 проходов, причём из операций только сложения и сдвиги, что очень способствует скорости вычислений.
|
|
|
|
07.08.2013, 12:37
|
#55
|
Прописка
Регистрация: 11.03.2008
Сообщений: 142
Сказал спасибо: 2
Сказали Спасибо 19 раз(а) в 13 сообщении(ях)
|
Re: Новый метод расчёта arccos, cos, sin
ТС говорит об уникальности своего алгоритма, а не о CORDIC.
Для ТС:
Ошибка не центрирована, лучшие результаты (макс. err = 0.23 град) при
0.55965 и 0.11478.
Алгоритм представляет чисто спортивно-познавательный интерес, применимость в МКУ сомнительна.
|
|
|
|
07.08.2013, 14:35
|
#56
|
Прописка
Регистрация: 11.03.2008
Сообщений: 142
Сказал спасибо: 2
Сказали Спасибо 19 раз(а) в 13 сообщении(ях)
|
Re: Новый метод расчёта arccos, cos, sin
Сообщение от Someone
|
Впотому что один проход давал одну цифру. Т.е. достижение точности в 9 знаков требовало 9 проходов,
|
Это не так, в отношении десятичных разрядов.
За один цикл вычисляется один разряд двоичного числа,
т.е. для получения 9-разрядного двоичного числа требуется примерно 9 циклов.
К примеру, если рассматривать вычисление угла 90 град, то приближение к нему будет происходить как:
57
84
98
91
...
т.е. только на третьем цикле возникает верный первый десятичный разряд (в данном примере).
|
|
|
|
07.08.2013, 16:37
|
#57
|
Гражданин KAZUS.RU
Регистрация: 16.06.2005
Сообщений: 945
Сказал спасибо: 25
Сказали Спасибо 175 раз(а) в 124 сообщении(ях)
|
Re: Новый метод расчёта arccos, cos, sin
Сообщение от Jeer
|
ТС говорит об уникальности своего алгоритма, а не о CORDIC.
|
Ну дык я-то про кордик. Просто алгоритм тс проигрывает кордику и по скорости о по точности.
|
|
|
|
07.08.2013, 16:43
|
#58
|
Гражданин KAZUS.RU
Регистрация: 16.06.2005
Сообщений: 945
Сказал спасибо: 25
Сказали Спасибо 175 раз(а) в 124 сообщении(ях)
|
Re: Новый метод расчёта arccos, cos, sin
Сообщение от Jeer
|
Это не так, в отношении десятичных разрядов.
|
Так что мешает преобразовать число в соответствующий вид и всю математику делать с фиксированной двоичной точкой? Тогда в десятичный вид результат надо будет преобразовывать только при выводе, что уже не относится к вычислениям. Вообще поищите книги Байкова конца 70х - начала 80х по организации вычислений на ЭВМ и по аппаратной реализации модулей вычислителей. Там всё подробно рассказывается, даны примеры.
|
|
|
|
07.08.2013, 17:14
|
#59
|
Прописка
Регистрация: 29.08.2007
Адрес: Рязань
Сообщений: 203
Сказал спасибо: 54
Сказали Спасибо 19 раз(а) в 16 сообщении(ях)
|
Re: Новый метод расчёта arccos, cos, sin
Сообщение от Someone
|
В советской литературе метод CORDIC известен как "Цифра за цифрой"
|
Извините за глупый вопрос - это не тоже самое, что метод последовательного приближения в АЦП?
|
|
|
|
07.08.2013, 18:27
|
#60
|
Прописка
Регистрация: 11.03.2008
Сообщений: 142
Сказал спасибо: 2
Сказали Спасибо 19 раз(а) в 13 сообщении(ях)
|
Re: Новый метод расчёта arccos, cos, sin
Сообщение от Someone
|
Так что мешает преобразовать число в соответствующий вид и всю математику делать с фиксированной двоичной точкой? Тогда в десятичный вид результат надо будет преобразовывать только при выводе, что уже не относится к вычислениям. Вообще поищите книги Байкова конца 70х - начала 80х по организации вычислений на ЭВМ и по аппаратной реализации модулей вычислителей. Там всё подробно рассказывается, даны примеры.
|
Извините, мне это рассказывать не надо - в далеких 70-х, когда еще не было микропроцессоров у нас, я делал такие вычислители на рассыпухе 133 серии. Потом и на 580-й серии.
Заметку я вам сделал из-за неточности вашей терминологии.
Не дают эти алгоритмы на каждом цикле нового точного десятичного разряда.
Разве, что сделать арифметику платформы десятичной
Последний раз редактировалось Jeer; 07.08.2013 в 18:31.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 02:01.
|
|