How to simplify a complicated output of a function with only double coefficients
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello, I am trying yo find the Newton interpolation polynomial for a given equation of f(x). My code runs perfectly except for the output polynomial. Matlab output shows complicated divisions instead of doing this math calculation itself. You can find the part of the code and the output below. I tried to use expand() function and tried to make every number double() inside the code. However, it didnt work. I tried to use double() to the function but I guess I am not allowed to do that. How can I simplify the below function? I would really appriciate any help. Thank you.
syms newton_interpolation_polynomial(x) polyy(x)
newton_interpolation_polynomial(x) = coeff(1);
temp = newton_interpolation_polynomial;
for j=1:n-1 %for loop must continue n-1 times
int=double(coeff(j+1)/coeff(j));
polyy(x) = temp(x)*double(int)*(x-xi(j));
newton_interpolation_polynomial(x) = newton_interpolation_polynomial(x) + polyy(x);
temp = polyy;
end
fprintf('newton interpolation polynomial for %d data points', n);
newtonpolynomial=(newton_interpolation_polynomial)
Output:
newtonpolynomial(x) =
(51375358502237082155643439903779671152671159331*x*(- 5 + x))/5846006549323611672814739330865132078623730171904 -(7671812162478049910275214342399*x)/81129638414606681695789005144064 - (346697575244925906543118474756817083859362140633764486933214125*x*(- 5 + x)*(- 10 + x))/842498333348457493583344221469363458551160763204392890034487820288 + (1857934767430616230828508262867643330923098633854702133777521627238145717458375*x*(- 5 + x)*(- 10 + x)*(- 15 + x))/242833611528216133864932738352939863330300854881517440156476551217363035650651062272 + 1828326789959911/4503599627370496
The name of the file is newtonpolynomial so I want to print the newtonpolynomial(x). It works great, when I plot the graph, it is exactly the graph I wanted to do. But newtonpolynomial(x) looks so complicated. Thanks again for your help.
0 commentaires
Réponse acceptée
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Polynomials dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!