Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Численный Рецепты является общим названием серии книг по алгоритмам и численному анализу с помощью William H. Press , Saul А. Teukolsky , Уильям T Веттерлинг и Брайана П. Flannery . В различных изданиях книги печатаются с 1986 года. Самое последнее издание было опубликовано в 2007 году. В 2015 году компания Numerical Recipes продала свое историческое двухбуквенное доменное имя nr.com [1] иnumerical.recipesвместо этогостала.

Обзор [ править ]

В Численный Рецепты книги охватывают широкий круг вопросов , которые включают в себя как классические , численный анализ ( интерполяции , интегрирования , линейная алгебра , дифференциальные уравнения , и так далее), обработка сигналов ( методы Фурье , фильтрация ), статистическую обработку данных, а также несколько тем , в машинное обучение ( скрытая марковская модель , опорные векторные машины). Стиль письма доступен и имеет неформальный тон. Акцент делается на понимании основных основ методов, а не на уточнениях, которые могут потребоваться на практике для достижения оптимальной производительности и надежности. Немногие результаты доказываются с какой-либо степенью строгости, хотя идеи, лежащие в основе доказательств, часто набрасываются, и даются ссылки. Важно отметить, что практически все обсуждаемые методы также реализованы на языке программирования с кодом, напечатанным в книге. Каждая версия привязана к определенному языку.

По словам издателя Cambridge University Press , книги « Численные рецепты» исторически являются самыми продаваемыми книгами по методам научного программирования. В последние годы книги « Численные рецепты» цитировались в научной литературе более 3000 раз в год, согласно ISI Web of Knowledge (например, 3962 раза в 2008 году). [2] По состоянию на конец 2017 года в Google Scholar было цитировано более 44 000 ссылок на книгу . [3]

История [ править ]

Первая публикация вышла в 1986 году под названием «Числовые рецепты, искусство научных вычислений» и содержала код как на Фортране, так и на Паскале; сопроводительная книга «Книга примеров численных рецептов (Паскаль)» была впервые опубликована в 1985 году. (В предисловии к «Примеры» упоминается, что основная книга также была опубликована в 1985 году, но в официальном примечании к этой книге говорится о 1986 году). за которым последовал код на Pascal, BASIC и C. Numerical Recipes с самого начала заняли самоуверенную редакционную позицию, противоречащую общепринятому мнению сообщества численного анализа:

Если и есть одна доминирующая тема в этой книге, так это то, что практические методы численных вычислений могут быть одновременно эффективными, умными и, что важно, понятными. Мы категорически отвергаем альтернативную точку зрения, согласно которой эффективные вычислительные методы обязательно должны быть настолько загадочными и сложными, чтобы быть полезными только в форме «черного ящика». [4]

Однако, как оказалось, 1980-е были плодотворными годами для «черного ящика», когда появились важные библиотеки, такие как BLAS и LAPACK , и интегрированные среды, такие как MATLAB и Mathematica . К началу 1990-х годов, когда были опубликованы версии Второго издания Численных рецептов (с кодом на C, Фортран-77 и Фортран-90), стало ясно, что число сторонников числовых рецептов отнюдь не составляло большинство ученых, занимающихся вычислениями. но только та часть, которая жила между математиками-численными аналитиками и более широким сообществом, использующим интегрированные среды. Версии Second Edition заняли стабильную роль в этой нишевой среде.[5]

К середине 2000-х годов практика научных вычислений была радикально изменена зрелым Интернетом и Интернетом. Признавая, что их книги « Числовые рецепты» все больше ценились за их пояснительный текст, чем за их примеры кода, авторы значительно расширили объем книги и значительно переписали большую часть текста. Они продолжали включать код, все еще напечатанный в книге, теперь уже на C ++, для каждого обсуждаемого метода. [6] Третье издание было также выпущено в виде электронной книги [7], которая в конечном итоге стала доступной в Интернете бесплатно (с ограниченным количеством просмотров страниц) или по платной или институциональной подписке (с неограниченным количеством просмотров страниц).

Критика [ править ]

Численные рецепты - это единый том, охватывающий очень широкий спектр алгоритмов. К сожалению, этот формат изменил выбор алгоритмов в сторону более простых и коротких ранних алгоритмов, которые не были такими точными, эффективными или стабильными, как более поздние более сложные алгоритмы. [8] [9] [10] В первом выпуске также были некоторые незначительные ошибки, которые были исправлены в более поздних выпусках; однако, по словам авторов, в течение многих лет в Интернете ходили слухи о том, что Numerical Recipes «полна ошибок» . Они приписали это людям, использующим устаревшие версии кода, ошибкам в других частях кода и неправильному использованию подпрограмм, которые требуют некоторого понимания для правильного использования. [11]

Списки кодов защищены авторским правом и коммерчески лицензированы авторами Numerical Recipes . [12] Тем не менее, Numerical Recipes включает следующее заявление об авторских правах на компьютерные программы:

Авторское право не защищает идеи, а только выражение этих идей в определенной форме. В случае компьютерной программы идеи состоят из методологии и алгоритма программы, включая необходимую последовательность шагов, принятых программистом. Выражением этих идей является исходный код программы  ... Если вы анализируете идеи, содержащиеся в программе, а затем выражаете эти идеи в своей собственной, совершенно другой реализации, тогда эта новая реализация программы принадлежит вам. [7]

