Matlab의 sqrt에서 양수와 음수를 모두 얻을 수있는 방법을 알고 싶습니다. 예를 들어 Matlab의 sqrt 이중 솔루션?
내가있는 경우 : 가sin(a) = sqrt(1-cos(a)^2);
Matlab의 sqrt에서 양수와 음수를 모두 얻을 수있는 방법을 알고 싶습니다. 예를 들어 Matlab의 sqrt 이중 솔루션?
내가있는 경우 : 가sin(a) = sqrt(1-cos(a)^2);
MATLAB (및 내가 알고있는 모든 프로그래밍 언어)은 sqrt(x)
또는 이와 동등한 번호를 호출 할 때 x
의 principal square root만을 반환합니다.
당신은 전체 솔루션을 작성하기위한 단지 속기, 당신은 좋겠 MATLAB에서
s = {+√x -√x}
을 설정입니다
s = ±√x
입니다 에게 수학적으로 x
의 제곱근을 써서 어떻게 이 마지막 사례와 동일하게 작성하지만 구문은 약간 다르지만 구문은 약간 다릅니다.
s = [+sqrt(x) -sqrt(x)]
당신이
sqrt
"외부 요인"경우보다 효율적으로 계산할 수3210
:
s = sqrt(x) * [1 -1]
따라서, 귀하의 경우에,
s = sqrt(1-cos(a)^2) * [1 -1]
또는, 만약 당신이 그렇게 욕망,
s = sin(acos(a)) * [1 -1]
다소 느리지 만 읽기 쉽습니다 (실제로는 좀 더 정확합니다).
어떻게 든 누구의 몫 당신의 코사인 값에서 결과 구성 요소를 찾을 수 있다면 지금은 물론, 당신은 물론 ....
docs 항상에만 긍정적 인 제곱근을 제공하지만, 당신이 부정적인 광장을 얻을 수있는 경우에 공정한 가정처럼 보인다 대한 구체적인 아무 말도하지 않는다 아주 쉽게이 같은 :
p = sqrt(1-cos(a)^2);
n = -sqrt(1-cos(a)^2);
BTW 그런
sin(a)
에 할당
많은 possib로 이어지는 sin
기능을 숨길 수 sin
라는 변수를 만들 것입니다 르 오류 때문에 다른 변수 이름을 선택하는 것이 좋습니다.
죄송합니다. 아마도 내가 잘못된 방법으로 질문했을 것입니다. 로봇의 역 기구학을 연구 중이며 이미 cos_a (a가 아님) 값을 가지고 있습니다. sin_a 값을 찾아야합니다. 나는 그것들이 함수가 아니라 변수라는 것을 보여주기 위해 그것들을 다시 썼다. 노트 Dan에 감사한다. – Spyros
sqrt
은 방정식을 풀지 않으며 수치 출력 만 제공합니다. 방정식을 필요에 따라 공식화해야하며, sqrt(...)
-1*sqrt(...)
을 사용하면 양수 및 음수 출력을 얻을 수 있습니다.
그래서 무엇의 모든 지저분한 사업 처리하지 것이다 이 예제에서 얻을 것으로 예상되는 결과는 무엇입니까? –