MATLAB 도움말 센터
기호 표현식을 공통 하위 표현식으로 재작성
[r,sigma] = subexpr(expr)
[r,var] = subexpr(expr,'var')
[r,var] = subexpr(expr,var)
[r,sigma] = subexpr(expr)은 기호 표현식 expr을 공통 하위 표현식으로 재작성하여 이 공통 하위 표현식에 기호 변수 sigma를 대입합니다. 입력 표현식 expr에는 변수 sigma를 포함할 수 없습니다.
r
expr
sigma
예제
[r,var] = subexpr(expr,'var')은 공통 하위 표현식에 var을 대입합니다. 입력 표현식 expr에는 기호 변수 var을 포함할 수 없습니다.
var
[r,var] = subexpr(expr,var)은 [r,var] = subexpr(expr,'var')과 동일하되, 기호 변수 var이 MATLAB® 작업 공간에 미리 있어야 한다는 점만 다릅니다.
이 구문은 변수 var의 값을 expr에서 찾은 공통 하위 표현식으로 덮어씁니다. 변수 var의 값을 덮어 쓰지 않도록 하려면 두 번째 출력 인수에 다른 변수 이름을 사용하십시오. 예를 들어, [r,var1] = subexpr(expr,var)을 사용합니다.
[r,var1] = subexpr(expr,var)
모두 축소
아래의 방정식을 풉니다. 해가 매우 긴 표현식입니다. 해를 표시하려면 solve 명령 끝의 세미콜론을 제거하십시오.
solve
syms a b c d x solutions = solve(a*x^3 + b*x^2 + c*x + d == 0, x, 'MaxDegree', 3);
이 긴 표현식에 공통 하위 표현식이 있습니다. 표현식을 줄이기 위해 subexpr을 사용하여 공통 하위 표현식을 축약합니다. 축약에 사용할 변수를 subexpr의 두 번째 입력 인수로 지정하지 않으면 subexpr이 변수 sigma를 사용합니다.
subexpr
[r, sigma] = subexpr(solutions)
r = (σ-b3 a-σ2σσ22 σ-b3 a-σ2-σ1σ22 σ-b3 a-σ2+σ1)where σ1=3 σ+σ2σ i2 σ2=c3 a-b29 a2
(σ-b3 a-σ2σσ22 σ-b3 a-σ2-σ1σ22 σ-b3 a-σ2+σ1)where σ1=3 σ+σ2σ i2 σ2=c3 a-b29 a2
sigma = d2 a+b327 a3-b c6 a22+c3 a-b29 a23-b327 a3-d2 a+b c6 a21/3
d2 a+b327 a3-b c6 a22+c3 a-b29 a23-b327 a3-d2 a+b c6 a21/3
2차 방정식을 풉니다.
syms a b c x solutions = solve(a*x^2 + b*x + c == 0, x)
solutions = (-b+b2-4 a c2 a-b-b2-4 a c2 a)
(-b+b2-4 a c2 a-b-b2-4 a c2 a)
syms를 사용하여 기호 변수 s를 만든 다음, 결과에서 공통 하위 표현식을 이 변수로 바꿉니다.
syms
s
syms s [abbrSolutions,s] = subexpr(solutions,s)
abbrSolutions = (-b+s2 a-b-s2 a)
(-b+s2 a-b-s2 a)
s = b2-4 a c
또는 's'를 사용하여 축약형 변수를 지정합니다.
's'
[abbrSolutions,s] = subexpr(solutions,'s')
두 구문 모두 변수 s의 값을 공통 하위 표현식으로 덮어씁니다. 따라서 s에 어떤 값을 대입하는 것과 같은 작업을 수행할 수 없습니다.
subs(abbrSolutions,s,0)
ans = (-b+s2 a-b-s2 a)
변수 s의 값을 덮어 쓰지 않도록 하려면 두 번째 출력 인수에 다른 변수 이름을 사용합니다.
syms s [abbrSolutions,t] = subexpr(solutions,'s')
t = b2-4 a c
ans = (-b2 a-b2 a)
(-b2 a-b2 a)
공통 하위 표현식을 포함하는 긴 표현식으로, 기호 표현식 또는 기호 함수로 지정됩니다.
공통 하위 표현식을 대입하는 데 사용할 변수로, 문자형 벡터 또는 기호 변수로 지정됩니다.
입력 표현식 expr에 이미 var이 포함되어 있으면 subexpr은 오류를 발생시킵니다.
축약형으로 바꾼 공통 하위 표현식이 있는 표현식으로, 기호 표현식 또는 기호 함수로 반환됩니다.
축약형에 사용되는 변수로, 기호 변수로 반환됩니다.
R2006a 이전에 개발됨
children | simplify | subs
children
simplify
subs
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
유럽
아시아 태평양
지역별 지사에 문의