2013-11-14 3 views
-3

MATLAB에서 소개 과정을 배우고 있습니다. (저는 초보자입니다) 행렬 방정식에 관한 문제를 해결하는 데 어려움을 겪고 있습니다.Matlab의 행렬 방정식

식은 I 행렬 X 대한 해결하고자

AX = C - BX 

이다. 아무리 내가 그것을 해결하려고해도 빈 손으로 또는 일종의 문법 오류가 발생합니다. 나는 근본적인 무언가를 놓치고 있다고 생각한다.

위 주제에 대한 도움을 주시면 감사하겠습니다.

+2

오류 코드와 함께 게시 한 코드가 – Bull

답변

2

이 방정식이 일치하려면 AB이 동일한 크기 여야합니다. A+B의 크기에 관계없이,이 항상 해결책을 찾을 것입니다

X = (A+B)\C 

참고 :이와 MATLAB에서 해결 될 수

(A+B)X = C 

: 따라서, 당신은 당신의 방정식을 다시 쓸 수 있습니다 :

  • A+B이 정사각형 인 경우 "the"해결책을 찾을 수 있습니다.
  • A+B이 초과/부족한 경우 X으로 최소 자승 근사값을 반환합니다.

원하는지 여부를 결정하는 것은 사용자의 책임입니다.

C이 0 인 경우 null (또는 svd)을 사용할 수 있습니다.

+0

@B ... 인 이유는 무엇입니까? : 그 이유는 무엇입니까? –

+0

@B ... 정확한 해결책 A와 B는 정사각형이어야하지만, A와 B가 열보다 많은 행을 가질 때 최소 제곱 해를 찾을 수 있습니다. – Shai

+0

@B ... : 'A = n × m'및 'X = m × p'라고 가정하고, 'AX = n × p'. 즉, 'C'는 'n × p'여야하기 때문에 'B'는 'n × m'이어야합니다. 'n','m'과'p'의 값에는 제한이 없습니다 ... –