گاهی یک تابع MATLAB را در یک کد میبینیم، اما نمیدانیم این تابع جزو خود MATLAB است یا به یک Toolbox خاص تعلق دارد.
یک روش سریع استفاده از دستور which است.
مثلاً برای تابع fft بنویسید:
which fft
MATLAB مسیر فایلی را که این تابع از آن اجرا میشود نمایش میدهد. از روی این مسیر معمولاً میتوان متوجه شد تابع مربوط به کدام بخش یا Toolbox است. دستور which در واقع محل تابع یا فایل را در MATLAB Path پیدا میکند.
برای مثال اگر بخواهید تمام نسخههای موجود از یک تابع را ببینید، از -all استفاده کنید:
which fft -all
این حالت زمانی مفید است که چند تابع با نام یکسان روی سیستم وجود داشته باشد.
روش دقیقتر برای پیدا کردن Toolbox
اگر میخواهید بدانید یک تابع یا فایل MATLAB به چه محصولات و Toolboxهایی وابسته است، میتوانید از دستور زیر استفاده کنید:
[fList,pList] = matlab.codetools.requiredFilesAndProducts('edge.m');
سپس نام محصولات موردنیاز را نمایش دهید:
{pList.Name}'
برای مثال، تابع edge میتواند خروجیای شامل موارد زیر داشته باشد:
MATLAB
Image Processing Toolbox
تابع matlab.codetools.requiredFilesAndProducts دقیقاً برای شناسایی فایلها و محصولات MathWorks موردنیاز یک برنامه طراحی شده است.
نکته
برای یک بررسی سریع معمولاً همین دستور کافی است:
which functionName -all
اما اگر قصد دارید بفهمید یک برنامه کامل MATLAB به چه Toolboxهایی نیاز دارد، requiredFilesAndProducts انتخاب مناسبتری است.