Одним из первых мотивов создания Научной библиотеки GNU было то, что бесплатная библиотека была необходима вместо числовых рецептов . [13]

Другая линия критики сосредоточена на стиле кодирования книг, который кажется некоторым современным читателям "фортрановским", хотя и написан на современном объектно-ориентированном C ++. [13] Авторы отстаивали свой очень краткий стиль кодирования, необходимый для формата книги из-за ограничений по объему и для удобства чтения. [5]

Заголовки в серии (частичный список) [ править ]

Книги различаются по изданию (1-е, 2-е и 3-е) и компьютерному языку, на котором дан код.

  • Числовые рецепты. Искусство научных вычислений, 1-е издание , 1986, ISBN  0-521-30811-9 . (ФОРТРАН и Паскаль)
  • Числовые рецепты. Искусство научных вычислений, 3-е издание , 2007 г., ISBN 0-521-88068-8 . (Код C ++) 
  • Числовые рецепты на БЕЙСИКЕ . Искусство научных вычислений, 1-е издание , 1991, ISBN 0-521-40689-7 . (дополнительное издание) 
  • Численные Рецепты в C . Искусство научных вычислений, 1-е издание , 1988 г., ISBN 0-521-35465-X . 
  • Численные Рецепты в C . Искусство научных вычислений, 2-е издание , 1992, ISBN 0-521-43108-5 . 
  • Числовые рецепты на C ++ . Искусство научных вычислений, 2-е издание , 2002 г., ISBN 0-521-75033-4 . 
  • Числовые рецепты на Фортране . Искусство научных вычислений, 1-е издание , 1989 г., ISBN 0-521-38330-7 . 
  • Числовые рецепты на Фортране . Искусство научных вычислений, 2-е издание , 1992, ISBN 0-521-43064-X . 
  • Числовые рецепты на Фортране 90 . Искусство параллельных научных вычислений, 2-е издание , 1996 г., ISBN 0-521-57439-0 . 
  • Числовые рецепты на Паскале . Искусство научных вычислений, 1-е издание , 1989 г., ISBN 0-521-37516-9 . 

Книги издаются издательством Cambridge University Press .

Ссылки [ править ]

  1. ^ "Двухбуквенный домен NR.com продан: ребрендинг на числовые . Рецепты" . 14 октября 2015 г.
  2. ^ Thomson Reuters , Web of Knowledge , поиск по цитированным ссылкам.
  3. ^ [1] , Google Scholar
  4. ^ Press, Уильям Х .; Teukolsky, Saul A .; Веттерлинг, Уильям Т .; Фланнери, Брайан П. (1986). "Предисловие". Числовые рецепты: искусство научных вычислений . Нью-Йорк: Издательство Кембриджского университета. п. xi. ISBN 0-521-30811-9.
  5. ^ а б Пресса, Уильям Х .; и Teukolsky, Saul A .; «Числовые рецепты: есть ли будущее у этой парадигмы?», «Компьютеры в физике», 11, 416 (1997). Препринт.
  6. ^ Press, Уильям Х .; Teukolsky, Saul A .; Веттерлинг, Уильям Т .; Фланнери, Брайан П. (2007). «Предисловие к третьему изданию». Числовые рецепты: искусство научных вычислений (3-е изд.). Нью-Йорк: Издательство Кембриджского университета. п. xi. ISBN 978-0-521-88068-8.
  7. ^ а б Пресса, Уильям Х .; Teukolsky, Saul A .; Веттерлинг, Уильям Т .; Фланнери, Брайан П. (2007). Числовые рецепты: искусство научных вычислений (3-е изд.). Нью-Йорк: Издательство Кембриджского университета. ISBN 978-0-521-88068-8.
  8. ^ "Обзоры: Числовые рецепты" . www.quut.com . Проверено 28 января 2019 .клонировать URL
  9. ^ Ван Снайдер, В. "Почему бы не использовать числовые рецепты?" . www.uwyo.edu . Проверено 28 января 2019 .клонировать URL
  10. ^ «Альтернативы числовым рецептам» . Архивировано из оригинала 18 января 2016 года.
  11. ^ "Числовые рецепты тревожных слухов" . числовые . рецепты . Проверено 28 января 2019 .
  12. ^ Веб-сайт цифровых рецептов , Numerical Recipes Code
  13. ^ a b Галасси, Марк; Тайлер, Джеймс; Гоф, Брайан. «Научная библиотека GNU - Проектный документ» . Операционная система GNU . GNU.org . Проверено 5 января 2019 года .

Внешние ссылки [ править ]

  • Официальный веб-сайт
  • Текущее электронное издание Numerical Recipes (ограниченное количество бесплатных просмотров страниц).
  • Числовые рецепты в Google Книгах
  • Более старые версии Numerical Recipes доступны в электронном виде (ссылки на версии C, Fortran 77 и Fortran 90 в различных форматах, а также на другие размещенные книги)
  • Обзоры числовых рецептов
  • Норман Грей, Сбалансированное обсуждение NR и его критиков
  • «Альтернативы числовым рецептам» . Архивировано из оригинала 18 января 2016 года.