Окольные пути вычислительной математики

20 views
Skip to first unread message

Leo B.

unread,
Nov 17, 2021, 2:14:57 PM11/17/21
to БЭСМ-6
У меня дошли руки выдрать из ДИСП80 алгоритм вычисления квадратного корня, записать его в понятном для всех виде, и спросить,  откуда ноги растут у коэффициентов, взятых из "Computer Approximations" by Hart et al., NY,. 1968.

Вкратце, берём мантиссу аргумента, считаем −0.204405847M^2+0.890194099M+0.313567057, вставляем полученному числу половинный порядок аргумента, домножаем на sqrt(2), если он был нечётный, и делаем две итерации Ньютона y = (x/y + y)/2 

Зачем-то там полином считается с включённым округлением, а итерации - с выключенным, это осталось непонятным.

(Кстати говоря, в Диспаке последовательность команд на пару считываний/записей короче, чем в ОС Дубна). 

Оказалось, что квадратичный полином получен не подгонкой по точкам, а с помощью алгоритма имени Евгения Яковлевича Ремеза. Вот надо же было лезть в американскую книжку за результатами применения отечественного алгоритма!

Leo

Sergey Ryzhkov

unread,
Nov 17, 2021, 3:03:53 PM11/17/21
to be...@googlegroups.com
А в чем алгоритм то?

ср, 17 нояб. 2021 г., 22:14 Leo B. <leo...@gmail.com>:
--
Данное сообщение отправлено Вам, как участнику группы "БЭСМ-6":
http://groups.google.com/group/besm6/topics
---
Вы получили это сообщение, поскольку подписаны на группу "БЭСМ-6".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес besm6+un...@googlegroups.com.
Чтобы посмотреть обсуждение на веб-странице, перейдите по ссылке https://groups.google.com/d/msgid/besm6/2c49d1b3-6f9e-4f3b-a2fb-75d613f79baen%40googlegroups.com.

Leo B.

unread,
Nov 17, 2021, 3:21:18 PM11/17/21
to БЭСМ-6
https://ru.wikipedia.org/wiki/Алгоритм_Ремеза

Макаров-Землянский Николай

unread,
Nov 17, 2021, 11:34:37 PM11/17/21
to be...@googlegroups.com
Все эти Э/К взяты из Д-68. Таким образом - Л.Н.Королев и А.Н.Томилин. Там еще присутствуют две симпатичные программули - перевод 2-->10 и 10-->2. Как-то Толя Гуляев определил ("вычислил") одну из констант.
 
17.11.2021, 22:15, "Leo B." <leo...@gmail.com>:
--

Leo B.

unread,
Nov 18, 2021, 1:32:11 AM11/18/21
to БЭСМ-6

Разумеется, первоначально реализации элементарных функций были какие-то свои. 

В ОС "Дубна" их сделали по книжке "Computer Approximations" , о чём там прямо и написано в комментариях, с указанием номеров таблиц. (Возможно, потому что иначе ЦЕРНовские алгоритмы не сходились?) Потом, естественно, для совместимости дубнинские реализации экстракодов были скопированы в Диспак (константы совпадают).

Leo

Michael Yaroslavtsev

unread,
Nov 18, 2021, 6:19:35 PM11/18/21
to be...@googlegroups.com
Переносом всего этого добра на Эльбрус-Б (64 разряда) занималась Нина Шолохович - я помню, на её столе были умные книжки про это.
Так что она должна что-нибудь про это помнить.
Но где её теперь найдёшь (Гугл не знает)?

Чтобы посмотреть обсуждение на веб-странице, перейдите по ссылке https://groups.google.com/d/msgid/besm6/53a8e02d-768b-4f3c-8e8f-48ba2d531002n%40googlegroups.com.


--
Thanks,
-- Michael

Leo B.

unread,
Nov 18, 2021, 9:24:58 PM11/18/21
to БЭСМ-6
По крайней мере в ДВС перенос заключался в реализации экстракодов элементарных функций для режима совместимости.

Значения констант и алгоритмы остались те же, изменились лишь некоторые команды.

Leo

Michael Yaroslavtsev

unread,
Nov 19, 2021, 1:09:58 AM11/19/21
to be...@googlegroups.com
On Thu, Nov 18, 2021 at 6:25 PM Leo B. <leo...@gmail.com> wrote:
По крайней мере в ДВС перенос заключался в реализации экстракодов элементарных функций для режима совместимости.
Она непосредственно у Тюрина служила, так что речь о 64-разрядном ДИСПАКе Э-Б.
Чтобы посмотреть обсуждение на веб-странице, перейдите по ссылке https://groups.google.com/d/msgid/besm6/9ff04b0a-bb45-4e0e-8a29-e36a0c8c0bb0n%40googlegroups.com.


--
Thanks,
-- Michael

Mikhail Popov

unread,
Nov 25, 2021, 1:45:45 AM11/25/21
to be...@googlegroups.com
Разумеется, первоначально реализации элементарных функций были какие-то свои.

Да, помним, помним, ходили люди со своими вариантами функций ц колодами перфокарт в машинных кодах, без дураков, потому что варианты библиотеки считались полным дерьмом.
(библиотечные программы, с их точки зрения, неэффективно использовали машинные ресурсы), куда же нам деваться с нынешними гигабайтами памяти куда?


On Wed, Nov 17, 2021 at 10:32 PM Leo B. <leo...@gmail.com> wrote:
Чтобы посмотреть обсуждение на веб-странице, перейдите по ссылке https://groups.google.com/d/msgid/besm6/53a8e02d-768b-4f3c-8e8f-48ba2d531002n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages