저는 s- 도메인에서 방정식 시스템을 풀려고합니다. 따라서이 방정식 시스템을 매트릭스 형태로 설정하십시오 :matlab에 불특정 상수를 사용합니다.
a=[.4*s+s+5 -5; -5 .5*s+5]
c=[3/s; 3/(2*s)]
(1/s)*a*b=c
s가 정의되지 않았다는 오류가 나타납니다. s의 관점에서 b를 어떻게 풀 수 있습니까?
저는 s- 도메인에서 방정식 시스템을 풀려고합니다. 따라서이 방정식 시스템을 매트릭스 형태로 설정하십시오 :matlab에 불특정 상수를 사용합니다.
a=[.4*s+s+5 -5; -5 .5*s+5]
c=[3/s; 3/(2*s)]
(1/s)*a*b=c
s가 정의되지 않았다는 오류가 나타납니다. s의 관점에서 b를 어떻게 풀 수 있습니까?
Matlab은 (자연스럽게) 기호 계산을하지 않습니다. 이것이 여러분의 코드가 시도하는 것입니다. Matlab의 변수는 구체적인 숫자, 배열 또는 구조 등일 필요가 있습니다. 임의의 숫자에 대한 자리 표시자가 될 수 없습니다.
는은 (하지 않는 한 :.. 당신은 matlab에 대한 symbolic computing toolbox을 사용 나는 그런 메이플 또는 티카와 같은 환경에서 상징적 인 컴퓨팅을 선호하기 때문에 난 정말 당신은 심지어 볼프람 알파 웹 사이트에서 문제를 해결할 수있는이 사용하지 않은)
하지만 컴퓨팅, s의 특정 값을 선택하면 당신이 원하는 것은 간단하다
내가 선형 반전을 수행하기위한 backslash operator을 사용했다s = 5;
a=[.4*s+s+5 -5; -5 .5*s+5];
c=[3/s; 3/(2*s)];
b = s*(a\c);
.
는 이제(1/s)*a*b-c
제로 벡터 것을해야한다.
편집 : 나는 상징적 인 도구 상자를 들여다 보았다. 이다 상징적 연산자를 사용하여 계산을 수행 할 수
syms s;
a=[.4*s+s+5 -5; -5 .5*s+5];
c=[3/s; 3/(2*s)];
b = simple(s*(a\c))
코드를 : 이것이 당신이 원하는처럼 보이는 (하지만 당신은 그것이 작동하는 상징적 인 도구 상자가 라이센스를 설치해야합니다)
syms s; %This defines 's' as a symbolic token
a=[.4*s+s+5 -5; -5 .5*s+5]; %a and c inherit the symbolic properties from s
c=[3/s; 3/(2*s)];
result = solve('(1/s)*a*b=c','b') %Solve is the general symbolic toolbox algebraic solver.
이
result =
(c*s)/a
는 일반적 매트랩 수치 툴박스 최선 수행 생성한다. 따라서 응용 프로그램에 따라 Ian Hincks가 다른 답변에서 보여준 것과 같은 다른 접근 방식을 사용하게 될 것입니다. 그러나 때로는 상황이 상징적 인 해결책을 요구하기도합니다.
정확히 내가 뭘 찾고 있었는지, 고마워! –