How to evaluate a unknown variable?
    조회 수: 5 (최근 30일)
  
       이전 댓글 표시
    
I am trying to evaluate a specific variable, i.e., lambda from the following expression:
alpha=0.9;
g=[3, 2, 1];
N=10;
P=5;
sum(( lambda*(2-alpha)-sqrt(lambda*alpha*(lambda*alpha+g.*4*(1-alpha))) ) ./ ( g.*2*lambda*(alpha-1) )) = N*P
Which function shall I use to find the value of lambda that satisfies the equality above, since it is the only unknown variable?
댓글 수: 1
  Guillaume
      
      
 2019년 7월 9일
				You could use fzero if your equation made sense. On the left side of your equation you have a 3 element vector (with 3 different values obviously). On the right hand side you have a scalar. 
채택된 답변
  Peter Jarosi
      
 2019년 7월 9일
        Using fsolve: 
alpha=0.9;
g=[3, 2, 1];
N=10;
P=5;
f = @(lambda) sum(( lambda*(2-alpha)-sqrt(lambda*alpha*(lambda*alpha+g.*4*(1-alpha))) ) ...
    ./ ( g.*2*lambda*(alpha-1) )) - N*P;
lambda0 = 1;
options = optimoptions('fsolve','Display','iter','Algorithm','levenberg-marquardt');
lambda = fsolve(f, lambda0, options);
Learn more at https://www.mathworks.com/help/optim/ug/fsolve.html
댓글 수: 2
추가 답변 (0개)
참고 항목
카테고리
				Help Center 및 File Exchange에서 Develop Apps Using App Designer에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

