1) delta functions with *linear* arguments.
This is (I believe) by a large margin the most common case. For this
deltaintegrate should simply be fixed; one only needs to correctly
implement integral(f(x) delta(a*x+b), (x, c, d)) and this shouldn't be
hard. (Note that this will also yield the multi-dimensional cases, by
repeated integration.)
2) delta functions with more complicated arguments
Getting this to work is (I believe) much more work. It is non-trivial to
even define this.
Tom
On 20.12.2011 16:21, Matthew Rocklin wrote:
> Hi Everyone,
>
> I'd like to compute multivariate integrals that contain Dirac
> Deltafunctions. I.e. expressions like
>
> integrate(exp(-(x**2+y**2))/pi * delta(2*x+3*y), (x,-oo, oo), (y,-oo, oo))
>
> The deltaintegrate function inside sympy fails to compute these
> correctly, see issue 2630.
> <http://code.google.com/p/sympy/issues/detail?id=2630>
>
> Wikipedia says
> <http://en.wikipedia.org/wiki/Dirac_delta_functions#Properties_in_n_dimensions>
> that you can compute general expressions of this form as follows:
>
> \int_{\mathbb{R}^n} f(\mathbf{x}) \, \delta(g(\mathbf{x})) \,
> d\mathbf{x} =
> \int_{g^{-1}(0)}\frac{f(\mathbf{x})}{|\mathbf{\nabla}g|}\,d\sigma(\mathbf{x})
>
> (hopefully the above image makes it through, if not go here)
> http://upload.wikimedia.org/wikipedia/en/math/3/3/f/33fbbed28ec715257d268faefc9e0e9f.png
>
> How hard would it be to compute the right hand side in sympy? In
> particular I'm confused by how to express the domain and what they mean
> by \delta\sigma(x)
>
> Or, if there is a better way of going about this I'm happy to hear it.
>
> -Matt
>
> --
> You received this message because you are subscribed to the Google
> Groups "sympy" group.
> To post to this group, send email to sy...@googlegroups.com.
> To unsubscribe from this group, send email to
> sympy+un...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/sympy?hl=en.
--
You received this message because you are subscribed to the Google Groups "sympy" group.
To post to this group, send email to sy...@googlegroups.com.
To unsubscribe from this group, send email to sympy+unsubscribe@googlegroups.com.
To unsubscribe from this group, send email to sympy+un...@googlegroups.com.
Perhaps it can be done by a change of variable, to make the argument
linear. You probably have to be careful about some things, though,
since delta functions don't follow all the "rules" that normal
functions do.
Aaron Meurer
I have it at my table here, but I couldn't find it in the special
relativity and the subsequent chapter.
Ondrej