이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
함수를 다른 함수에 입력값으로 전달하기
함수 핸들을 함수 함수(Function Functions)라고 하는 다른 함수에 대한 입력 인수로 사용할 수 있습니다. 이러한 함수는 특정 범위의 값에 대해 수학 표현식을 실행합니다. 일반적으로 함수 함수(Function Functions)에는 integral
, quad2d
, fzero
, fminbnd
등이 있습니다.
예를 들어, 0부터 5까지의 자연 로그에 대한 적분을 구하기 위해서는 log
함수에 대한 핸들을 integral
에 전달합니다.
a = 0; b = 5; q1 = integral(@log,a,b)
q1 = 3.0472
마찬가지로 sin
함수와 exp
함수의 적분을 구하기 위해서는 해당 함수에 대한 핸들을 integral
에 전달합니다.
q2 = integral(@sin,a,b)
q2 = 0.7163
q3 = integral(@exp,a,b)
q3 = 147.4132
익명 함수에 대한 핸들을 함수 함수에 전달할 수도 있습니다. 익명 함수는 프로그램 파일을 필요로 하지 않는, 단일 라인 표현식 기반 MATLAB® 함수입니다. 예를 들어, 다음과 같이 범위 [0,Inf]
에 대해 의 적분값을 계산합니다.
fun = @(x)x./(exp(x)-1); q4 = integral(fun,0,Inf)
q4 = 1.6449
입력값으로 함수를 받는 함수(함수 함수(Function Functions)라고 함)는 함수 핸들과 연결된 함수에 특정 숫자의 입력 변수가 있을 것으로 예상합니다. 예를 들어, integral
이나 fzero
를 호출하는 경우 함수 핸들과 연결된 함수에는 정확하게 하나의 입력 변수만 있어야 합니다. integral3
을 호출하는 경우 함수 핸들과 연결된 함수에는 세 개의 입력 변수가 있어야 합니다. 더 많은 변수가 있는 함수 함수(Function Functions)를 호출하는 방법에 대한 자세한 내용은 함수를 파라미터화하기 항목을 참조하십시오.