2014-05-13 4 views
0

모두 잘될 것입니다. 누구든지 MATLAB에서 2 개의 미지 변수를 포함하는 3 개의 방정식을 푸는데 도움을 줄 수 있습니까?2 개의 변수에 대해 Matlab에서 3 방정식을 푸십시오.

상징적 인 도구 상자를 사용해 보았지만 비어있는 솔루션을 제공합니다. Matlab 코드는 2 개의 방정식에만 작용합니다. 3 개의 방정식에 대해 그것은 나에게 빈 해결책을 준다.

방정식은 아래에 언급된다

cos^2(2\phi) cos(2\theta + sin(2\phi)cos(2\phi) sin(2\theta)=0  
sin(2\phi)cos(2\phi)cos(2\theta)+sin^2(2\phi)sin(2\theta)=0  
-sin(2\phi)cos(2\theta)+cos(2\phi)sin(2\theta)=0 

내가 thetaphi 위해 상기 수식을 해결하고자.

+1

방정식에 해답이 있다는 것을 알고 계십니까? – Aaron

+0

2 개의 미지수가 포함 된 방정식 2 개를 풀려고하면 어떻게됩니까? – shimizu

답변

1

는 사람이 matlab에 2 개 변수 3 EQ 해결을 도와 줄 수, 나는 상징적 인 도구 상자를 사용하여 많은 시도했지만 나에게 빈 솔루션을 제공합니다. Matlab 코드는 2 방정식에만 작용합니다. 세 방정식을 들어 비어있는 솔루션을 제공합니다.

가장 간단한 설명은 Matlab이 말하는 바가 정확하다는 것입니다. 세 방정식의 시스템에 대한 해결책은 없습니다.

어떤 일이 일어나는지 알 수있는 한 가지 방법은 세 방정식에 대한 솔루션을 개별적으로 계획하는 것입니다. 먼저 각 식을 가지고 매트랩 함수로 왼쪽을 정의

fun1 = @(phi, theta) cos(2*phi).^2 .* cos(2*theta)   + sin(2*phi) .* cos(2*phi) .* sin(2*theta); 
fun2 = @(phi, theta) sin(2*phi) .* cos(2*phi) .* cos(2*theta) + sin(2*phi).^2 .* sin(2*theta); 
fun3 = @(phi, theta) -sin(2*phi) .* cos(2*theta)    + cos(2*phi) .* sin(2*theta); 

이제 암시 적 기능 fun1(x,y)=0에 솔루션을 음모 ezplot(fun1)를 사용할 수 있습니다. 해는 (theta, phi) 평면에서 곡선이됩니다. fun2fun3에 대해서도 이렇게하면 동시 솔루션은 세 기능의 곡선이 동시에 교차하는 위치로 나타납니다.

나는 같은 축에 세 세 ezplot 플롯을 쌓아하는 방법을 몰라,하지만 우리는 같은 일을 수행 할 contour를 사용할 수 있습니다

x = linspace(-pi/2, pi/2, 180); 
y = linspace(-pi/2, pi/2, 180); 

[X, Y] = meshgrid(x, y); 

contour(X, Y, fun1(X, Y), [0, 0], 'r', 'linewidth', 3); 
hold all 
contour(X, Y, fun2(X, Y), [0, 0], 'b'); 
contour(X, Y, fun3(X, Y), [0, 0], 'g'); 
hold off 

legend('f_1(\theta,\phi)=0','f_2(\theta,\phi)=0','f_3(\theta,\phi)=0'); 
xlabel('\phi'); 
ylabel('\theta'); 

이 그래프 생성합니다

Matlab contour plot

우리는 빨강, 파랑, 녹색 곡선 (fun1(x,y)=0의 솔루션 fun2(x,y)=0에 해당하는 포인트가 없는지 확인하고 fun3(x,y)=0)가 동시에 교차합니다.

따라서 세 방정식의 시스템에는 해결책이 없습니다.

+0

최소 자승 감 (회귀)의 솔루션이있을 수 있습니다. – Trilarion

+0

OP가 분석 솔버를 사용하는 경우 이것이 그가 찾고있는 것이 아니라고 생각합니다. – nibot

관련 문제