Tìm hiểu về Function trong MATLAB

Function trong MATLAB có gì khác với với function trong những ngôn ngữ lập trình khác? Bài viết này sẽ trình bày một số nội dung liên quan đến Function và các loại Function trong MATLAB.

Function trong MATLAB là gì?

Function (Hàm) là một nhóm các câu lệnh cùng thực hiện một tác vụ. Trong MATLAB, các hàm được định nghĩa trong các tệp (file) riêng biệt. Tên của tệp và của hàm phải giống nhau.

Hàm hoạt động dựa trên các biến nằm trong vùng làm việc (workspace) của riêng chúng. Đây còn được gọi là vùng làm việc cục bộ. Nó khác với vùng làm việc mà bạn truy cập tại dấu nhắc lệnh MATLAB. Vùng này được gọi là vùng làm việc cơ sở.

Trong MATLAB, các hàm có thể nhận nhiều hơn một tham số (arguments) đầu vào. Tương tự, chúng cũng có thể trả về nhiều hơn một tham số đầu ra.

Cú pháp của một câu lệnh tạo hàm là:

function [out1,out2, …, outN] = myfun(in1,in2,in3, …, inN)
Minh họa về Function trong MATLAB (Nguồn: Mathworks.com)

Các loại Function trong MATLAB

Có một số loại hàm khả dụng trong MATLAB. Chúng bao gồm: hàm cục bộ (Local Functions), hàm lồng nhau (Nested Functions), hàm riêng tư (Private Functions) và hàm ẩn danh (Anonymous Functions).

1. Hàm ẩn danh

Có thể hiểu, loại hàm này giống như một hàm nội tuyến (inline function) trong các ngôn ngữ lập trình truyền thống.

Đây là loại hàm được định nghĩa trong một câu lệnh MATLAB duy nhất. Nó bao gồm một biểu thức (expression) MATLAB duy nhất và không hạn chế số lượng tham số đầu vào và đầu ra.

Có nhiều cách để bạn định nghĩa hàm ẩn danh. Bạn có thể định nghĩa ngay tại dòng lệnh của MATLAB, trong một hàm hoặc trong một đoạn lệnh (script). Bằng những cách này, bạn có thể tạo hàm mà không cần phải tạo tệp cho chúng.

Cú pháp để tạo một hàm ẩn danh từ một biểu thức là:

f = @(arglist)expression

2. Hàm cục bộ

Nếu một hàm không phải hàm ẩn danh, thì chúng phải được định nghĩa trong một tệp. Mỗi tệp hàm sẽ chứa một hàm chính (Primary Function) xuất hiện đầu tiên. Sau đó, tệp sẽ gồm bất kỳ hàm con (Sub-Function) tùy chọn nào được sử dụng.

Hàm chính có thể được gọi từ bất kỳ dòng lệnh hoặc hàm nào khác, ở ngoài tệp xác định chúng. Tuy nhiên, hàm con thì không giống vậy. Ta không thể gọi hàm con từ một dòng lệnh hoặc hàm nào nằm bên ngoài tệp hàm.

Hàm con chỉ hiển thị với hàm chính và hàm con khác nằm trong tệp hàm định nghĩa chúng.

3. Hàm lồng nhau

Bạn có thể định nghĩa các hàm bên trong phần nội dung của một hàm khác. Chúng được gọi là các hàm lồng nhau. Một hàm lồng nhau chứa một hoặc tất cả các thành phần của bất kỳ hàm nào khác.

Khi một hàm được định nghĩa bên trong một hàm khác, nó sẽ chia sẻ quyền truy cập vào vùng làm việc của hàm chứa nó.

Một hàm lồng nhau có thể được định nghĩa theo cú pháp sau:

Minh họa về hàm lồng nhau trong MATLAB

Trong ví dụ trên, chúng ta thầy rằng hàm y đang nằm trong nội dung của hàm x. Do đó, chúng được gọi là các hàm lồng nhau.

4. Hàm riêng tư

Đây là một hàm chính nhưng chỉ hiển thị cho một nhóm hàm giới hạn khác. Nếu bạn không muốn công khai việc triển khai hàm, bạn có thể tạo chúng dưới dạng các hàm riêng tư.

Hàm riêng tư sẽ nằm trong các thư mục con với tên đặc biệt là private. Chúng chỉ hiển thị với các hàm nằm trong thư mục mẹ.

