0 / 0 / 0
Регистрация: 16.02.2012
Сообщений: 51
|
|||||||||||
1 | |||||||||||
Неточности вычислений05.04.2012, 12:21. Показов 1906. Ответов 4
Метки нет (Все метки)
Ситуация такова, что начал замечать что в некоторых расчетах, в которых должен получаться аккуратно ноль, вместо нуля возникает малое но ненулевое значение порядка 10-13—10-16.
С чем это связано, это мой косяк или особенности пайтоновских вычислений?Как с этим бороться?(Занимаюсь такого рода расчетами что такие величины могут играть роль). Для примера привожу код, в котором заметил такое:
15 -3 8 12 2 5 -2 21 -5 16 2 2 Получаем результат вида:
Python 2.7.2, если что.
0
|
05.04.2012, 12:21 | |
Ответы с готовыми решениями:
4
Неточности в коде,что не так? Распараллеливание вычислений Результаты вычислений точность вычислений |
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
05.04.2012, 15:45 | 2 |
you_fail_me, это не проблема питона, это особенность представления чисел с плавающей точкой в компьютере (вкратце — произвольное вещественное число невозможно абсолютно точно отобразить в данном представлении). Так что можешь смело считать такие числа за ноль.
1
|
0 / 0 / 0
Регистрация: 16.02.2012
Сообщений: 51
|
|
05.04.2012, 15:55 [ТС] | 3 |
А можно какуюто ссылку на подробное изложение данного нюанса? Каков «нулевой порог»?
0
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
05.04.2012, 15:56 | 4 |
Можно начать отсюда: http://ru.wikipedia.org/wiki/Ч... ей_запятой
0
|
0 / 0 / 0
Регистрация: 16.02.2012
Сообщений: 51
|
||||||||||||||||
07.04.2012, 21:37 [ТС] | 5 | |||||||||||||||
Прошу прощения, т.к. это наверное будет полуоффтоп, но хочу задать вопрос, а ради него както не очень хочется создавать еще одну тему — дописывал код, приведенный в начале темы, как я уже и говорил он приводит матрицу к диагональному виду, хотел дописать его до состояния решения матрицы методом Гаусса, для этого, как известно, после сведения к диагональному виду необходимо всего лишь разделить все элементы каждой строки на единственный ее ненулевой элемент, не являющийся свободным членом, и после этого собственно столбец свободных членов будет являться столбцов искомых неизвестных. Попытался написать это так:
Добавлено через 18 минут Понимаю, что можно сделать проще и чтоб работало, например, так:
0
|
07.04.2012, 21:37 | |
07.04.2012, 21:37 | |
Помогаю со студенческими работами здесь
5
Ускорение вычислений на Python Ошибка приоритета вычислений Программа должна отображать ход вычислений, допускать приостановку и прерывания вычислений Реализация в среде вычислений прямого алгоритма вычислений Неточности в вычислениях Неточности с делением Исправить неточности в методе Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |