4. Symbolic 계산
가. 함수
1. 계산: diff(미분), int(적분), limit(극한값), taylor(Taylor급수), jacobian(Jacobian 행렬), symsum(합)
2. 선형 대수: inv(역행렬), det(행렬식), rank(행렬의 계수), null(null space를 위한 basis를 계산),
rref(행렬을 reduced row echelon form으로 만듦), eig(고유치와 고유벡터)
3. 간략화: simplify(수식의 간략화), expand(수식의 전개), simple(Symbolic으로 된 수식의 가장
간단한 형태를 찾음), subs(Symbolic으로 된 수식의 변수 갱신)
4. 방정식의 해: solve(대수 방정식), dsolve(미분 방정식), finverse(역함수)
5. 적분변환: fourier, laplace, ztrans, ifourier, ilaplace, iztrans
6. 데이터형 변환: double(Symbolic 데이터를 수치 데이터로 변환), char(Symbolic 데이터를
문자열로 변환)
7. 기초 연산: sym(symbolic 객체 생성), syms(Symbolic 객체 생성 단축형), findsym(Symbolic
객체 인지를 조사), pretty(Symbolic 수식을 보기 좋은 형태로 출력),
latex(Symbolic 수식을 LaTex로 표현), ccode(C언어로 표현), fortran(Fortran언어로 표현)
나. 생성과 연산: a=sym(‘x’) 또는 syms a 명령을 통해 symbolic a을 생성하고, 위 함수를 포함한 사칙연산을
수행할 수 있음. [참고] 수식 전개 함수: expand(f)
다. 그래프: ezplot(f) 또는 ezplot(f,[a b])
예제 1) 예제 2)
>> syms x >> syms x y
>> f=1/(1+x*cos(x)+exp(x)); >> f=x^2/16 – y^2/9-1;
>> ezplot(f) >> ezplot(f,[-15 15])

라. Symbolic를 수치 데이터로 변환
1. subs: symbolic 변수 대신에 수치를 대입하여 수치 데이터로 변환
예) syms x; A=cos(x); x=30*pi/180; subs(A);
2. double: symbolic 변수가 없는 symbolic 데이터를 수치 데이터로 변환
예) syms x; f=cos(x)-0.5; solve(f,x); double(ans);
안녕하십니까? 정리 하신걸 보니 고수이신듯하여 염체불구하고 이렇게 모르는것이 있어서 글씁니다.
매트랩을 이용하여 역함수를 구하려고 합니다qq9481@postech.ac.kr입니다.
식은 y=a*x^(2*n)+b*x 이고 n의 범위는 0
매트랩을 많이 이용해보지 않아서…
처음 접해본 내용이라 검색을 해보았는데 명쾌한 답은 없는거 같네요.
물어보신 대로 돌려보니까 RootOf(a*_Z^(2*n)+b*_Z-x) 이렇게 나오는데요.
이 부분에서 _Z가 찾으려는 역함수에 해당하는 변수로 보입니다.
근데 값들이 변수로 이루어져서 저렇게 나온거 같구요.
값이 숫자로 들어갈 경우는 제대로 된 값이 나오는 것으로 보입니다.
일단 의미는 Rootof 안의 식을 0으로 만족하는 _Z가 찾으려는 역함수라고 이해하시면 되구요.
예를 들어서 설명을 드려보겠습니다.
일단 가장 쉬운 예로 a=1, b=0, n=1 이라고 하면 y=x^2가 되고,
이 함수의 역함수는 y=x^(1/2)가 됩니다.
그러면 matlab에서 구한 식을 토대로 변수를 대입한다면,
_Z^2-x = 0을 만족하는 _Z가 되겠지요. 이항해서 계산한다면
_Z는 x^(1/2)가 나온다는 것을 알 수 있습니다.