2014 dxdy logo

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

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




На страницу Пред.  1, 2
 
 Re: Перемножение 12 чисел это очень плохо?
Сообщение19.10.2017, 10:46 
alhimikoff в сообщении #1256095 писал(а):
Если всё занести под один корень (вместо квадрата 6 множителей квадрат частного 6/6) изменится ли что-нибудь принципиально в плане точности?

Легко видеть, что числитель делит подкоренное выражение в знаменателе, так что внести всё под один корень, полагаю, имеет смысл. Тогда исходное выражение несколько упростится и примет вид $$k=\sqrt{\frac{A^2b^2c^2+a^2B^2c^2+a^2b^2C^2}{a^2(Bz_0-Cy_0)^2+b^2(Cx_0-Az_0)^2+c^2(Ay_0-Bx_0)^2}}$$

 
 
 
 Re: Перемножение 12 чисел это очень плохо?
Сообщение19.10.2017, 11:31 
photon в сообщении #1256846 писал(а):
откуда вы взяли $10^{200}$ - там нет таких порядков (я понимаю, что это вы образно, но все же), и нет смысла рассуждать о вычислении отдельных множителей для выражения у которого нет множителей: в числителе сумма и в знаменателе корень из суммы.

ТС не сообщил какие конкретные значения могут принимать переменные, так их же потом еще и в квадраты возводят.

 
 
 
 Re: Перемножение 12 чисел это очень плохо?
Сообщение19.10.2017, 11:40 
Аватара пользователя
upgrade в сообщении #1256871 писал(а):
ТС не сообщил какие конкретные значения могут принимать переменные, так их же потом еще и в квадраты возводят.

alhimikoff в сообщении #1256095 писал(а):
Все числа порядка 1000-10000, используется тип double.

 
 
 
 Re: Перемножение 12 чисел это очень плохо?
Сообщение19.10.2017, 11:45 
Каюсь, не прав. Остается вторая часть поста о том, что возникают ошибки при не использовании двойной точности

 
 
 
 Re: Перемножение 12 чисел это очень плохо?
Сообщение19.10.2017, 11:54 
Аватара пользователя
Конкретно в данном случае погрешность определяется близостью к нулю разностей в знаменателе, а не последующим делением, поэтому с точки зрения точности принципиальной разницы нет, заносить или нет под корень; с точки зрения упрощения выражения, как показал, Sender, занести числитель под корень целесообразно.

 
 
 
 Re: Перемножение 12 чисел это очень плохо?
Сообщение19.10.2017, 12:03 
photon в сообщении #1256877 писал(а):
Конкретно в данном случае погрешность определяется близостью к нулю разностей в знаменателе

$10^{-200}$ ?

 
 
 
 Re: Перемножение 12 чисел это очень плохо?
Сообщение19.10.2017, 12:19 
Аватара пользователя
upgrade в сообщении #1256879 писал(а):
photon в сообщении #1256877 писал(а):
Конкретно в данном случае погрешность определяется близостью к нулю разностей в знаменателе

$10^{-200}$ ?

Нет. Если вычитаемое и уменьшаемое отличаются в знаках за пределами мантиссы double, то разность может оказаться нулевой. Мантисса double 52 бита, что обеспечивает точность 15-17 десятичных знаков. В исходном выражении при числах до $10^4$ отдельные слагаемые могут достигать $10^{20}$, то есть 3-5 знаков могут быть потеряны. В том виде, в котором записал Sender, точности double гарантированно хватает.

 
 
 [ Сообщений: 22 ]  На страницу Пред.  1, 2


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group