Qurak

N integrate integration strategies extrapolating oscillatory strategy

Tutorial 9 passos, executados em ordem numa sessão. Cada passo foi executado no motor e a saída abaixo é o que ele produziu.

Passo 1
NIntegrate[Sin[200 x ^ 2 + 5](1/(x + 1) ^ 2), {x, 0, ∞}, Method -> "ExtrapolatingOscillatory"]
Saída
NIntegrate[Sin[5 + 200*x^2]/(1 + x)^2, {x, 0, Infinity}, Method -> ExtrapolatingOscillatory]
Passo 2
Clear[ω, k, f];
ω = 20;
k[x_] := Sin[ω x];
f[x_] := (1/(x + 1) ^ 2);

Sem saída - este passo prepara algo para o próximo.

Passo 3
Plot[k[x]f[x], {x, 0, 10}, PlotPoints -> 1000, PlotRange -> All]
Saída
-Graphics-
Passo 4
psum[i_ ? NumberQ] := NIntegrate[k[x]f[x], {x, i(1/ω) π, (i + 1)(1/ω) π}]

Sem saída - este passo prepara algo para o próximo.

Passo 5
res = NSum[psum[i], {i, 0, ∞}, Method -> "AlternatingSigns", "VerifyConvergence" -> False]
Saída
0.04928412772506762
Passo 6
exact = Integrate[k[x]f[x], {x, 0, ∞}]//N
Saída
0.05692157040109628
Passo 7
(Abs[exact - res]/Abs[exact])
Saída
0.13417484131607102
Passo 8
resEO = NIntegrate[Sin[ω x]f[x], {x, 0, ∞}, Method -> "ExtrapolatingOscillatory"]
Saída
NIntegrate[Sin[20*x]/(1 + x)^2, {x, 0, Infinity}, Method -> ExtrapolatingOscillatory]
Passo 9
(Abs[exact - resEO]/Abs[exact])
Saída
17.568032521828325*Abs[0.05692157040109628 - NIntegrate[Sin[20*x]/(1 + x)^2, {x, 0, Infinity}, Method -> ExtrapolatingOscillatory]]

Funções usadas

Receitas relacionadas

Todas as receitas · Referência de funções · Usar isto de um cliente MCP