(Не рекомендуемый) Численно вычислите тройной интеграл
triplequad не рекомендуется. Использовать integral3 вместо этого.
q = triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax)
q = triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax,tol)
q = triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax,tol,method)
q = triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax) вычисляет тройной интеграл fun(x,y,z) по трехмерной прямоугольной области xmin <= x <= xmax, ymin <= y <= ymax, zmin <= z <= zmax. Первый вход, fun, является указателем на функцию. fun(x,y,z) необходимо принять вектор x и скаляры y и z, и возвращает вектор значений интегранда.
Параметризация функций объясняет, как предоставить дополнительные параметры функции fun, при необходимости.
q = triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax,tol) использует tol допуска вместо значения по умолчанию, которое 1.0e-6.
q = triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax,tol,method) использует квадратурную функцию, заданную как method, вместо quad по умолчанию. Допустимые значения для method являются @quadl или указатель на функцию пользовательского квадратурного метода, который имеет ту же последовательность вызовов, что и quad и quadl.
Передайте указатель на функцию @integrnd на triplequad: P
Q = triplequad(@integrnd,0,pi,0,1,-1,1);
где файл integrnd.m является
function f = integrnd(x,y,z) f = y*sin(x)+z*cos(x);
Передайте указатель анонимной функции F на triplequad:
F = @(x,y,z)y*sin(x)+z*cos(x); Q = triplequad(F,0,pi,0,1,-1,1);
Этот пример интегрирует y*sin(x)+z*cos(x) по области 0 <= x <= pi, 0 <= y <= 1, -1 <= z <= 1. Обратите внимание, что интегранд может быть оценен с помощью вектора x и скаляры y и z.