2014 dxdy logo

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

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


Правила форума


В раздел Пургаторий будут перемещены спорные темы (преимущественно псевдонаучного характера), относительно которых администрация приняла решение о нецелесообразности продолжения дискуссии.
Причинами такого решения могут быть, в частности: безграмотность, бессодержательность или псевдонаучный характер темы, нарушение автором принципов ведения дискуссии, принятых на форуме.
Права на добавление сообщений имеют только Модераторы и Заслуженные участники форума.



Начать новую тему Ответить на тему
 
 Численное интегрирование с комплексными пределами
Сообщение14.08.2019, 14:55 


14/08/19
4
Здравствуйте! Прошу направить меня в нужное русло. Не могу разобраться с численным интегрированием (пишу программу). Попробую описать суть вопроса. Итак, допустим необходимо вычислить интеграл первого вида: $\int\limits_{a}^{b}f(t)dt$. Пусть $a$ и $b$ - действительные числа, а функция $f(t)$ - комплексная. В этом случае мне понятно как действовать. Выделяю действительную и мнимую части функции - обозначим их как $\operatorname{Re}[f(t)]$ и $\operatorname{Im}[f(t)]$, далее использую формулу $\int\limits_{a}^{b}\operatorname{Re}[f(t)]dt+i\int\limits_{a}^{b}\operatorname{Im}[f(t)]dt$. В итоге, всё сводится к двум интегралам от действительных функций, которые я вычисляю квадратурой Гаусса-Лежандра. Здесь всё понятно, программа отработана.

Теперь следующая ситуация. Допустим, необходимо вычислить интеграл второго вида:$\int\limits_{a+ib}^{c+id}f(t)dt$, т.е. нижний и верхний пределы интегрирования - комплексные (в общем случае), а подынтегральную функцию для простоты будем считать действительной, т.к. случай с комплексной функцией сводится к предыдущему случаю.

Итак, вопрос. Может, конечно, здесь всё очень просто и я не вижу очевидного из-за того, что "глаза замылены", но можно ли интеграл второго вида свести к нескольким интегралам первого вида, чтобы использовать привычные программно отработанные квадратуры или здесь уже требуются совершенно иные методы численного интегрирования? Спасибо.

 Профиль  
                  
 
 Re: Численное интегрирование с комплексными пределами
Сообщение14.08.2019, 15:07 
Заслуженный участник


20/12/10
9107
sv503 в сообщении #1410343 писал(а):
$\int\limits_{a+ib}^{c+id}f(t)dt$
Прежде чем что-либо вычислять, надо понять, что это значит. Так вот, Вы понимаете, что это за зверь такой интеграл такой и как его правильно воспринимать? Для сравнения: обычный интеграл (тот, что Вы писали выше) --- это интеграл Римана по отрезку, предел так называемых интегральных сумм.

 Профиль  
                  
 
 Re: Численное интегрирование с комплексными пределами
Сообщение14.08.2019, 15:16 
Заслуженный участник
Аватара пользователя


31/01/14
11347
Hogtown
nnosipov в сообщении #1410351 писал(а):
Прежде чем что-либо вычислять, надо понять, что это значит.
+++.

Добавлю, что в комплексной области интегралы берутся по контуру (см любой учебник ТФКП) , если либо контур конкретизирован, и тогда все сводится к обычному интегралу, либо показано, что интеграл от контура не зависит, и тогда все опять-таки сводится к обычному интегралу (или сумме), но при этом надо подумать о выборе "хорошего" контура.

 Профиль  
                  
 
 Re: Численное интегрирование с комплексными пределами
Сообщение14.08.2019, 15:56 


14/08/19
4
Цитата:
Прежде чем что-либо вычислять, надо понять, что это значит. Так вот, Вы понимаете, что это за зверь такой интеграл такой и как его правильно воспринимать? Для сравнения: обычный интеграл (тот, что Вы писали выше) --- это интеграл Римана по отрезку, предел так называемых интегральных сумм.

