2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Точность вычислений при работе с комплексными числами
Сообщение23.05.2014, 10:13 


11/04/14
2
Привет! Сразу оговорюсь, осознаю, что, наверняка, тема поднималась не раз и решение проблемы прекрасно известно. Я его к сожалению не нашел, поэтому, если она где-то обсуждалась просто дайте ссылку, буду благодарен.

Суть вопроса:
Реализовал класс для работы с комплексными числами для использования в калькуляторе. При вычислении корней и возведении в степень вылезает мусор, например: sqrt(-1) = 6.12...e-17+i. Почему возникает проблема понятно, вопрос как с ней бороться (решение явно есть, многие научные калькуляторы с ней успешно справляются). Один из вариантов на поверхности: смотреть на аргумент числа, если он отличается от угла кратного pi/2 не более чем на дельту, то вместо него брать подправленный угол. Правда в этом случае будут отсеиваться случаи, когда сам пользователь ввел число с таким ублюдочным аргументом. Есть ли "канонический" подход к проблеме?

Заранее спасибо, надеюсь на советы и помощь :)

 Профиль  
                  
 
 Re: Точность вычислений при работе с комплексными числами
Сообщение23.05.2014, 10:34 
Заслуженный участник


09/05/12
25179
Пожалуй, только один - оставить как есть и ничего не трогать. Просто потому, что любая "коррекция" результата вносит в него дополнительные ошибки.

 Профиль  
                  
 
 Re: Точность вычислений при работе с комплексными числами
Сообщение23.05.2014, 10:41 


11/04/14
2
Полагаю есть разумные коррекции, которые не вносят существенных ошибок, мой калькулятор Casio каким-то образом данные ситуации отслеживает. Пользователей сильно напрягает этот мусор :-(

 Профиль  
                  
 
 Re: Точность вычислений при работе с комплексными числами
Сообщение23.05.2014, 12:02 
Заслуженный участник


09/05/12
25179
SGregory в сообщении #866860 писал(а):
Полагаю есть разумные коррекции, которые не вносят существенных ошибок, мой калькулятор Casio каким-то образом данные ситуации отслеживает. Пользователей сильно напрягает этот мусор
Т.е. если называть вещи своими именами, пользователи предпочитают видеть ответ с худшей точностью, но "красивый". Тогда просто округлять все до точности, на пару порядков хуже вычислительной, и все.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group