Biến toàn cục và Function trong MATLAB

Điểm đặc biệt của biến toàn cục có thể được dùng chung bởi nhiều hơn một hàm. Để làm được điều này, bạn cần phải khai báo một biến là toàn cục trong tất cả các hàm của MATLAB.

Nếu bạn muốn truy cập biến đó từ vùng làm việc cơ sở, hãy khai báo biến ngay tại dòng lệnh.

Việc khai báo biến toàn cục phải được thực hiện trước khi sử dụng biến trong hàm. Thông thường, một cách hay là dùng chữ cái viết hoa cho tên biến toàn cục để phân biệt chúng với các biến thông thường khác.

Tóm lại, việc sử dụng hàm trong MATLAB cũng không quá phức tạp. Hy vọng qua bài viết này, bạn đã hiểu thêm về Function trong MATLAB và có cách để ứng dụng nó tốt hơn.


Tham khảo: Tutorialspoint.com.

Nếu bạn quan tâm, hãy xem các vị trí đang tuyển dụng của Got It tại: bit.ly/gotit-hanoi và đọc thêm về quy trình tuyển dụng tại đây.

https://vn.got-it.ai/blog/wp-content/uploads/2021/04/1_QAG9RXQyyMAY7i9OYo84FA.png
Got It Vietnam
February 06, 2021
Share this post to:
0 Comments
Inline Feedbacks
View all comments
Các bài viết liên quan
Hướng dẫn xóa 1 phần tử trong mảng của Python

Hướng dẫn xóa 1 phần tử trong mảng của Python

Nhiều bạn mới học lập trình sẽ không biết cách xóa 1 phần tử trong mảng của Python. Việc xoá phần tử sẽ trở nên dễ dàng hơn nếu bạn biết những phương thức phù hợp. Trong bài viết này, Got It sẽ chia sẻ tới bạn 4 cách để xóa 1 phần tử trong […]
Git và GitHub — liệu bạn đã thật sự biết cách sử dụng?

Git và GitHub — liệu bạn đã thật sự biết cách sử dụng?

Biến Git và GitHub trở thành công cụ đắc lực cùng Software Engineer nhà Got It!
CS Foundation 101 (P3): Làm thế nào để ghi điểm trong vòng phỏng vấn Competency tại Got It?

CS Foundation 101 (P3): Làm thế nào để ghi điểm trong vòng phỏng vấn Competency tại Got It?

Sau phần 1 và phần 2 của series CS Foundation 101, bạn đã biết được các khái niệm, sáu yếu tố quan trọng trong CS Foundation, cũng như những khóa học giúp nâng cao kiến thức CS Foundation.  Bài viết cuối của series sẽ chia sẻ tới các bạn một số điểm cần lưu ý […]
CS Foundation 101 (P2): Nguồn tài liệu tham khảo CS Foundation hay nhất

CS Foundation 101 (P2): Nguồn tài liệu tham khảo CS Foundation hay nhất

Thống kê cho thấy, tuy kiến thức nền tảng ngành Computer Science (CS Foundation) thường được dạy trong các tín chỉ tại các trường Đại học, Cao đẳng, nhưng có đến hơn 90% ứng viên đã từng “fail” Got It vì chưa nắm chắc CS Foundation. Nguyên nhân lớn nhất được các Engineer của Got […]
CS Foundation 101 (P1): CS Foundation là gì? 6 yếu tố bạn cần nắm vững là gì?

CS Foundation 101 (P1): CS Foundation là gì? 6 yếu tố bạn cần nắm vững là gì?

Theo thống kê, một năm Got It chỉ có thể tuyển khoảng 3% các ứng viên nộp CV đầu vào. Điều khiến 90% các bạn apply chưa vượt qua được vòng Competency chủ yếu là sự thiếu hụt kiến thức về Computer Science Foundation (CS Foundation). Không chỉ có Got It, các tập đoàn công […]
Hướng dẫn cài đặt Bugzilla trên Windows

Hướng dẫn cài đặt Bugzilla trên Windows

Bugzilla là một phần mềm đang được ưa chuộng và sử dụng bởi rất nhiều lập trình viên. Bài viết dưới đây sẽ hướng dẫn cài đặt Bugzilla trên Windows cho người mới bắt đầu, giúp bạn tạo ra một môi trường hoàn hảo cho công việc của mình. Mục lụcNhững đặc điểm nổi bật […]