Matlab에서 다항식의 근 얻기

Ammar Ali 2023년1월30일
  1. MATLAB에서roots()함수를 사용하여 다항식의 근 구하기
  2. MATLAB에서solve()함수를 사용하여 다항식의 근 구하기
Matlab에서 다항식의 근 얻기

이 튜토리얼에서는 MATLAB에서roots()solve()함수를 사용하여 다항식의 근을 찾는 방법을 소개합니다.

MATLAB에서roots()함수를 사용하여 다항식의 근 구하기

다항식의 근을 찾으려면 MATLAB에서roots()함수를 사용할 수 있습니다. 이 함수의 입력은 다항식의 계수를 포함하는 벡터입니다. 다항식에 검정력이 없으면 0이 계수로 사용됩니다. 이 함수의 출력은 주어진 다항식의 실수 근과 허수근을 포함하는 열 벡터입니다. 예를 들어 2 차 다항식의 근을 찾아 봅시다 : 2x ^ 2-3x + 6 = 0. 우리는 가장 높은 거듭 제곱에서 시작하는 다항식 계수를 정의해야합니다. 그리고 만약 거듭 제곱이 없으면 계수로 0을 사용합니다. 아래 코드를 참조하십시오.

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

출력:

p_roots =

   0.7500 + 1.5612i
   0.7500 - 1.5612i

위의 코드에서 우리는 가장 높은 힘에서 시작하는 다항식의 계수 만 사용했습니다. 주어진 다항식에 따라 다항식의 계수를 변경할 수 있습니다. 4 차 다항식의 근을 찾아 봅시다 : 2x ^ 4 + 1 = 0. 아래 코드를보세요.

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

출력:

p_roots =

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

위 코드의 두 다항식 사이에 세 개의 거듭 제곱이 없기 때문에 세 개의 0을 사용했습니다. roots()함수에 대한 자세한 정보는이 링크를 확인하십시오.

MATLAB에서solve()함수를 사용하여 다항식의 근 구하기

다항식의 근을 찾으려면 MATLAB에서solve()함수를 사용할 수 있습니다. 이 함수의 입력은 다항식입니다. 이 함수의 출력은 주어진 다항식의 실수 근과 허수근을 포함하는 열 벡터입니다. 예를 들어 2 차 다항식의 근을 찾아 봅시다 : 2x ^ 2-3x + 6 = 0. 다항식을 정의해야합니다. 아래 코드를 참조하십시오.

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

출력:

p_roots =
 
 0.75 - 1.6i
 0.75 + 1.6i

위의 코드에서 전체 다항식을 정의하고vpa()함수를 사용하여 결과의 ​​정밀도를 변경했습니다. 주어진 다항식에 따라 다항식을 변경하고 요구 사항에 따라 정밀도를 변경할 수 있습니다. 4 차 다항식의 근을 찾아 봅시다 : 2x ^ 4 + 1 = 0. 아래 코드를보세요.

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

출력:

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

위 코드에서 전체 다항식을 정의하고vpa()함수를 사용하여 결과의 ​​정밀도를 변경했습니다. 주어진 다항식에 따라 다항식을 변경하고 요구 사항에 따라 정밀도를 변경할 수 있습니다.

작가: 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