Wolfram Computation Meets Knowledge

Как повысить быстродействие команды NIntegrate

Методы повышения быстродействия команды NIntegrate часто зависят от того, какой интеграл необходимо найти. Но все же, есть некоторые общие стратегии:

  1. Используйте команду NIntegrate, установив опцию “SymbolicProcessing” в значение 0, что отключает символьную обработку интеграла вычислительным ядром языка Wolfram Language. По умолчанию, команда NIntegrate производит некоторую символьную обработку подинтегрального выражения. Это позволяет команде NIntegrate вычислять более сложные интегралы. Однако, символьная обработка замедляет некоторые вычисления. Для квадратурного интегрирования функции f на интервале от 0 до 1 без символьной обработки, используйте следующую команду:
     NIntegrate[f[x], {x, 0, 1}, Method -> {Automatic, "SymbolicProcessing" -> 0}]

    Метод Automatic может быть заменен любым другим поддерживаемым методом.

  2. Исключите сингулярности и скачки функции из области интегрирования. Опция Exclusions указывает где команда NIntegrate не должна вычислять подинтегральное выражение ввиду его сингулярности. Например, если функция содержит деление, укажите множество точек, где знаменатель обращается в ноль:
    NIntegrate[1/Sqrt[Sin[x]], {x, 0, 10}, Exclusions -> Sin[x] == 0]

Дополнительные рекомендации по повышению быстродействия численного интегрирования можно найти в документации, на странице NIntegrate Integration Strategies (стратегии интегрирования в команде NIntegrate).

Была ли эта статья для вас полезной?
Да
Нет

Хотите оставить комментарий?

Спасибо за ваш отзыв.

Отправить

Обратиться в службу поддержки

Если у вас есть вопросы о ценах и оплате, активации или сомнения по техническим темам, мы готовы вам помочь.

1-800-WOLFRAM (+1-217-398-0700 для международных звонков)

Служба поддержки

Понедельник-пятница
с 08:00 до 17:00 по центральному времени США

  • Регистрация или активация продукта
  • Предпродажная информация и заказ
  • Помощь в установке и первом запуске

Расширенная техническая поддержка (для правомочных клиентов)

Понедельник-четверг
с 08:00 до 19:00 по центральному времени США

Пятница
с 08:30 до 10:00 и с 11:00 до 17:00 по центральному времени США

  • Приоритетная техническая поддержка
  • Поддержка по продуктам от экспертов Wolfram
  • Помощь специалистов по программированию на Wolfram Language
  • Расширенная поддержка установки