근 구하기
함수의 근은 함수가 0이 되는 값입니다.
• polyroots(v) - 계수가 v에 있는 다항식의 근이 포함된 벡터를 구합니다.
기본적으로 polyroots는 반복 처리를 통해 복소 평면에서 해를 검색하는 라게르 방법을 사용합니다.
• root(f(var1, var2, ...), var1, [a, b]) - f를 0으로 만드는 var1의 값을 구합니다. a 및 b가 지정되면 root는 구간 [a, b]에서 var1을 찾습니다. 그렇지 않으면 root를 호출하기 전에 추측값으로 var1을 정의해야 합니다. 추측값이 사용되면 root는 Secant 또는 Mueller 방법을 사용하고, 근 괄호가 사용되면 root는 Ridder 또는 Brent 방법을 사용합니다.
인수
• f는 임의 개수의 변수를 사용하고 스칼라 값을 갖는 함수입니다.
• var1은 f에서 구한 스칼라 변수로, 근을 구하는 데 기준이 되는 변수입니다. 복소수 근을 구하려면 복소수 추측값을 정의하십시오.
• a, b (선택 사항)는 실수이고, a < b이며 f(a) 및 f(b)의 부호는 반대입니다. root는 구간 a≤x ≤ b에서 근을 찾습니다.
root 함수의 기호 연산을 수행하려면 범위 인수 [a, b]를 지정해야 합니다.
• v는 첫 번째 요소가 상수항인 다항식의 계수가 포함된 벡터이며
2 ≤ length(v) ≤ 99의 관계가 성립됩니다.
추가 정보
• 리본에서 root 함수를 삽입하면 자동으로 키워드 레이블이 할당됩니다.
• root 함수는 미지수가 하나인 단일 방정식만 풀 수 있습니다. 여러 방정식을 동시에 풀려면
find 또는
minerr을 사용하십시오.
• root 함수는 TOL에 따라 달라지지만 10-5보다 큰 TOL에는 응답하지 않습니다. 이 값은 최대 수렴 조건입니다. 또한, 10-12보다 작은 TOL 값은 양호한 결과를 생성하지 못하며, 알고리즘이 수렴하지 못할 수 있습니다.
• 중근이 존재하는 함수의 경우 구해지는 근은 추측값에 따라 결정됩니다. 추측값이 f의 최소값이나 최대값에 매우 가까우면 root 함수가 수렴하지 못하거나 추측값에서 먼 근으로 수렴할 수 있습니다. 적절한 추측값이나 괄호를 선택하면 함수를 그래프로 미리 표시하는 데 도움이 됩니다.
• 함수의 변화가 빠르면 실수 결과가 예상되는 경우에도 근 풀이에서 작은 복소수 부분을 반환할 수 있습니다.
• f(x) = g(x) 형식의 방정식을 풀려면 x0 := root(f(x) − g(x), x) 같은 식을 사용합니다.
• 알려진 근 r이 있는 식 f(x)의 경우 f(x)의 추가 근을 푸는 것은 h(x) = f(x) / (x − r).의 근을 푸는 것과 동일합니다. 이와 같이 알려진 근을 나누면 한데 모여 있는 두 근을 확인하는 데 유용합니다. 다른 추측값을 사용하여 f(x)의 다른 근을 구하는 것보다 여기서 정의한 대로 h(x)의 근을 구하는 것이 더 쉬울 때가 많습니다.
• f(x)의 근 근처에서 기울기가 작으면 root(f(x), x)는 실제 근에서 상대적으로 먼 r 값으로 수렴할 수 있습니다. 이와 같은 경우 |f(r)|< TOL인 경우에도 r이 f(r) = 0인 점에서 멀리 있을 수 있습니다. 더 정확한 근을 구하려면 TOL 값을 줄입니다. 또는 root(g(x),x)를 구합니다. 여기서 g(x) = [f(x))]/[(d/dx)*f(x)])입니다.
• 다음과 같은 경우 root 함수가 수렴하지 못하거나 예기치 않은 근으로 수렴하게 될 수 있습니다.
◦ 식에 대한 근이 없습니다.
◦ 근이 초기 추측값에서 너무 멀리 떨어져 있습니다.
◦ 추측값과 근 사이에 국부적 최대값, 국부적 최소값 또는 불연속성이 있습니다.
◦ 추측값이 함수 f의 최소값이나 최대값에 지나치게 가깝습니다.
◦ 식의 근은 복소수인데 초기 추측값이 실수이거나 그 반대의 경우입니다.
◦ 간격이 가까운 근이 여러 개 있습니다. TOL의 값을 줄여 근 사이를 구분해 보십시오.
◦ 평평한 함수 영역에 근이 있습니다. 이런 경우 TOL의 값을 줄이거나 첫 도함수로 나눈 f(x) 함수의 근을 구해 보십시오.