![]() |
![]() ![]() |
![]() |
Yurka |
![]()
Сообщение
#1
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 143 Пол: Мужской Репутация: ![]() ![]() ![]() |
Какие методы (алгоритмы) можно использовать для вычисления двойных, тройных определенных интегралов. Интересуют методы по которым можно написать программу.
|
Lapp |
![]()
Сообщение
#2
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
для вычисления двойных, тройных определенных интегралов А вычислять одномерные ты знаешь, как? Я вижу существенную разницу только в том, как задавать (или отслеживать) границы области интегрирования. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Yurka |
![]()
Сообщение
#3
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 143 Пол: Мужской Репутация: ![]() ![]() ![]() |
А вычислять одномерные ты знаешь, как? Я вижу существенную разницу только в том, как задавать (или отслеживать) границы области интегрирования. Обычные одномерные знаю как. Писал раньше прогу на Delphi (для методов Симпсона и трапеций). Эти методы можно использовать для двойных и тройных интегралов? если можно, то подскажите как. |
Lapp |
![]()
Сообщение
#4
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Обычные одномерные знаю как. Писал раньше прогу на Delphi (для методов Симпсона и трапеций). Повторяю: основная сложность - с заданием границ интегрирования. Но если они простые (то есть кнстанты, и область интегрирования тем самым прямоугольная), то - какая сложность с применением старых методов? В простейшем варианте, их можно просто логически разбить на два (или, соответственно, три) этапа. Делаешь два (три) вложенных цикла. То есть заменяешь двойной (тройной) интеграл на два (три) вложенных - вот и все. То есть действуешь буквально по определению:Эти методы можно использовать для двойных и тройных интегралов? если можно, то подскажите как. (двойной интеграл от x1 до x2 и от y1 до y2) F(x,y) dx dy = (интеграл от x1 до x2) ((интеграл от y1 до y2) F(x,y) dy ) dx В чисто вычислительном плане это может быть не очень эффективно, но так ты мог бы даже использовать свои старые программы (если у тебя функция передается в параметрах). Более эввективно, конечно, считать тройной цикл с непосредственным суммированием F(x,y)*dy*dy. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Yurka |
![]()
Сообщение
#5
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 143 Пол: Мужской Репутация: ![]() ![]() ![]() |
Повторяю: основная сложность - с заданием границ интегрирования. Но если они простые (то есть кнстанты, и область интегрирования тем самым прямоугольная), то - какая сложность с применением старых методов? В простейшем варианте, их можно просто логически разбить на два (или, соответственно, три) этапа. Делаешь два (три) вложенных цикла. То есть заменяешь двойной (тройной) интеграл на два (три) вложенных - вот и все. То есть действуешь буквально по определению: (двойной интеграл от x1 до x2 и от y1 до y2) F(x,y) dx dy = (интеграл от x1 до x2) ((интеграл от y1 до y2) F(x,y) dy ) dx В чисто вычислительном плане это может быть не очень эффективно, но так ты мог бы даже использовать свои старые программы (если у тебя функция передается в параметрах). Более эввективно, конечно, считать тройной цикл с непосредственным суммированием F(x,y)*dy*dy. Спасибо, вроде прояснилось. Границы в идеале должен задавать пользователь. Если не трудно, пару слов скажите по эффективности упомянутых алгоритмов (какой наиболее эффективный), чтобы не перебирать все. Может лучше использовать метод Монте-Карло? Сообщение отредактировано: Yurka - 15.08.2010 15:36 |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 0:36 |