summation operation in matlab

hello, i am trying to write a code to implement the summation operation but having errors the equation is below. my code is
A=rand(1,10);
N = 6;
for b = 1:N
syms A;
Pb = (A.^N/factorial(N)) / symsum ((A.^i)/(factorial(i)),i,0,N);
% Bp = (Toi.^N)/(factorial(N)) / symsum(Toi.^[0:N]./ factorial([0:N]));
end
and i keep getting this error
??? Error using ==> factorial at 17
N must be a matrix of non-negative integers.
Error in ==> ERLANGB_TEST at 7
Pb = (A.^N/factorial(N)) / symsum ((A.^i)/(factorial(i)),i,0,N);
thanks for your anticipated help.

2 Kommentare

What is this in your quesion?
% Bp = (Toi.^N)/(factorial(N)) / symsum(Toi.^[0:N]./ factorial([0:N]));
end
thanks
joe khese
joe khese am 14 Mär. 2014
that is the code i wrote to implement the equation above but i keep getting this error N must be a matrix of non-negative integers.

Melden Sie sich an, um zu kommentieren.

Antworten (3)

Mischa Kim
Mischa Kim am 13 Mär. 2014

0 Stimmen

Joe, use
syms A ii
N = 6;
Pb = A^N/factorial(N)/(symsum(A^ii/factorial(ii),0,N)); % symbolic expression
sPb = subs(Pb,A,3); % substitute 3 for A to get numeric result

1 Kommentar

What release are you working with?
What happens when you replace in the equation
factorial(N)
by
sym('N!')

Melden Sie sich an, um zu kommentieren.

joe khese
joe khese am 14 Mär. 2014

0 Stimmen

thanks Mischa. I tried what u suggested but still getting the same error. N must be a matrix of non-negative integers.
Marta Salas
Marta Salas am 14 Mär. 2014
Bearbeitet: Marta Salas am 14 Mär. 2014

0 Stimmen

You must define i as a symbolic variable too, otherwise i is defined as the sqrt(-1)
syms A i
N = 6;
Pb = (A.^N/factorial(N)) / symsum ((A.^i)/factorial(i),i,0,N);

Gefragt:

am 13 Mär. 2014

Bearbeitet:

am 14 Mär. 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by