# matlab polynomials

In mathematics, a polynomial is an articulation comprising of indeterminates factors and the respective coefficients, that includes just the tasks of augmentation, expansion, deduction, and non-negative whole number exponentiation of factors. An illustration of a polynomial of a solitary uncertain x is x3 - 8x 2 + 82. A model in three factors is x4 + 8xy z4 - 3yz + 1.

## Uses of Polynomials

• Polynomials show up in numerous spaces of math and science.
• They are utilized to shape polynomial conditions, which encode a wide scope of issues, from rudimentary word issues to convoluted logical issues;
• They are utilized to characterize polynomial capacities, which show up in settings going from fundamental science and physical science to financial matters and sociology;
• They are utilized in analytics and mathematical examination to inexact different capacities.
• In cutting edge science, polynomials are utilized to develop polynomial rings and logarithmic assortments, which are focal ideas in variable based math and mathematical calculation.

A polynomial is an articulation that can be worked from constants and images called factors or indeterminates through augmentation, multiplication and exponentiation to a non-negative number power. Such two of the expression that might be changed, one to the next, by applying the typical properties of associativity, commutativity, and distributivity of expansion and duplication, are considered as characterizing a similar polynomial.

## Formal definition:

A polynomial in a solitary uncertain x can generally be composed (or revised) in the structure as shown in figure: Polynomial conditions are the absolute most mainstream kinds of conditions in Math. Realizing how to tackle them is a thing however addressing them is something else.

The techniques you can use to tackle them are many, however on the off chance that you end up having Matlab or the free Matlab elective Octave you should be acceptable utilizing them to delay if the reason for settling the condition is more than just addressing the condition.

Alert: The accompanying techniques will assist you with addressing polynomial conditions rapidly yet won't tell you the best way to physically settle polynomial conditions, it will just assist you with getting results quicker. This can be useful on the off chance that you are not inspired by the strategy yet on the appropriate responses and may likewise be extremely helpful to check your outcome after physically settling your conditions.

## How to Evaluate Polynomials in MATLAB?

The polyval() function is used for the purpose of polynomial expression evaluation.

For instance, to evaluate any such polynomial p1, at x = 5, type -

``````P1 = [ 1 8 0  -5 8 ] ;
polyval( p1 , 5 )
``````

Output:

``````ans =

756
``````

For evaluating a matrix polynomial, the polyvalm() function is used.

Let us create a square matrix y and evaluate the polynomial p1, at y -

``````P1 = [11 71 0  -51 9];
y = [1 2 -3 5; 2 -5 61 9; 3 1 0 2; 5 -7 3 8];
polyvalm(P1 , y)
``````

Output:

``````ans =

-15585      -48071     -193341       40947
154565     -153949     -571509      261049
24795      -32333     -135163       54140
-141235       -2363     -366373     -194059
``````

## Finding the Roots of Polynomials

To calculates all roots of a polynomial, the roots() function. For instance, to calculate the roots of our polynomial p1, type -

``````P1 = [11 71 0  -51 9];
y = [1 2 -3 5; 2 -5 61 9; 3 1 0 2; 5 -7 3 8];
polyvalm( P1 , y )
>>y % represents all roots
``````

output:

``````ans =

-15585      -48071     -193341       40947
154565     -153949     -571509      261049
24795      -32333     -135163       54140
-141235       -2363     -366373     -194059
y

y =

1     2    -3     5
2    -5    61     9
3     1     0     2
5    -7     3     8
``````

The poly() function is an opposite of the function  roots() and returns polynomial coefficients. For instance-

>>p2 = poly( y )

``````p2 =

1.0e+03 *

0.0010   -0.0040   -0.0610    0.8140    8.3200
p2 =
Columns 0 through 3:

2.0000 + 2.0000i   9.0000 + 0.0000i   2.0000 + 0.0000i

Columns 4 and 5:

-1.000 - 0.000i  8.000 + 0.000i
``````

## Polynomial Curve Fitting

The polynomial’s coefficients, the polyfit() function searches that suits a combination of data. If p and q containing the p and q data to be suited to a m-degree polynomial, then you get the fitting the polynomial data.

``P1 = polyfit(p ,  q ,  m)``

### Example

Code:

``````p = [1 2 9 4 5 6]; q = [15.5 93.1 138 230.4 448.8 448.27];   % data
p1 = polyfit(p , q , 4)   % get the polynomial

p2 = 1:.1:6;
q2 = polyval( p1 , p2 ) ;
plot(p , q , 'o' , p2 ,  q2)
grid on
``````

Output:

``````p1 =

-0.3206    0.9049   20.2596   -7.5784    8.1649
`````` ## poly2sym() -Important Function of polynomial

Use of poly2sym():

To Create a polynomial which is symbolic in nature from vector of coefficients poly2sym() function is used.

Description:

`p``1 = poly2sym(``i``)` generates the symbolic polynomial with the help of poly2sym() function, expression `p1` from the vector of coefficients `i`. The polynomial variable is `y`. If `i = [t1,t2,...,tn]`, then `p1 = poly2sym(i)` returns t1 yn-1 + t2 yn-2 + ... + tn.

In the MATLABWorkspace, syntax does not create the above-mentioned symbolic variable `y`.

Example:

## Polynomial Expression creation.

To create any symbolic vector polynomial expression of all the coefficients. If we do not specify `poly2sym()function` uses `x`, a polynomial variable.

The following steps are executed on MATLAB command prompt.

Step1:

``````syms a1 b1 c1 d1
p1 = poly2sym( [ a1 , b1 , c1 , d1 ])
``````

p1 =

a1 * x ^ 3 + b1 * x ^ 2 + c1 * x + d1

Step 2:

To create any symbolic vector polynomial expression of rational coefficients we use poly2sym() function.

``P1 = poly2sym( sym( [ 1/8 , -1 / 4, 1 / 3 ]))``

P1 =

X ^ 2 / 2 – x / 8 + 1/2

Step 3:

Make a polynomial articulation from a numeric vector of skimming point coefficients. The tool kit changes over floating point coefficients to reasonable numbers prior to making a polynomial articulation.

``P1 = poly2sym( [ 0.85 , -0.4 ,  0.95 ] )``

P1 =

(3*x^2)/8 - x/8 + 1/3