Я не математик, потому возможно не совсем ясно выражаюсь на строгом математическом языке. Попробую объяснить в терминах простого пользователя компьютера, вернее, пользователя программы. Так сказать, "на пальцах".

Итак, у меня под рукой есть старенькая программа MathCAD. Наверняка слышали о такой. Версия старая, - седьмая. Год выпуска - 1996г. Но это не суть. Суть в том, что эта программа умеет вычислять подобные интегралы с комплексными пределами. Вернее, не она сама, а встроенное в неё ядро Maple (тоже очень известная вещь), т.к. такое интегрирование там доступно только в символьных вычислениях. Но это тоже не суть. А теперь более важная суть. Когда я пытаюсь вычислить там интеграл, например, такой: $\int\limits_{1+i3}^{-2+i2}\sin(t)dt$, программа мне сразу выдаёт ответ. Приведу скриншот:

Изображение

При этом программа не спрашивает меня как Вы - что имел я ввиду под этим интегралом, как проходит путь интегрирования и т.д. Странно, да? :-)
Программа выдаёт мне ответ, и будьте уверены - он правильный, даже если интеграл неберущийся. И этот ответ выдаст любой известный математический пакет. Так вот, суть моей задачи - не получить ответ (в какой-то программе), а написать программу, которая выдаёт такой же правильный ответ используя известные человечеству методы численного интегрирования функций с комплексными пределами интегрирования, которые, как Вы видите, уже реализованы. И я хотел бы узнать - можно ли это реализовать уже известными мне способами (но я пока не знаю как сделать нужные преобразования), или же мне нужно обращаться к литературе, в которой описаны способы мне не известные (желательно указать в какую именно).

Ну вот, вроде объяснил понятнее. :-)

 Профиль  
                  
 
 Re: Численное интегрирование с комплексными пределами
Сообщение14.08.2019, 16:01 
Аватара пользователя


31/08/17
2116
sv503 в сообщении #1410360 писал(а):
При этом программа не спрашивает меня как Вы - что имел я ввиду под этим интегралом, как проходит путь интегрирования и т.д. Странно, да?

это потому, что программа рассчитана на специалистов, которые знают как она работает, а не на придурков

 Профиль  
                  
 
 Re: Численное интегрирование с комплексными пределами
Сообщение14.08.2019, 16:09 


14/08/19
4
pogulyat_vyshel в сообщении #1410362 писал(а):
это потому, что программа рассчитана на специалистов, которые знают как она работает, а не на придурков

Слово "придурок" в мой адрес направлено? :-)
Никто исходных текстов программы Вам никогда не покажет, т.к. люди зарабатывают на этом деньги. Поэтому говорить о том, что пользователь знает как работает программа - просто глупо. Уверяю Вас - никто не знает кроме разработчиков программы. А вот математические методы известны.

Есть тут специалисты по численным методам имеющих непосредственное отношение к их реализации? Окромя специалиста pogulyat_vyshel, конечно. Теоретизирование и философствование тут мало кому интересно.

 Профиль  
                  
 
 Posted automatically
Сообщение14.08.2019, 16:12 
Заслуженный участник


09/05/12
25179
 i  Тема перемещена из форума «Помогите решить / разобраться (М)» в форум «Пургаторий (М)»
Причина переноса: переезжаем в профильный раздел.

 Профиль  
                  
 
 Re: Численное интегрирование с комплексными пределами
Сообщение14.08.2019, 16:34 
Заслуженный участник
Аватара пользователя


31/01/14
11347
Hogtown
sv503 в сообщении #1410360 писал(а):
При этом программа не спрашивает меня как Вы - что имел я ввиду под этим интегралом, как проходит путь интегрирования и т.д. Странно, да? :-)
Программа выдаёт мне ответ, и будьте уверены - он правильный, даже если интеграл неберущийся. И этот ответ выдаст любой известный математический пакет.
Я уверен, что ответ правильный в данном случае, просто потому, что эта функция $\sin(t)$ целая аналитическая и интеграл не зависит от контура. Странно, что вы о такой "мелочи" не слышали, по крайней мере не упоминаете. А вот возьмем, к примеру $|t|$, которая неаналитическая, там уже ответ будет зависеть от контура. Попробуйте ее? или $\int_{-1-i}^{1+i} t^{-1}\,dt$, там другие заморочки.

