int2d
integral definida 2d por quadratura e cubatura
Seqüência de Chamamento
[I, err] = int2d(X, Y, f) [I, err] = int2d(X, Y, f, params)
Parâmetros
- X
um array 3 por N contendo as abscissas dos vertices dos N triângulos.
- Y
um array 3 por N contendo as ordenadas dos vertices dos N triângulos.
- f
função externa (função, string ou lista) definindo o integrando
f(u,v)
;- params
vetor de reais
[tol, iclose, maxtri, mevals, iflag]
.O valor padrão é[1.d-10, 1, 50, 4000, 1]
.- tol
o limite desejado do erro. Se
iflag=0
,tol
é interpretado como um limite de erro relativo; seiflag=
1, o limite é de erro absoluto.- iclose
um inteiro que determina a seleção dos métodos LQM0 ou LQM. Se
iclose=1
, então LQM1 é utilizado. Qualquer outro valor deiclose
faz com que LQM0 seja usado. LQM0 utiliza valores da função apenas em pontos interiores ao triângulo. LQM1 geralmente é mais preciso que LQM0 mas envolve a avaliação do integrando em mais pontos, incluindo em alguns pontos da fronteira do triângulo. Geralmente é melhor utilizar LQM1 a não ser que o integrando possuia singularidades nas bordas do triângulo.- maxtri
o número máximo de triângulos na triangularização final da região
- mevals
o número máximo de avaliações da função permitido. Este número terá efeito na limitação da computação se for menor que 94*
maxtri
quando LQM1 é especificado ou 56*maxtri
quando LQM0 é especificado.- iflag
- I
o valor da integral
- err
o erro estimado
Descrição
int2d
computa a integral bidimensional de uma
função f
sobre uma região que consiste de
n
triângulos. Um estimativa de erro total é obtida e
comparada a - tol
- que é fornecida como entrada para a
subrotina. A tolerância de erro é tratada como relativa ou absoluta
dependendo do valor de entrada de iflag
. Um "módulo de
quadratura local" ("Local Quadrature Module") é aplicado para cada
triângulo de entrada e estimativas da integral total e do erro total são
computadas. O módulo de quadratura local é a subrotina LQM0 ou a subrotina
LQM1 e a escolha entre elas é determinada pelo valor da variável
iclose
.
Se a estimativa de erro total excede a tolerância, o triângulo com
maior erro absoluto é dividio em dois outro triângulos traçando-se uma
mediana por seu maior lado. O módulo de quadratura local é então aplicado
a cada um dos subtriângulos para se obter novas estimativas da integral e
do erro. Este processo é repetido até que um dos seguintes (1) a
tolerância é satisfeita, (2) o número de triângulos gerados excede o
parâmetro maxtri
, (3) o número de avaliações do
integrando excede o parâmetro mevals
, ou (4) a função
sente que um erro de arredondamento está começando a contaminar o
resultado.
Exemplos
X = [0,0;1,1;1,0]; Y = [0,0;0,1;1,1]; deff('z=f(x,y)','z=cos(x+y)') [I,e] = int2d(X, Y, f) // computa o integrando sobre o quadrado [0 1]x[0 1]
Ver Também
Report an issue | ||
<< impl | Equações Diferenciais | int3d >> |