MATLAB: How to give input for functions

command lineMATLAB

function Y = myFunc(P,P0)
N = 2;
Pa = 9;
k = floor((P0*N/Pa));
Y = F(P)+k*F(N*P0-P*k);
function Fp = F(P)
R = 3;
beta = 8;
Fp = 1 – exp(-((2^R-1)./P).^(beta/2));
%Step 2: Minimize it within the bounds:
P0 = 9;
[Pi, FVal] = fminbnd(@(x) myFunc(x,P0),0,7);
getting error: Error using myFunc (line 4)
Not enough input arguments.

Best Answer

Hello Shobi, code looks fine. Make sure to save the two functions in one function file (called myFunc.m). Then execute the two final commands in the MATLAB command window:
P0 = 9;
[Pi, FVal] = fminbnd(@(x) myFunc(x,P0),0,7);