sv503 в сообщении #1410366 писал(а):
Никто исходных текстов программы Вам никогда не покажет, т.к. люди зарабатывают на этом деньги. Поэтому говорить о том, что пользователь знает как работает программа - просто глупо. Уверяю Вас - никто не знает кроме разработчиков программы.
Один мой коллега, лет так 25 назад получив неправильные ответы от Maple , обратился к ним за алгоритмом, и они были очень открыты. Есть некоторая разница между исходным текстом программы, алгоритмом в ней заложенным, и ответом на вопрос "как понимается данный интеграл" и с последним вопросом следует обращаться либо к документации, либо на форум поддержки Maple https://www.mapleprimes.com/. А математические методы начинаются с определения того, что надо посчитать.

 Профиль  
                  
 
 Re: Численное интегрирование с комплексными пределами
Сообщение14.08.2019, 19:08 
Заслуженный участник
Аватара пользователя


01/08/06
3136
Уфа
sv503 в сообщении #1410343 писал(а):
Прошу направить меня в нужное русло.
Выполняю просьбу. Хотя, в принципе, nnosipov в самом первом ответе это уже сделал.
Вообще-то мне нравится, что человек вместо того, чтобы просто взять учебник ТФКП, пытается сначала разобраться в предмете самостоятельно. Ну давайте попробуем, никуда не подглядывая, определить, что такое интеграл в этом случае, а поможет нам в этом (или не поможет) самый простой случай: $f(t) \equiv 1$. Давайте подумаем, чему бы должен был равняться интеграл
$$\int\limits_{0+0i}^{1+0i} dt?$$
Ну, мнимая часть равна нулю, значит, наверное он должен равняться обычному интегралу
$$\int\limits_0^1 dt=1$$
А если теперь вверх:
$$\int\limits_{0+0i}^{0+1i} dt?$$
Уже интереснее. Ну, вроде бы, тот же результат должен получиться, всё ведь одинаково, только направление другое, так ведь? Или не так? О, а давайте попробуем нагло взять формулу Ньютона-Лейбница и у неё спросить?
Кажется, результаты не согласуются, да? Встаёт вопрос: а что такое первообразная для функции от комплексной переменной, который сразу же приводит к вопросу: а что такое производная функции от комплексной переменной? Попробуете сами ответить? Если получилось найти производную для функции $f(z)\equiv 1$, и для функции $f(z)=z$, то попробуйте найти производную от функции $f(z)= \operatorname{Re} z.$ Ну мы же хотели с самого простого случая начать, с вещественнозначных функций, а $f(z)=z$ — комплекснозначная :mrgreen:

Вот ещё вопрос, направляющий в русло: а мы ведь хотим, чтобы $\int_a^b dt + \int_b^c dt = \int_a^c dt$ выполнялось и в комплексном случае?

 Профиль  
                  
 
 Re: Численное интегрирование с комплексными пределами
Сообщение15.08.2019, 15:04 
Заслуженный участник


20/12/10
9107
sv503 в сообщении #1410366 писал(а):
Поэтому говорить о том, что пользователь знает как работает программа - просто глупо.
Что в данном случае делает Maple (и, видимо, MathCAD), прямо написано в Help (вчера было лень посмотреть, а сегодня заглянул):
Цитата:
If a and b are finite complex numbers, the int routine computes the definite integral over the straight line from a to b.
А что такое "the definite integral over the straight line from a to b", надо либо знать, либо заглянуть в учебник. Тогда станет ясно, какие методы для вычисления можно привлечь, чтобы
sv503 в сообщении #1410360 писал(а):
написать программу, которая выдаёт такой же правильный ответ

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group