Main Content

nthroot

Nth root of symbolic numbers

Description

example

y = nthroot(x,n) returns the nth root of x with the phase angle closest to the phase of x. The output y has symbolic data type if any input argument is symbolic. The variables satisfy y.^n = x.

Examples

collapse all

Calculate the nth root of a negative number.

x = sym(-27);
n = -3;
y = nthroot(x,n)
y = 

-13-sym(1/3)

Check that the answer solves the equation yn=x.

y^n
ans = -27-sym(27)

Calculate the nth root of a complex number.

x = sym(1 + 1i);
y = nthroot(x,4)
y = 1+i1/4(1 + sym(1i))^sym(1/4)

Find a numeric equivalent of the root.

vpa(y)
ans = 1.0695539323639858023756790408254+0.2127475047267430357507130792184ivpa('1.0695539323639858023756790408254') + vpa('0.2127475047267430357507130792184i')

Check that the answer solves the equation yn=x.

y^4
ans = 1+i1 + sym(1i)

Calculate the nth roots of an array.

x = sym([-27,-8,-4
    27,64,-12])
x = 

(-27-8-42764-12)[-sym(27), -sym(8), -sym(4); sym(27), sym(64), -sym(12)]

n = sym([3,3,4
    3,2,-2])
n = 

(33432-2)[sym(3), sym(3), sym(4); sym(3), sym(2), -sym(2)]

y = nthroot(x,n)
y = 

(-3-2-13/441/438-12i12)[-sym(3), -sym(2), (-sym(1))^sym(3/4)*4^sym(1/4); sym(3), sym(8), -(sqrt(sym(12))*sym(1i))/12]

Check that the answer solves the equation yn=x.

y.^n
ans = 

(-27-8-42764-12)[-sym(27), -sym(8), -sym(4); sym(27), sym(64), -sym(12)]

Use nthroot in further symbolic calculations.

syms x 
y = solve(nthroot(x,-3) == -3, x)
y = 

-127-sym(1/27)

syms x n
y = diff(nthroot(x,n),x)
y = 

xnnxnthroot(x, n)/(n*x)

Input Arguments

collapse all

Input array for taking root, specified as a symbolic or numeric array. When taking the root, the function acts element-wise.

If both x and n are nonscalar arrays, they must have the same size. If any element of x or n is symbolic and some elements are numeric, nthroot converts numeric arguments to symbolic before processing.

Example: [sym(-8),sym(8);sym(-27),sym(27)]

Input array for order of root, specified as a symbolic array or real array.

  • If an element of x is not real and positive, meaning it is either negative or has a nonzero imaginary part, then the corresponding element of n must be a nonzero integer.

  • If an element of x is real and positive, then the corresponding element of n can have any nonzero real value.

If both x and n are nonscalar arrays, they must have the same size. If any element of x or n are symbolic and some elements are numeric, nthroot converts numeric arguments to symbolic before processing.

Example: sym(-3)

See Also

Introduced in R2018b