Anterior: Introdução a QUADPACK, Acima: Integração [Conteúdo][Índice]
Integração de uma função genérica sobre um intervalo finito.
quad_qag implementa um integrador adaptativo globalmente simples usando a estratégia de Aind (Piessens, 1973).
O chamador pode escolher entre 6 pares de fórmulas da quadratura de
Gauss-Kronrod para a componente de avaliação da regra.
As regras de alto nível são adequadas para integrandos fortemente oscilatórios.
quad_qag calcula o integral
integrate (f(x), x, a, b)
A função a ser integrada é f(x), com variável dependente x, e a função é para ser integrada entre os limites a e b. chave é o integrador a ser usado e pode ser um inteiro entre 1 e 6, inclusive. O valor de chave selecciona a ordem da regra de integração de Gauss-Kronrod. Regra de alta ordem são adequadas para integrandos fortemente oscilatórios.
O integrando pode ser especidficado como o nome de uma função Maxima ou uma função Lisp ou um operador, uma expressão lambda do Maxima, ou uma expressão geral do Maxima.
A integração numérica é concluída adaptativamente pela subdivisão a região de integração até que a precisão desejada for completada.
Os argumentos opcionais epsrel e limite são o erro relativo desejado e o número máximo de subintervalos respectivamente. epsrel padrão em 1e-8 e limite é 200.
quad_qag retorna uma lista de quatro elementos:
O código de erro (quarto elemento do valor de retorno) pode ter os valores:
0se nenhum problema foi encontrado;
1se foram utilizados muitos subintervalos;
2se for detectato um erro de arredondamento excessivo;
3se o integrando se comportar muito mal;
6se a entrada não for válida.
Exemplos:
(%i1) quad_qag (x^(1/2)*log(1/x), x, 0, 1, 3);
(%o1) [.4444444444492108, 3.1700968502883E-9, 961, 0]
(%i2) integrate (x^(1/2)*log(1/x), x, 0, 1);
4
(%o2) -
9
Integração de uma função geral sobre um intervalo finito.
quad_qags implementa subdivisão de intervalo globalmente adaptativa com extrapolação
(de Doncker, 1978) através do algoritmo de (Wynn, 1956).
quad_qags calcula o integral
integrate (f(x), x, a, b)
A função a ser integrada é f(x), com variável dependente x, e a função é para ser integrada entre os limites a e b.
O integrando pode ser especidficado como o nome de uma função Maxima ou uma função Lisp ou um operador, uma expressão lambda do Maxima, ou uma expressão geral do Maxima.
Os argumentos opcionais epsrel e limite são o erro relativo desejado e o número máximo de subintervalos, respectivamente. epsrel padrão em 1e-8 e limite é 200.
quad_qags retorna uma lista de quatro elementos:
O código de erro (quarto elemento do valor de retorno) pode ter os valores:
0nenhum problema foi encontrado;
1foram utilizados muitos subintervalos;
2foi detectato um erro de arredondamento excessivo;
3o integrando comporta-se muito mal;
4não houve convergência
5o integral provavelmente é divergente, o converge lentamente
6a entrada não foi válida.
Exemplos:
(%i1) quad_qags (x^(1/2)*log(1/x), x, 0 ,1); (%o1) [.4444444444444448, 1.11022302462516E-15, 315, 0]
Note que quad_qags é mais preciso e eficiente que quad_qag para esse integrando.
Integração de uma função genérica sobre um intervalo finito ou semi-finito.
O intervalo é mapeado sobre um intervalo finito e
então a mesma estratégia que em quad_qags é aplicada.
quad_qagi avalia um dos seguintes integrais
integrate (f(x), x, minf, inf)
integrate (f(x), x, minf, a)
integrate (f(x), x, a, minf, inf)
usando a rotina Quadpack QAGI. A função a ser integrada é f(x), com variável dependente x, e a função é para ser integrada sobre um intervalo infinito.
O integrando pode ser especidficado como o nome de uma função Maxima ou uma função Lisp ou um operador, uma expressão lambda do Maxima, ou uma expressão geral do Maxima.
O parâmetro inftype determina o intervalo de integração como segue:
infO intervalo vai de a ao infinito positivo.
minfO intervalo vai do infinito negativo até a.
bothO intervalo corresponde a toda reta real.
Os argumentos opcionais epsrel e limite são o erro relativo desejado e o número maximo de subintervalos, respectivamente. epsrel padrão para 1e-8 e limite é 200.
quad_qagi retorna uma lista de quatro elementos:
O código de erro (quarto elemento do valor de retorno) pode ter os valores:
0nenhum problema foi encontrado;
1foram utilizados muitos subintervalos;
2foi detectato um erro de arredondamento excessivo;
3o integrando comporta-se muito mal;
4não houve convergência
5o integral provavelmente é divergente, o converge lentamente
6a entrada não foi válida.
Exemplos:
(%i1) quad_qagi (x^2*exp(-4*x), x, 0, inf);
(%o1) [0.03125, 2.95916102995002E-11, 105, 0]
(%i2) integrate (x^2*exp(-4*x), x, 0, inf);
1
(%o2) --
32
Calcula o valor principal de Cauchy de f(x)/(x - c) over a finite interval. A estratégia é globalmente adaptativa, e a integração de Clenshaw-Curtis modificada é usada sobre as subamplitudes que possuírem o ponto x = c.
quad_qawc calcula o valor principal de Cauchy de
integrate (f(x)/(x - c), x, a, b)
usando a rotina Quadpack QAWC. A função a ser integrada é
f(x)/(x - c), com variável dependente x, e a função
é para ser integrada sobre o intervalo que vai de a até b.
O integrando pode ser especidficado como o nome de uma função Maxima ou uma função Lisp ou um operador, uma expressão lambda do Maxima, ou uma expressão geral do Maxima.
Os argumentos opcionais epsrel e limite são o erro relativo desejado e o máximo número de subintervalos, respectivamente. epsrel padrão para 1e-8 e limite é 200.
quad_qawc retorna uma lista de quatro elementos:
O código de erro (quarto elemento do valoor de retorno) pode ter os valores:
0nenhum problema foi encontrado;
1foram utilizados muitos subintervalos;
2foi detectato um erro de arredondamento excessivo;
3o integrando comporta-se muito mal;
6a entrada não foi válida.
Exemplos:
(%i1) quad_qawc (2^(-5)*((x-1)^2+4^(-5))^(-1), x, 2, 0, 5);
(%o1) [- 3.130120337415925, 1.306830140249558E-8, 495, 0]
(%i2) integrate (2^(-alpha)*(((x-1)^2 + 4^(-alpha))*(x-2))^(-1), x, 0, 5);
Principal Value
alpha
alpha 9 4 9
4 log(------------- + -------------)
alpha alpha
64 4 + 4 64 4 + 4
(%o2) (-----------------------------------------
alpha
2 4 + 2
3 alpha 3 alpha
------- -------
2 alpha/2 2 alpha/2
2 4 atan(4 4 ) 2 4 atan(4 ) alpha
- --------------------------- - -------------------------)/2
alpha alpha
2 4 + 2 2 4 + 2
(%i3) ev (%, alpha=5, numer);
(%o3) - 3.130120337415917
Calcula uma transformação de co-seno de Fourier ou de um seno de Fourier sobre um intervalo semi-finito.
usando a função QAWF do pacote Quadpack.
A mesma aproxima como em quad_qawo quando aplicada sobre intervalos finitos sucessivos,
e aceleração de convergência por meio d algorítimo de Epsilon (Wynn, 1956)
aplicado a séries de contribuições de integrais.
quad_qawf calcula o integral
integrate (f(x)*w(x), x, a, inf)
A função peso w é seleccionada por trig:
cosw(x) = cos (omega x)
sinw(x) = sin (omega x)
O integrando pode ser especidficado como o nome de uma função Maxima ou uma função Lisp ou um operador, uma expressão lambda do Maxima, ou uma expressão geral do Maxima.
Os argumentos opcionais são:
epsabsErro absoluto de aproximação desejado. Padrão é 1d-10.
limitTamanho de array interno de trabalho. (limit - limlst)/2 é o maximo número de subintervalos para usar. O Padrão é 200.
maxp1O número máximo dos momentos de Chebyshev. Deve ser maior que 0. O padrão é 100.
limlstLimite superior sobre número de ciclos. Deve ser maior ou igual a 3. O padrão é 10.
epsabs e limit são o erro relativo desejado e o número maximo de subintervalos, respectivamente. epsrel padrão para 1e-8 e limit é 200.
quad_qawf retorna uma lista de quatro elementos:
O código de erro (quarto elemento do valor de retorno) pode ter os valores:
0nenhum problema foi encontrado;
1foram utilizados muitos subintervalos;
2foi detectato um erro de arredondamento excessivo;
3o integrando comporta-se muito mal;
6a entrada não foi válida.
Exemplos:
(%i1) quad_qawf (exp(-x^2), x, 0, 1, 'cos);
(%o1) [.6901942235215714, 2.84846300257552E-11, 215, 0]
(%i2) integrate (exp(-x^2)*cos(x), x, 0, inf);
- 1/4
%e sqrt(%pi)
(%o2) -----------------
2
(%i3) ev (%, numer);
(%o3) .6901942235215714
Integração de cos(omega x) f(x) ou sin(omega x) f(x) sobre um intervalo finito,
onde omega é uma constante.
A componente de avaliação da regra é baseada na técnica modificada de Clenshaw-Curtis.
quad_qawo aplica subdivisão adaptativa com extrapolação, similar a quad_qags.
quad_qawo calcula o integral usando a rotina
Quadpack QAWO:
integrate (f(x)*w(x), x, a, b)
A função peso w é seleccionada por trig:
cosw(x) = cos (omega x)
sinw(x) = sin (omega x)
O integrando pode ser especidficado como o nome de uma função Maxima ou uma função Lisp ou um operador, uma expressão lambda do Maxima, ou uma expressão geral do Maxima.
Os argumentos opcionais são:
epsabsErro absoluto desejado de aproximação. O Padrão é 1d-10.
limiteTamanho do array interno de trabalho. (limite - limlst)/2 é o número máximo de subintervalos a serem usados. Default é 200.
maxp1Número máximo dos momentos de Chebyshev. Deve ser maior que 0. O padrão é 100.
limlstLimite superior sobre o número de ciclos. Deve ser maior que ou igual a 3. O padrão é 10.
epsabs e limite são o erro relativo desejado e o número máximo de subintervalos, respectivamente. epsrel o padrão é 1e-8 e limite é 200.
quad_qawo retorna uma lista de quatro elementos:
O código de erro (quarto elemento do valor de retorno) pode ter os valores:
0nenhum problema foi encontrado;
1foram utilizados muitos subintervalos;
2foi detectato um erro de arredondamento excessivo;
3o integrando comporta-se muito mal;
6a entrada não foi válida.
Exemplos:
(%i1) quad_qawo (x^(-1/2)*exp(-2^(-2)*x), x, 1d-8, 20*2^2, 1, cos);
(%o1) [1.376043389877692, 4.72710759424899E-11, 765, 0]
(%i2) rectform (integrate (x^(-1/2)*exp(-2^(-alpha)*x) * cos(x), x, 0, inf));
alpha/2 - 1/2 2 alpha
sqrt(%pi) 2 sqrt(sqrt(2 + 1) + 1)
(%o2) -----------------------------------------------------
2 alpha
sqrt(2 + 1)
(%i3) ev (%, alpha=2, numer);
(%o3) 1.376043390090716
Integração de w(x) f(x) sobre um intervalo finito, onde w(x) é uma certa função algébrica ou logarítmica. Uma estratégia de subdivisão globalmente adaptativa é aplicada, com integração modificada de Clenshaw-Curtis sobre os subintervalos que possuírem os pontos finais dos intervalos de integração.
quad_qaws calcula o integral usando a rotina
Quadpack QAWS:
integrate (f(x)*w(x), x, a, b)
A função peso w é seleccionada por wfun:
1w(x) = (x - a)^alpha (b - x)^beta
2w(x) = (x - a)^alpha (b - x)^beta log(x - a)
3w(x) = (x - a)^alpha (b - x)^beta log(b - x)
4w(x) = (x - a)^alpha (b - x)^beta log(x - a) log(b - x)
O integrando pode ser especificado como o nome de uma função Maxima ou uma função Lisp ou um operador, uma expressão lambda do Maxima, ou uma expressão geral do Maxima.
O argumentos opcionais são:
epsabsErro absoluto desejado de aproximação. O padrão é 1d-10.
limiteTamanho do array interno de trabalho. (limite - limlst)/2 é o número máximo de subintervalos para usar. O padrão é 200.
epsabs e limit são o erro relativo desejado e o número máximo de subintervalos, respectivamente. epsrel o padrão é 1e-8 e limite é 200.
quad_qaws retorna uma lista de quatro elementos:
O código de erro (quarto elemento do valor de retorno) pode ter os valores:
0nenhum problema foi encontrado;
1foram utilizados muitos subintervalos;
2foi detectato um erro de arredondamento excessivo;
3o integrando comporta-se muito mal;
6a entrada não foi válida.
Exemplos:
(%i1) quad_qaws (1/(x+1+2^(-4)), x, -1, 1, -0.5, -0.5, 1);
(%o1) [8.750097361672832, 1.24321522715422E-10, 170, 0]
(%i2) integrate ((1-x*x)^(-1/2)/(x+1+2^(-alpha)), x, -1, 1);
alpha
Is 4 2 - 1 positive, negative, or zero?
pos;
alpha alpha
2 %pi 2 sqrt(2 2 + 1)
(%o2) -------------------------------
alpha
4 2 + 2
(%i3) ev (%, alpha=4, numer);
(%o3) 8.750097361672829
Anterior: Introdução a QUADPACK, Acima: Integração [Conteúdo][Índice]