(Не рекомендуемый), Численно оценивают тройной интеграл
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 к triplequadP
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.