Я хочу интегрировать это выражение:
Однако у меня, похоже, возникают проблемы при настройке функции.Как указано в этом объяснении MATLAB, я определил отдельную функцию с именем 'NDfx.m', которая выглядит следующим образом:
function [ y ] = NDfx(x)
y = (1/sqrt(2*pi))*exp(-.5*x^2); % Error occurs here
end
Однако, когда я вызываю ее в своей основной функции,получите ошибку в прокомментированной строке выше.Моя основная функция выглядит следующим образом:
function[P] = NormalDistro(u,o2,x)
delta = x-u;
dev = abs((delta)/o2); % Normalizes the parameters entered into function
P_inner = quad(@NDfx,-dev,dev); % Integrates function NDfx from -dev to dev (error here)
P_outer = 1 - P_inner; % Calculation of outer bounds of the integral
if delta > 0
P = P_inner + (P_outer/2);
elseif delta < 0
P = P_outer/2;
elseif dev == 0
P = .5;
end
end
Я получаю конкретную ошибку:
Ошибка в ==> mpower
Входные данные должны быть скалярнымии квадратная матрица