MATLAB 도움말 센터
기호 함수 만들기
f(inputs) = formula
f = symfun(formula,inputs)
f = symfun(fM)
f(inputs) = formula는 기호 함수 f를 만듭니다. 예를 들어, f(x,y) = x + y를 만듭니다. inputs의 기호 변수는 입력 인수입니다. 기호 표현식 formula는 함수 f의 본문입니다.
f
inputs
formula
f(x,y) = x + y
예제
f = symfun(formula,inputs)는 기호 함수를 만드는 공식적인 방법입니다.
f = symfun(fM)은 symfunmatrix 유형의 기호 행렬 함수 fM을 symfun 유형의 기호 함수 f로 변환합니다. (R2024b 이후)
fM
symfunmatrix
symfun
모두 축소
기호 함수 f(x,y) = x + y를 정의합니다. 먼저 syms를 사용하여 함수를 만듭니다. 그런 다음 함수를 정의합니다.
syms
syms f(x,y) f(x,y) = x + y
f(x, y) = x+y
x = 1 및 y = 2에서 f 값을 구합니다.
x = 1
y = 2
f(1,2)
ans = 3
공식적인 구문을 사용하여 함수를 다시 정의합니다.
syms x y f = symfun(x+y,[x y])
formula를 사용하여 기호 함수의 본문을 반환합니다. 함수의 요소를 참조하는 것과 같은 작업에 본문을 사용할 수 있습니다. argnames를 사용하여 기호 함수의 인수를 반환합니다.
argnames
기호 함수 [x^2, y^4]의 요소를 참조합니다. 기호 함수는 스칼라이므로 함수를 직접 참조할 수 없습니다. 대신 함수의 본문을 참조합니다.
[x^2, y^4]
syms f(x,y) f(x,y) = [x^2, y^4]; fbody = formula(f); fbody(1)
ans = x2
fbody(2)
ans = y4
함수의 인수를 반환합니다.
fvars = argnames(f)
fvars = (xy)
두 개의 기호 함수를 만듭니다.
syms f(x) g(x) f(x) = 2*x^2 - x; g(x) = 3*x^2 + 2*x;
두 기호 함수를 symfun 데이터형의 또 다른 기호 함수 h(x)로 결합합니다.
h(x) = [f(x); g(x)]
h(x) = (2 x2-x3 x2+2 x)
(2 x2-x3 x2+2 x)
x=1과 x=2일 때 함수 h(x)를 계산합니다.
h(1)
ans = (15)
(15)
h(2)
ans = (616)
(616)
sym 데이터형의 기호 표현식으로 구성된 배열로 두 함수를 결합할 수도 있습니다.
sym
h_expr = [f(x); g(x)]
h_expr = (2 x2-x3 x2+2 x)
첫 번째와 두 번째 기호 표현식에 액세스하려면 h_expr의 요소를 참조하십시오.
h_expr
h_expr(1)
ans = 2 x2-x
h_expr(2)
ans = 3 x2+2 x
R2024b 이후
행렬 X와 A를 나타내는 2×1 및 2×2 기호 행렬 변수를 만듭니다.
2
1
syms X [2 1] matrix syms A [2 2] matrix
함수 F(X,A)와 ∂F(X,A)/∂XT를 나타내는 두 개의 기호 행렬 함수를 만듭니다. 기호 행렬 함수를 만들 때는 작업 공간에서 기호 행렬 변수 X 및 A의 기존 정의를 유지하십시오. 기호 행렬 함수에는 입력 인수로 X 및 A와 동일한 크기의 행렬들이 필요합니다.
syms F(X,A) [1 1] matrix keepargs syms dF(X,A) [2 1] matrix keepargs
함수 F(X,A)=XT A X를 정의하고 이 함수의 도함수 ∂F(X,A)/∂XT를 구합니다. 결과로 생성되는 기호 행렬 함수는 X 및 A에 대해 행렬 표기법으로 표시됩니다.
F(X,A) = X.'*A*X
F(X, A) = XT A X
dF(X,A) = diff(F,X.')
dF(X, A) = A X+AT X
데이터형 symfunmatrix에서 symfun으로 기호 행렬 함수를 변환합니다. 결과로 생성되는 기호 함수는 X 및 A의 행렬 요소에 대해 스칼라 표기법으로 표시됩니다. 이러한 함수는 스칼라를 입력 인수로 받습니다.
Fsymfun = symfun(F)
Fsymfun(X1, X2, A1_1, A1_2, A2_1, A2_2) = X1 A1,1 X1+A1,2 X2+X2 A2,1 X1+A2,2 X2
dFsymfun = symfun(dF)
dFsymfun(X1, X2, A1_1, A1_2, A2_1, A2_2) = (2 A1,1 X1+A1,2 X2+A2,1 X2A1,2 X1+A2,1 X1+2 A2,2 X2)
(2 A1,1 X1+A1,2 X2+A2,1 X2A1,2 X1+A2,1 X1+2 A2,2 X2)
함수 본문으로, sym 데이터형으로 변환할 수 있는 기호 표현식, 기호 표현식으로 구성된 벡터 또는 기호 표현식으로 구성된 행렬로 지정됩니다.
예: x + y
x + y
함수의 입력 인수로, 기호 변수 또는 기호 변수로 구성된 배열로 지정됩니다.
예: [x,y]
[x,y]
데이터형: sym
변환할 기호 행렬 함수로, 기호 행렬 함수로 지정됩니다.
또는 symfunmatrix2symfun을 사용하여 기호 행렬 함수를 기호 함수로 변환할 수 있습니다.
symfunmatrix2symfun
데이터형: symfunmatrix
기호 함수로, symfun 객체로 반환됩니다.
함수 f의 데이터형은 symfun인 반면, f(1,2)와 같이 계산된 함수의 데이터형은 sym입니다.
모두 확장
symfun을 사용하여 symfunmatrix 유형의 기호 행렬 함수를 symfun 유형의 기호 함수로 변환할 수 있습니다. 예제는 기호 행렬 함수를 기호 함수로 변환하기 항목을 참조하십시오.
argnames | formula | matlabFunction | sym | syms | symvar
matlabFunction
symvar
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 사이트 방문이 최적화되지 않았습니다.
미주
유럽
아시아 태평양
지역별 지사에 문의