how can i solve equation with summation

1 visualización (últimos 30 días)
Fatma Abdullah
Fatma Abdullah el 30 de Mayo de 2017
Comentada: Rik el 30 de Mayo de 2017
i can't solve the attached img equation on matlab for : Pfa=10^(-6),M=8,i=s=1
(later i would change these variables)
i tried the following but errors rises
if true
M=8;
s=1;
i=s;
syms pfal M i s
eqn = symsum((nchoosek(M,i)*(pfal)^(i)*(1-pfal)^(M-i)), i, s, M)==8*10^(-6);
solve(eqn,pfal)
end

Respuesta aceptada

Rik
Rik el 30 de Mayo de 2017
I think I can read the summation index: it is an i. That would mean that you should initiate i as a sym not as a hard-coded value, and thus the result from nchoosek changes each summation part.
M=8;
s=1;
syms pfal i
f = nchoosek(M,i);
eqn = (symsum(f*(pfal)^(i)*(1-pfal)^(M-i), i, s, M)==10^(-6));
solve(eqn,pfal)
This exits without error, but results in 8 solutions, 6 of which are complex. One solution is indeed equal to the solution that Roger suggested (1.25e-7).
  4 comentarios
Fatma Abdullah
Fatma Abdullah el 30 de Mayo de 2017
sorry to bother but i got that weird error:
Error using mupadmex Error in MuPAD command: Unexpected ']'. [line 1, col 44]
Error in sym/subsref (line 1577) B = mupadmex('symobj::subsref',A.s,inds{:});
Error in OSSOCFAR (line 11) result=result( result<1 & abs(imag(result))<2*eps );
Rik
Rik el 30 de Mayo de 2017
Ah, my bad, I forgot to add the line that converts to double.
result=solve(eqn,pfal);
result=double(result);
result=result( result<1 & abs(imag(result))<2*eps );

Iniciar sesión para comentar.

Más respuestas (1)

Roger Stafford
Roger Stafford el 30 de Mayo de 2017
If I interpret your code correctly, you are doing things the hard way. Your expression for Pfa is simply the binomial expansion of ((Pfa1+(1-Pfa1))^M without the first term where i is equal to zero. Hence, you are trying to solve
(Pfa1 + (1-Pfa1))^8 = 1 = 10^(-6) + (1-Pfa1)^8
whose solution is easily found as
Pfa1 = 1 - 0.999999^(1/8)
Probably the cause of your error message is the reference to the numeric function ‘nchoosek’.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by