2013-05-27 6 views
1

ребята! Извините заранее об этом.Интеграция Mathematica

Скажем, я хочу свертку две функции (F и G), с гауссовским с Брейта-Вигнера:

f[x_] := 1/(Sqrt[2 \[Pi]] \[Sigma])Exp[-(1/2) ((x - \[Mu])/\[Sigma])^2]; 
g[x_] := 1/\[Pi] (\[Gamma]/((x - \[Mu])^2 + \[Gamma]^2)); 

Один из способов заключается в использовании скручивать как:

Convolve[f[x],g[x],x,y]; 

Но что дает:

(\[Gamma] Convolve[E^(-((x - \[Mu])^2/(2 \[Sigma]^2))),1/(\[Gamma]^2 + (x - \[Mu])^2), x, y])/(Sqrt[2] \[Pi]^(3/2) \[Sigma]) 

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

Затем я попытался интеграции (определение свертки):

Integrate[f[x]*g[y - x], {x, 0, y}, Assuptions->{x > 0, y > 0}] 

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

Является ли числовое интегрирование единственным способом выполнения свертки в Mathematica (помимо тех простых функций в примерах), или я делаю что-то неправильно?

Моя цель - сверлить хрустальный шар с брата-вейнером. CB-то вроде:

Piecewise[{{norm*Exp[-(1/2) ((x - \[Mu])/\[Sigma])^2], (
x - \[Mu])/\[Sigma] > -\[Alpha]}, 
{norm*(n/Abs[\[Alpha]])^n* 
Exp[-(1/2) \[Alpha]^2]*((n/Abs[\[Alpha]] - Abs[\[Alpha]]) - (
    x - \[Mu])/\[Sigma])^-n, (x - \[Mu])/\[Sigma] <= -\[Alpha]}}] 

Я сделал это в C++, но я думал, что я попробовать его в Mathematica и использовать его, чтобы соответствовать некоторым данным. Поэтому, пожалуйста, скажите мне, нужно ли мне выполнять процедуру численной интеграции в Mathematica или больше для аналитической интеграции.

Спасибо, Адриан

+0

Просто побочное замечание, хотя в определении свертки один интегрируется по всем действиям. –

+0

Да, я просто поставил эти предположения, чтобы помочь вычислениям (я не знаю, если это так, но те же результаты w/or w/o. – user2285967

+0

oh, вы имеете в виду интеграцию из -Inf в Inf ... Я не знаю, t знаю, где я получил это определение из ... – user2285967

ответ

0

Я Упрощенный свои функции немного (это может выглядеть немного, но его огромное в духе). В этом случае я установил [Mu] равным нулю.

\[Mu] = 0; 

Теперь мы имеем:

f[x_] := 1/(Sqrt[2 \[Pi]] \[Sigma]) Exp[-(1/2) ((x)/\[Sigma])^2]; 
g[x_] := 1/\[Pi] (\[Gamma]/((x)^2 + \[Gamma]^2)); 

Запрашиваемая Mathematica для размывания:

Convolve[f[x], g[x], x, y] 
-((I E^(-((y + I \[Gamma])^2/(2 \[Sigma]^2))) (E^((2 I y \[Gamma])/\[Sigma]^2) \[Pi] Erfi[((y - I \[Gamma]) Sqrt[1/\[Sigma]^2])/Sqrt[2]] - \[Pi] Erfi[((y + I \[Gamma]) Sqrt[1/\[Sigma]^2])/Sqrt[2]] - Log[-y - I \[Gamma]] - E^((2 I y \[Gamma])/\[Sigma]^2) Log[y - I \[Gamma]] + E^((2 I y \[Gamma])/\[Sigma]^2) Log[-y + I \[Gamma]] + Log[y + I \[Gamma]]))/(2 Sqrt[2] \[Pi]^(3/2) \[Sigma])) 

Хотя это не совсем то, что вы просили, но это показывает, если ваша функция была чуть-чуть проще, Mathematica сможет выполнить интеграцию. В случае вашего вопроса, если мы не знаем более подробной информации о [Mu], я не думаю, что результат Convolve имеет закрытую форму. Вероятно, вы можете спросить ребят math.stackexchange.com о своем интеграле и посмотреть, появляется ли кто-то закрытая форма.

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