How to calculate the value of polynomial value for 150 coefficient.It is not possible to use polyval function.

조회 수: 1 (최근 30일)
I try this
for k=1:150
x=x1(k);
fprintf('============')
sum1=0;
b=0;
for i=1:2
b=b+B1(i)*power(x,i) ;
sum1=sum1+b;
end
final(i)=10000+sum1;
end

답변 (1개)

Walter Roberson
Walter Roberson 2016년 12월 25일
final = 10000 + B1(1) * x1(1:150) + B1(2) * x1(1:150).^2 ;
This can be written as
final = 10000 + B1(1) * x1 + B1(2) * x1.^2 ;
if x1 is exactly 150 items long.
  댓글 수: 5
John D'Errico
John D'Errico 2016년 12월 25일
편집: John D'Errico 2016년 12월 25일
It will "work". It will produce complete garbage. But that is a completely different issue, as you well know.
Walter Roberson
Walter Roberson 2016년 12월 26일
Yep. And unless the user happens to have pure integer coefficients and pure integer x values, it is not clear that they could meaningfully get anything other than garbage (at least not with less than 1800 decimal places results.)

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Polynomials에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by