dblquad
(권장되지 않음) 사각형에 대한 수치적 이중 적분 계산
dblquad
는 권장되지 않습니다. integral2
를 대신 사용하십시오.
구문
q = dblquad(fun,xmin,xmax,ymin,ymax)
q = dblquad(fun,xmin,xmax,ymin,ymax,tol)
q = dblquad(fun,xmin,xmax,ymin,ymax,tol,method)
설명
q = dblquad(fun,xmin,xmax,ymin,ymax)
는 quad
함수를 호출하여 사각형 xmin <= x <= xmax
, ymin <= y <= ymax
에 대해 이중 적분 fun(x,y)
를 계산합니다. 입력 인수 fun
은 벡터 x
, 스칼라 y
를 받고 피적분 함수 값의 벡터를 반환하는 함수 핸들입니다.
함수를 파라미터화하기에는 필요한 경우 fun
함수에 추가 파라미터를 제공하는 방법이 설명되어 있습니다.
q = dblquad(fun,xmin,xmax,ymin,ymax,tol)
은 디폴트 값(1.0e-6
) 대신 허용오차 tol
을 사용합니다.
q = dblquad(fun,xmin,xmax,ymin,ymax,tol,method)
는 디폴트 quad
대신 method
로 지정된 구적법(Quadrature) 함수를 사용합니다. method
의 유효한 값은 @quadl
이거나, quad
및 quadl
과 동일한 호출 시퀀스를 가지는 사용자 정의된 구적법 함수 핸들입니다.
예제
함수 핸들 @integrnd
를 dblquad
에 전달합니다.
Q = dblquad(@integrnd,pi,2*pi,0,pi);
여기서 함수 integrnd.m
은 다음과 같습니다.
function z = integrnd(x, y) z = y*sin(x)+x*cos(y);
익명 함수 핸들 F
를 dblquad
에 전달합니다.
F = @(x,y)y*sin(x)+x*cos(y); Q = dblquad(F,pi,2*pi,0,pi);
integrnd
함수는 정사각형 pi <= x <= 2*pi
, 0 <= y <= pi
에 대해 y*sin(x)+x*cos(y)
를 적분합니다. 참고로, 피적분 함수는 벡터 x
와 스칼라 y
를 사용하여 계산할 수도 있습니다.
비정사각형 영역에 대해서는 정사각형 영역 밖에 대한 피적분 함수 값을 0으로 설정하여 처리할 수 있습니다. 예를 들어, 반구의 부피는 다음과 같습니다.
dblquad(@(x,y)sqrt(max(1-(x.^2+y.^2),0)), -1, 1, -1, 1)
또는
dblquad(@(x,y)sqrt(1-(x.^2+y.^2)).*(x.^2+y.^2<=1), -1, 1, -1, 1)
버전 내역
R2006a 이전에 개발됨