summation operation in matlab

2 次查看(过去 30 天)
joe khese
joe khese 2014-3-13
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 个评论
Salaheddin Hosseinzadeh
What is this in your quesion?
% Bp = (Toi.^N)/(factorial(N)) / symsum(Toi.^[0:N]./ factorial([0:N]));
end
thanks
joe khese
joe khese 2014-3-14
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.

请先登录,再进行评论。

回答(3 个)

Mischa Kim
Mischa Kim 2014-3-13
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 个评论
Mischa Kim
Mischa Kim 2014-3-14
What release are you working with?
What happens when you replace in the equation
factorial(N)
by
sym('N!')

请先登录,再进行评论。


joe khese
joe khese 2014-3-14
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 2014-3-14
编辑:Marta Salas 2014-3-14
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);

类别

Help CenterFile Exchange 中查找有关 Calculus 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by