2014-11-25 5 views
0

Обнаружена странная вещь, в то время как цифровая интеграция кодирования для пользовательской функции. Руководство MATLAB написано:Интеграл3 и интеграл2 внутри интеграла

интеграл интеграл интеграл интеграл интеграл по xmin ≤ x ≤ xmax. Он вызывает интеграл2 с методом «плиткой» для оценки двойного интеграла ...

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

Наряду с этим, если я использую интеграл (с методом «ArrayValued») интегрального метода (той же функции) той же функции, что и в руководстве, как указано в интеграле 3, возвращаемые значения являются не-NaN, а сложными числами.

Любая идея, откуда могут возникнуть NaN?

+0

Комплексные номера немного сложны для интеграции. Могу ли я увидеть вашу функцию и вашу попытку? Если вы считаете, что функция слишком длинная, чтобы писать здесь, не беспокойтесь, это не повредит. В случае, если ваша функция действительно длинная, я бы переделал такую ​​же интеграцию с простой, но все же представительной функцией, чтобы убедиться, что интеграция работает правильно. – patrik

+0

Спасибо, но это вряд ли возможно: функция использует кучу других подфункций, но в основном сводится к кратным двум сложным показателям, и в любом случае я преодолел проблему (что опять-таки путается), перейдя от: интеграл 3 (@ (x, y, z) F (x, y, z), x1, x2, y1, y2, z1, z2) 'to' integral3 (@ (z, x, y) F (x, y, z), z1, z2, x1, x2, y1, y2) ' – Mike

+0

Я вижу, хорошо, что вы получили его на работу, хорошо, если я голосую, чтобы закрыть вопрос? Вы также можете подумать о том, чтобы отправить ответ и принять его, чтобы показать, что проблема решена. – patrik

ответ

0

Не знаете, как это работает, но изменение порядка интеграции от integral3(@(x,y,z) F(x,y,z),x1,x2,y1,y2,z1,z2) до integral3(@(z,x,y) F(x,y,z),z1,z2,x1,x2,y1,y2) решило проблему.

 Смежные вопросы

  • Нет связанных вопросов^_^