Ottieni radici di polinomi in Matlab

Ammar Ali 4 luglio 2021
  1. Ottieni le radici del polinomio usando la funzione roots() in MATLAB
  2. Ottieni le radici del polinomio usando la funzione solve() in MATLAB
Ottieni radici di polinomi in Matlab

Questo tutorial introdurrà come trovare le radici del polinomio usando le funzioni roots() e solve() in MATLAB.

Ottieni le radici del polinomio usando la funzione roots() in MATLAB

Se vuoi trovare le radici di un polinomio, puoi usare la funzione roots() in MATLAB. Questo input di questa funzione è un vettore che contiene i coefficienti del polinomio. Se una potenza non è presente nel polinomio, verrà utilizzato 0 come coefficiente. L’output di questa funzione è un vettore colonna che contiene le radici reali e immaginarie del dato polinomio. Ad esempio, troviamo le radici di un polinomio quadratico: 2x^2 - 3x + 6 = 0. Dobbiamo definire i coefficienti del polinomio partendo dalla potenza più alta, e se una potenza non è presente useremo 0 come coefficiente . Vedi il codice qui sotto.

poly = [2 -3 6];
p_roots = roots(poly)

Produzione:

p_roots =

   0.7500 + 1.5612i
   0.7500 - 1.5612i

Nel codice sopra, abbiamo usato solo i coefficienti del polinomio a partire dalla potenza più alta. È possibile modificare i coefficienti del polinomio in base al polinomio dato. Sappi, troviamo le radici di un polinomio quartico: 2x^4 + 1 = 0. Vedi il codice qui sotto.

poly = [2 0 0 0 1];
p_roots = roots(poly)

Produzione:

p_roots =

  -0.5946 + 0.5946i
  -0.5946 - 0.5946i
   0.5946 + 0.5946i
   0.5946 - 0.5946i

Abbiamo usato tre 0 tra i due polinomi nel codice sopra perché mancano le tre potenze. Controlla questo link per maggiori informazioni sulla funzione roots().

Ottieni le radici del polinomio usando la funzione solve() in MATLAB

Se vuoi trovare le radici di un polinomio, puoi usare la funzione solve() in MATLAB. Questo input di questa funzione è un polinomio. L’output di questa funzione è un vettore colonna che contiene le radici reali e immaginarie del dato polinomio. Ad esempio, troviamo le radici di un polinomio quadratico: 2x^2 - 3x + 6 = 0. Dobbiamo definire il polinomio. Vedi il codice qui sotto.

syms x
poly = 2*x^2 -3*x +6 == 0;
p_roots = solve(poly,x)
p_roots = vpa(p_roots,2)

Produzione:

p_roots =
 
 0.75 - 1.6i
 0.75 + 1.6i

Nel codice sopra, abbiamo definito l’intero polinomio e abbiamo usato la funzione vpa() per modificare la precisione del risultato. È possibile modificare il polinomio in base al polinomio dato e la precisione in base alle proprie esigenze. Sappi, troviamo le radici di un polinomio quartico: 2x^4 + 1 = 0. Vedi il codice qui sotto.

syms x
poly = 2*x^4 +1 == 0;
p_roots = solve(poly,x);
p_roots = vpa(p_roots,2)

Produzione:

p_roots =
 
 - 0.59 - 0.59i
 - 0.59 + 0.59i
   0.59 - 0.59i
   0.59 + 0.59i

Nel codice sopra, abbiamo definito l’intero polinomio e utilizzato la funzione vpa() per modificare la precisione del risultato. È possibile modificare il polinomio in base al polinomio dato e la precisione in base alle proprie esigenze.

Autore: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook