2011-11-05 2 views
4

Mathematica에서, 매개 변수가 범위 내에서 변경되는 다항식의 일부 조건을 검사하려고했습니다. 나의 계산은 5 차이지만 나는 나의 요구를 보여주기 위해 간단한 것을 만들었다.실수 (비 정수) 계수를 갖는 다항식의 결과가 감소합니다.

매개 변수로 정수가있는 다항식을 만들 때 Reduce을 사용하면 올바른 답을 얻을 수 있습니다.

하지만 다항식의 실수를 사용하는 경우, Reduce 작동이 오류 제공하지 않습니다

Reduce was unable to solve the system with inexact coefficients. The answer was obtained by solving a corresponding exact system and numericizing the result.

사람이 도와 줄 수 있습니까?

enter image description here

+1

나에게 잘 어울립니다 ... 당신이 예상했던 답변은 무엇입니까? – abcd

+0

"Reduce : ratnz"오류가 표시되지 않을 것으로 예상됩니다. 그 결과에 대해 궁금해하게 만듭니다. – trante

답변

10

Reduce::ratnz 메시지가 하지 오류 만, 경고 메시지입니다. 당신이 메시지에 짜증하는 경우, 당신은 바꿀 수,

This message is often generated when the first argument in Reduce includes inexact numbers. [...] The warning message can be avoided by using only exact numbers in the input to Reduce

을 이제 : 시스템에 표시 무엇이든 More 링크 나 >>, 클릭하면, 그것은 밝히는는 documentation에 당신을 데려 갈 것이다

Off[Reduce::ratnz] 

를 사용하여 메시지 오프 Reduce모든 더 사용에 대한 경고를 끄거나 간단히 사용하여이 작업을 침묵 할 수있는

[email protected][...] 

으로 메시지를 보내지 않으려면 메시지를 읽은 다음 설명서에 나와있는대로 정확한 숫자를 사용해야합니다. 한 가지 방법은 Rationalize을 사용하는 것입니다. 예 :

x = 1.391 + 0.771 a; 
Reduce[Rationalize[x] > 0 && 1 <= a <= 80, {a}] 

Out[1]= 1 <= a <= 80 

경고없이 원하는 결과를 얻을 수 있습니다. 정확히 무엇을하고 있는지에 따라 다른 방법이있을 수 있지만 정확한 표현을 모른 채 말하기는 어렵습니다. 희망이 도움이되었습니다.

+0

대단히 감사합니다. – trante