# Tag Info

10

The answer is no because of fundamental mathematical limitations which origin in the set theory regarding countability (see e.g. Cantor's theorem) - functions over a given set are more numerous than its (power) cardinality. Neither Mathematica nor any other system can integrate every function in even much more restricted class, namely Riemann integrable ...

8

If you look in the help file for Integrate under the section on "Possible Issues", there is an explanation. The docs comment: "Parameters like n are assumed to be generic inside indefinite integrals:" and the example is given of Integrate[x^n, x] which returns x^(1 + n)/(1 + n). As with the OPs integral, the answer is true for generic n, but not for a ...

7

I don't like using approximate numbers when we can use exact ones, therefore with Rationalize and RootApproximant I can rewrite the function this way: f[x_] := 1/Gamma[x]^14 1/(1618/(70 x))^(14 x) 12257800000000000000^(x - 1) Exp[-14 x] let's plot this function: Plot[ f[x], {x, 0, 1500}, PlotStyle -> Thick] We can use: NMaximize[{ f[x], 10^5 > ...

4

"What solutions might I have to fix that?" As Szabolcs says, if theIntegratecommand does not return an expression, other thanIntegrate[...], thenLimithas no chance to operate. So, I would first find the integral by supplyingIntegratewith sufficient assumptions: Integrate[Sin[t^n], {t,0,Pi/2}, Assumptions :> {n>=1}] The assumption of integer $n$ is ...

4

This code should give you some insight as to why you are seeing this behavior: Manipulate[Plot[(a - Sqrt[a^2 + x])/(a^2 - a*Sqrt[a^2 - x]), {x, -1, 1}], {a, -3, 3}] When Assumptions -> {a > 0} is used, you get the correct limit. But when no assumptions are placed, Mathematica tries to evaluate the limit for a general complex $a$. This second ...

3

Some integrals cannot be found in terms of a finite set of functions. I'm not an expert on what the limits of Mathematica are, but the following suggests to me that this integral is beyond them. The reason comes down, by a sequence of substitutions, to the fact that this integral returns unaltered: -Integrate[Erf[Sqrt[1 - w^2]], w] (* ...

3

I think this can be hacked more or less case by case with UpValues, I think this is one of the most flexible aspects of Mathematica. For instance if you just want partial derivatives to interact with sums you can just define your sum function MySum (or you can maybe unprotect Sum, not sure if this is possible) and define UpValues MySum /: D[MySum[s_, i_], ...

3

foo[arg_] := arg /. {Gamma[p_] Gamma[q_] :> Gamma[p + q] Beta[p, q]} FullSimplify[1./(Gamma[1 + c] ((e Gamma[1 + b])/Gamma[2 + b + c] + (1. d Gamma[1.5 + b])/ Gamma[2.5 + b + c] + (f Gamma[2 + b])/Gamma[3 + b + c])), TransformationFunctions -> {Automatic, foo}] 1./(e Beta[1 + b, 1 + c] + 1. d Beta[1.5 + b, 1 + c] + f Beta[2 + b, 1 + c])

3

You can use Cauchy's theorem. Define the approximate zero of your function : zero = FindRoot[DirichletL[19, 10, s], {s, 0.5 + I}][[1, 2]] (* 0.5 + 1.51608 I *) Series will not consider this a pole of 1/DirichletL[19, 10, s] and I think this is why you get a zero residue. However, integrating on a small square around that pole one finds : Table[{eps, ...

3

You can do the whole thing analytically: (*ϵ=78.36; λ=0.548881;*) Clear[ϵ, λ]; funcin = 1/(ϵ * π) * Exp[-(2*r + λ * Sqrt[r^2 + ρ^2 - 2*r*ρ * Cos[θ]])] * r^2 * Sin[θ] * 1 / Sqrt[ρ^2 + r^2 - 2*r*ρ * Cos[θ]]; intfuncinang = Assuming[r > 0 && ρ > 0 && ϵ > 0 && λ > 0, Integrate[funcin, {θ, 0, π}, {ϕ, 0, 2 π}] ] (* ...

2

I have isolated a simplified instance of the bug: a = Exp[-(ux - uy) (vx - vy)] ((ux - uy) (vx - vy))^2; i1 = Integrate[a, {vy, 0, vx}]; Assuming[ux > 0, i2a = Integrate[i1, {vx, 0, 1}, {uy, 0, ux}]; i2b = Integrate[Integrate[i1, {uy, 0, ux}], {vx, 0, 1}]; i2b - i2a // FullSimplify ] which gives 4 I \[Pi] (incorrect) rather than 0 (correct). We ...

2

It's a bug, of course. Mathematica gets dizzy by the "hanging" integration order (I believe). As simple as it is, it was tough to find out but it gives the right result if you just change the order of limits: \$Assumptions = {ρ > 0, L > 0}; limits = Sequence[{ux, 0, L}, {uy, 0, ux}, {vx, 0, L}, {vy, 0, vx}]; (* instead of limits = Sequence[{ux, 0, ...

2

Problem looks to occur when doing the definite integral. If you start with the indefinite integral: int = Integrate[x^(a - 1)/(1 - x) - c x^(b - 1)/(1 - x^c), x] (* x^a/a + (x^(1 + a) Hypergeometric2F1[1, 1 + a, 2 + a, x])/(1 + a) - (c x^b Hypergeometric2F1[1, b/c, 1 + b/c, x^c])/b *) and you do the limits by hand you get: ...

2

Your syntax is correct and v.9 produces a result. If appropriate you can halp things by adding assumptions..for example: Integrate[x^(a - 1)/(1 - x) - c x^(b - 1)/(1 - x^c), {x, 0, 1}, Assumptions -> {a > 0, b > 0, c > 0}] -PolyGamma[0, a] + PolyGamma[0, b/c] Indeed.. it apperars to be incorrect.. example = {a -> ...

1

You can do the integrals over the angular variables analytically; the result will be a function of r, ρ : intth = 2 Pi Integrate[funcin, θ]; integ[ρ_] = (intth /. θ -> Pi) - (intth /. θ -> 0) ; output = Table[{ρ, NIntegrate[integ[ρ], {r, 0, Infinity}]}, {ρ, 0.1, 3,0.05}] ; ListLinePlot[output]

1

After some trial I managed to speed your integration up. The main idea for the optimization is to simplify the symbolic expression as much as possible before throw it in to Integrate. Also, your code can be conciser for many parts of it, I'll mention a few of them in the following part. This is the expression waiting for simplification: exp = ψy[y, Y[i]] ...

1

I ended up solving this using the algorithm below. This was rather complicated (which is why I'm only describing the process, and have omitted both the actual code and several small details), so maybe there's a better way. 1) Randomly pick the critical points, with the restriction that their slopes have to have absolute value between 1 and 3, and that ...

1

What you have proposed works in principal: inner[y_ /; NumericQ[y]] := ( lastx = NMinimize[-7 - 6 x + x^2 - 8 y - y^2, x]; First@lastx ) NMaximize[inner[y] , y ] lastx {-1.77636*10^-15, {y -> -4.}} {-1.77636*10^-15, {x -> 3.}}} When you see how slow this is ( a whole minute) with my simple example I think ...

1

You can also try unprotecting and changing D. For example: D[var_[is___], var_[js___]] := Times @@ MapThread[KroneckerDelta, {{is}, {js}}] Allows D[x[i, a], x[j, b]] (* KroneckerDelta[a, b] KroneckerDelta[i, j] *) This is by no means a complete solution, since it doesn't implement the product rule, for example: D[x[i, a] x[j, b], x[k, c]] (* 0 *) ...

Only top voted, non community-wiki answers of a minimum length are eligible