Solving for coefficients in polynomial
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have the following equation in MATLAB which solves for my coefficients:
A45 = [(eta./eta_c).^(4:7).*(4:7)]\(Z_MD - Zfixed); % Solve for the higher order coefficients. This is the norm solution.
This represents the summation part of this equation:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/211895/image.png)
I set the first 3 coefficients which is why it just goes from 4 to 7.
As you can see, since the equation is a sum over k*A_k*(eta./eta_c)^k. I believe the above equation solves for each A_k, correct? i think it does, but I'm not sure how it does it. The A_k's are not even in the MATLAB equation. How does it know to create these coeffs and solve for them?
Also, what if I wanted to have order 4-7 polynomial, but then I wanted to skip 8 and 9 and do 10? How would I do that?
The following does not work:
A45 = [(eta./eta_c).^(4:7,10).*(4:7,10)]\(Z_MD - Zfixed); % Solve for the higher order coefficients. This is the norm solution.
0 Kommentare
Antworten (2)
Matt J
am 4 Apr. 2019
Bearbeitet: Matt J
am 4 Apr. 2019
How does it know to create these coeffs and solve for them?
In Matlab, if you have a matrix equation M*x=z, you can solve for x by doing
x=M\z;
In the special case where M is a square non-singular matrix, this is similar to doing x=inv(M)*z, but better. This is all that the code you've posted is doing, for a particular choice of the matrix M and z.
How does it know how many x(i) to solve for? From the number of columns of the matrix M.
2 Kommentare
Matt J
am 4 Apr. 2019
if you are assuming that A8, A9, A11-A21 are all zero, then yes, what you say is correct.
Walter Roberson
am 3 Apr. 2019
k = 4:7;
A45 = [k .* A(k) .* (eta./eta_c).^k]\(Z_MD - Zfixed); % Solve for the higher order coefficients. This is the norm solution.
and you could also use k = [4:7, 10]
5 Kommentare
Walter Roberson
am 4 Apr. 2019
No. I have no idea why that \ is being done; the original equation has no obvious polynomial. But the original equation does have a sum of A_k times those factors, so A(k) should appear in the list.
Benjamin Cowen
am 4 Apr. 2019
It is a polynomial. Eta is the variable being squared, cubed, etc. I’m only caring about the summation term not the others, so it is a polynomial. Eta_c is a constant
Siehe auch
Kategorien
Mehr zu Linear Algebra finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!