|
|
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Добрый день! Пишу небольшой 3d-конструктор на OpenGL(компилятор VC6.0 и MFC). Все вычисления производятся во float и при этом неибежна потеря данных, связанная с неточностями в арифметике(потеря значимости и т.п.) у типов с плавающей точкой. Помогите разобраться в этом достаточно серьезном вопросе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2005, 13:25 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Хитрый МухПишу небольшой 3d-конструктор на OpenGL(компилятор VC6.0 и MFC). Все вычисления производятся во float и при этом неибежна потеря данных, связанная с неточностями в арифметике... Может я что то не понимаю, но порядок округления получаемых значений - мало зависит от языка. Тут больше логика и понимания проблем погрешности вычислений. Другими словами - у Вас проблема не с языком. У Вас проблема с математикой... с уважением (круглый) ЗЫ Возможно и этот вопрос мона решить - но тут нужно иметь сам код. Т.е. те телодвижения которые делаете Вы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2005, 14:24 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Хитрый МухДобрый день! Пишу небольшой 3d-конструктор на OpenGL(компилятор VC6.0 и MFC). Все вычисления производятся во float и при этом неибежна потеря данных, связанная с неточностями в арифметике(потеря значимости и т.п.) у типов с плавающей точкой. Помогите разобраться в этом достаточно серьезном вопросе. В чем проявляется потеря данных ? То есть как вы это заметили и почему полагаете, что виноваты вычисления во float? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2005, 15:03 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Проблема -то в чем ? Не ясно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2005, 00:19 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Тогда надо использовать double. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2005, 07:33 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Есть довольно популярная задачка. Дано: окружность и точка, которая по ней двигается по известному закону. Требуется реализовать анимацию движения этой точки для заданных интервалов времени dt. Студент диффереци- рует уравнение зависимости x,y от времени и получает уравнение движения. И .... точка начинает двигатся ПО СПИРАЛИ (!). Студент впадает в кому. Это я к тому рассказываю, что если чего-то не ладится с вычислениями, стоит обратить внимание на саму модель вычислений. И в данном примере дело было вовсе не в разрядности а в понимании самой постановки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2005, 09:23 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Спасибо всем кто ответил! Извините за задержку - инет кончился))) В общем, приведу небольшой пример: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2005, 12:41 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Хитрый МухСпасибо всем кто ответил! Извините за задержку - инет кончился))) В общем, приведу небольшой пример: Код: plaintext 1. 2. 3. 4. А чего вы ожидали? Именно поэтому такие действия в машинных вычислениях являются почти что запрещенными (естественно для тех кто хочет получить нормальный результат)))). При неосторожном делении вы теряете точность, а при умножении получаете паразитные значения. И поэтому никогда не следует их совмещать. В общем можно руководствоваться принципом -- с каждым значением выполнять по возможности "опасных" минимум операций. Кстати, суммирование ряда величин следует вести с наименьших. А собственно точные принципы разъясняются в любой книге по вычислительной математике. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2005, 17:43 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Потеря значений - общая проблема ВСЕХ технологий основанных на цифровых методах обработки информации. Вот точность можно повышать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2005, 21:01 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
SarinПотеря значений - общая проблема ВСЕХ технологий основанных на цифровых методах обработки информации. Вот точность можно повышать. Вот никак не пойму, откуда такой термин-то выкопал ты -- потеря значений? Это вы типа переменные теряете?))) Или имеешь в виду то, что происходит при дискретизации аналогового сигнала в устройствах типа АЦП? В данном случае обсуждается только потеря ТОЧНОСТИ. Разрядную сетку под мантиссу числа можно увеличивать бесконечно, но элементарные неграмотные операции приведут обратно все к тому же числовому мусору. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2005, 11:14 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Здесь пишут про subj http://cch.loria.fr/documentation/IEEE754 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2005, 11:45 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Термин называется "потеря значимости". Возникает при сложении двух чисел, одно из которых большое, другое маленькое. Для сложения на сумматоре числа должны быть приведены из нормализованного состояния к одному порядку. Это достигается за счет сдвига мантиссы меньшего числа вправо на какое-то число разрядов, чтобы сравнять порядки. При больших разницах порядка младшие знаковые разряды меньшего числа спадают с разрядной сетки и не участвуют в сложении, меньшее число вообще даже может превратиться в ноль. Таким образом, что прибавляешь это число, что нет - результат не меняется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2005, 21:51 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
LelikkА собственно точные принципы разъясняются в любой книге по вычислительной математике. Не подскажите ли какую-нибудь электронную книгу/документацию по вычмату? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2005, 07:19 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Любой учебник для вузов по выч. технике. Например, http://www.ozon.ru/context/detail/id/1713413 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2005, 13:17 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
MasterZivЛюбой учебник для вузов по выч. технике. Например, http://www.ozon.ru/context/detail/id/1713413 Мимо!! Дискетна математика не имеет никакого отношения к вычислительной и проблемами точности вычислений не занимается! А к тому же эта книжка не очень удачная, особенно по стилю изложения материала. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2005, 17:42 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Для теоретического изучению я бы порекомендовал: Бахвалов, Жидков "Численные методы". И Cамарский, Гулин "Численные методы" ________________________________________________________ Глюк - это высокоорганизованная система не поддающихся определению частиц ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2005, 17:45 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Может быть я Новиковых перепутал ? Что ж их так много что ли ? Блин, этот из политеха, а мне из ЛИТМО был нужен ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2005, 22:30 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
В принципе, я уже разобрался почему возникают погрешности вычислений! Но, блин, может быть существуют уже готовые решения в виде, скажем, библиотек для точных вычислений? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2005, 14:15 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Есть например gmt. www.gnu.org ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.09.2005, 20:37 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
LelikkДля теоретического изучению я бы порекомендовал: Бахвалов, Жидков "Численные методы". И Cамарский, Гулин "Численные методы" ________________________________________________________ Глюк - это высокоорганизованная система не поддающихся определению частиц Любая книга с фамилией Самарский представляет собой качественное изложение материала по вычислительной математике ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 09:14 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
MasterZivЕсть например gmt. www.gnu.org А сейчас этот совет актуален ? PS Хочу хотя бы одну программу численного решения ДУ написать не на Maple. Зря что-ли мне так Си нравится :) Заодно сравню по вопросу скорости, но думаю на Си будет медленнее. Будет здорово если ошибаюсь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 09:17 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
SS Любая книга с фамилией Самарский представляет собой качественное изложение материала по вычислительной математике Да что там качественное. Это мелочи. Это один из величайших математиков России, провёл ряд фундаментальных исследований в области теории численных методов, разностных схем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 09:30 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
SarinПотеря значений - общая проблема ВСЕХ технологий основанных на цифровых методах обработки информации. Вот точность можно повышать. Так уж и всех? Квантор требует осторожности в использовании... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 10:43 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
SashaMercury, ну ты некромансер блин. Поднял материал 10-летней давности. Автор уже давно решил это проблему или завязал с кодинком и пошёл в торговлю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 12:30 |
|
||
|
Точная арифметика.
|
|||
|---|---|---|---|
|
#18+
Раз уж подняли некротопик, пусть будет What Every Computer Scientist Should Know About Floating-Point Arithmetic ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2015, 13:07 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39031279&tid=2018873]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
172ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 450ms |

| 0 / 0 |
