Ngôn ngữ lập trình Matlab. Mô tả ngắn gọn về MATLAB

Hầu hết các nhà phát triển đều gặp khó khăn trong việc hiểu cả cú pháp và khả năng của nó. Vấn đề là ngôn ngữ này có liên quan trực tiếp đến một sản phẩm phần mềm phổ biến, giá thành của nó có thể đạt tới những giá trị đáng kinh ngạc. Vì vậy, câu hỏi chính là: bản thân ngôn ngữ Matlab có tốt không? Và nó có thể hữu ích cho bạn không?

Cách sử dụng

Hãy bắt đầu không phải bằng một chuyến tham quan thông thường vào lịch sử và thảo luận về ưu và nhược điểm của ngôn ngữ mà với môi trường phần mềm MATLAB/Simulink - nơi duy nhất mà nhân vật chính của văn bản này có thể hữu ích. Chỉ cần tưởng tượng một biên tập viên đồ họa trong đó bạn có thể hiện thực hóa bất kỳ ý tưởng nào của mình mà không cần có nhiều năm kinh nghiệm và trình độ học vấn phù hợp. Và sau khi tạo sơ đồ tương tác giữa các công cụ một lần, bạn sẽ có được một tập lệnh chất lượng cao để sử dụng nhiều lần.

MATLAB chính là một trình soạn thảo như vậy trong thế giới dữ liệu. Phạm vi ứng dụng của nó là vô cùng rộng: IoT, tài chính, y học, không gian, tự động hóa, robot, hệ thống không dây và rất nhiều người khác. Nhìn chung, khả năng thu thập và trực quan hóa dữ liệu cũng như dự báo gần như không giới hạn, nhưng chỉ khi bạn có cơ hội mua gói thích hợp.

Về giá cả, hầu như không có giới hạn trên, nhưng giới hạn dưới là khoảng 99 USD. Để có được một sản phẩm mạnh mẽ như vậy với số tiền tương đối ít, bạn phải là sinh viên đại học. Và tất nhiên bạn sẽ nhận được một sản phẩm khá hạn chế.

Đặc điểm của ngôn ngữ

Ngôn ngữ MATLAB là một công cụ đảm bảo sự tương tác của người vận hành (thậm chí thường không phải là lập trình viên) với tất cả cơ hội có sẵn phân tích, thu thập và trình bày dữ liệu. Nó có những ưu và nhược điểm rõ ràng, đặc trưng của một ngôn ngữ sống trong một hệ sinh thái khép kín.

Sai sót:

    Một ngôn ngữ chậm và quá tải với các toán tử, lệnh và chức năng, mục đích chính là cải thiện nhận thức trực quan.

    Tập trung hẹp. Không còn nữa nền tảng phần mềm, trong đó MATLAB sẽ hữu ích.

    Chi phí phần mềm cao. Nếu bạn không phải là sinh viên, hãy sẵn sàng rỗng túi hoặc vượt qua luật pháp. Và dù bạn là sinh viên thì giá cả cũng khá ổn.

    Nhu cầu thấp. Mặc dù có sự quan tâm lớn đến MATLAB trong hầu hết mọi lĩnh vực nhưng chỉ có một số ít sử dụng nó một cách thực sự và hợp pháp.

Thuận lợi:

    Ngôn ngữ này dễ học và có cú pháp đơn giản và dễ hiểu.

    Cơ hội lớn. Nhưng đây đúng hơn là một lợi thế của sản phẩm nói chung.

    Cập nhật thường xuyên, những chuyển đổi tích cực đáng chú ý thường xảy ra ít nhất một vài lần trong năm.

    Môi trường phần mềm cho phép bạn chuyển đổi nó thành mã “nhanh” trong C, C++.

Các đối tượng mục tiêu

Tất nhiên, không phải ai cũng cần MATLAB. Mặc dù có nhiều ứng dụng nhưng thật khó để tưởng tượng rằng một nhà phát triển ứng dụng bình thường lại cần kiến ​​thức về ngôn ngữ này. MATLAB cực kỳ hữu ích trong các lĩnh vực yêu cầu xử lý dữ liệu đặc biệt mạnh mẽ, chẳng hạn như hệ thống lái tự động trên ô tô hoặc phương tiện trên xe. hệ thống điện tử Máy bay.

Nghĩa là, nếu bạn không phải là một lập trình viên chuyên nghiệp, nhưng bằng cách này hay cách khác, nghề nghiệp của bạn có liên quan đến nhu cầu xử lý dữ liệu theo chương trình, thì một sản phẩm MATLAB/Simulink với ngôn ngữ thích hợp có thể đơn giản hóa đáng kể công việc hàng ngày của bạn.

Văn học

Như mọi khi, chúng tôi kết thúc việc xem xét ngôn ngữ bằng một danh sách các tài liệu giáo dục. Tất nhiên, trong số đó bạn sẽ không tìm thấy những cuốn sách dành riêng cho ngôn ngữ này, nhưng điều này sẽ chỉ giúp việc nhận thức ngôn ngữ trở nên dễ dàng hơn:

Bạn có kinh nghiệm với MATLAB không? Và cái nào?

Dành cho những ai muốn trở thành lập trình viên - .

1. Bài 23. Giới thiệu các gói mở rộng MATLAB

Bài học số 23.

Giới thiệu về gói mở rộng MATLAB

    Liệt kê các gói mở rộng

    Simulinc cho Windows

    Gói toán tượng trưng

    Gói toán học

    Gói phân tích, tổng hợp hệ thống điều khiển

    Gói nhận dạng hệ thống

    Công cụ Simulinc bổ sung

    Gói xử lý tín hiệu và hình ảnh

    Các gói khác chương trình ứng dụng

Trong bài học này, chúng ta sẽ làm quen ngắn gọn với các phương tiện chính để mở rộng chuyên môn của hệ thống và sự thích ứng của nó để giải quyết một số loại vấn đề toán học, khoa học và kỹ thuật nhất định - với các gói mở rộng cho hệ thống MATLAB. Chắc chắn rằng ít nhất một phần của các gói này nên được dành cho một khóa đào tạo hoặc sách tham khảo riêng biệt, có thể nhiều hơn một. Các cuốn sách riêng biệt đã được xuất bản ở nước ngoài về hầu hết các phần mở rộng này và khối lượng tài liệu về chúng lên tới hàng trăm megabyte. Thật không may, phạm vi của cuốn sách này chỉ cho phép xem qua các gói mở rộng một cách ngắn gọn để cung cấp cho người đọc ý tưởng về các hướng mà hệ thống đang phát triển.

2. Danh sách các gói mở rộng

Liệt kê các gói mở rộng

Thành phần hoàn chỉnh của hệ thống MATLAB 6.0 chứa một số thành phần, tên, số phiên bản và ngày tạo của chúng có thể được hiển thị bằng lệnh ver:

MATLAB Phiên bản 6.0.0.88 (R12) trên PCWIN Số giấy phép MATLAB: 0

Hộp công cụ MATLAB

Phiên bản 6.0

06-0ct-2000

Phiên bản 4.0

Phiên bản 4.0

04-0ct-2000

Bộ mã hóa dòng trạng thái

Phiên bản 4.0

04-0ct-2000

Hội thảo thời gian thực

Phiên bản 4.0

Bộ khối tham chiếu COMA

Phiên bản 1.0.2

Khối truyền thông

Phiên bản 2.0

Hộp công cụ truyền thông

Phiên bản 2.0

Hộp công cụ hệ thống điều khiển

Phiên bản 5.0

Khối DSP

Phiên bản 4.0

Hộp công cụ thu thập dữ liệu

Phiên bản 2.0

05-0ct-2000

Hộp công cụ cơ sở dữ liệu

Phiên bản 2.1

Hộp công cụ nguồn cấp dữ liệu

Phiên bản 1.2

Bộ khối quay số & đồng hồ đo

Phiên bản 1.1

Hộp công cụ thiết kế bộ lọc

Phiên bản 2.0

Hộp công cụ phái sinh tài chính

Phiên bản 1.0

Hộp công cụ chuỗi thời gian tài chính

Phiên bản 1.0

Hộp công cụ tài chính

Phiên bản 2.1.2

Khối điểm cố định

Phiên bản 3.0

Lập luận mờ Hộp công cụ

Phiên bản 2.1

Hộp công cụ GARCH

Phiên bản 1.0

Hộp công cụ xử lý hình ảnh

Phiên bản 2.2.2

Hộp công cụ điều khiển thiết bị

Phiên bản 1.0

Hộp công cụ điều khiển LMI

Phiên bản 1.0.6

Trình biên dịch MATLAB

Phiên bản 2.1

Trình tạo báo cáo MATLAB

Phiên bản 1.1

Hộp công cụ lập bản đồ

Phiên bản 1.2


Phiên bản 1.0.5

Bộ công cụ dành cho nhà phát triển DSP của Motorola

Phiên bản 1.1

Ol-Tháng 9-2000

Hộp công cụ phân tích và tổng hợp Mi

Phiên bản 3.0.5

Hộp công cụ mạng thần kinh

Phiên bản 4.0

Bộ khối thiết kế điều khiển phi tuyến

Phiên bản 1.1.4

Hộp công cụ tối ưu hóa

Phiên bản 2.1

Hộp công cụ phương trình vi phân từng phần

Phiên bản 1.0.3

Khối hệ thống điện

Phiên bản 2.1

Hội thảo thời gian thực Ada Coder

Phiên bản 4.0

Bộ mã hóa nhúng hội thảo thời gian thực

Phiên bản 1.0

Giao diện quản lý yêu cầu

Phiên bản 1.0.1

Hộp công cụ kiểm soát mạnh mẽ

Phiên bản 2.0.7

SB2SL (chuyển đổi SystemBuild sang Simu

Phiên bản 2.1

Hộp công cụ xử lý tín hiệu

Phiên bản 5.0

Trình tăng tốc Simulink

Phiên bản 1.0

Phân biệt mô hình cho Simulink và...

Phiên bản 1.0

Công cụ bao phủ mô hình Simulink

Phiên bản 1.0

Trình tạo báo cáo Simulink

Phiên bản 1.1

Hộp công cụ Spline

Phiên bản 3.0

Hộp công cụ thống kê

Phiên bản 3.0

Hộp công cụ toán học tượng trưng

Phiên bản 2.1.2


Phiên bản 5.0

Hộp công cụ Wavelet

Phiên bản 2.0

Phiên bản 1.1

Tùy chọn nhúng mục tiêu xPC

Phiên bản 1.1

Xin lưu ý rằng hầu hết tất cả các gói mở rộng trong MATLAB 6.0 đều được cập nhật từ năm 2000. Mô tả của họ đã được mở rộng đáng kể, ở định dạng PDF đã chiếm hơn mười nghìn trang. Dưới đây là mô tả ngắn gọn về các gói mở rộng chính

3. Simulink cho Windows

Simulink cho Windows

Gói mở rộng Simulink được sử dụng để mô phỏng mô hình các mô hình bao gồm các khối đồ họa với các thuộc tính (tham số) được chỉ định. Các thành phần mô hình lần lượt là các khối đồ họa và mô hình được chứa trong một số thư viện và có thể được chuyển đến cửa sổ chính bằng chuột và kết nối với nhau bằng các kết nối cần thiết. Các mô hình có thể bao gồm các loại nguồn tín hiệu khác nhau, các công cụ ghi ảo, công cụ đồ họa hoạt hình. Nhấp đúp vào khối mô hình sẽ hiển thị một cửa sổ có danh sách các tham số mà người dùng có thể thay đổi. Việc chạy mô phỏng cung cấp mô hình toán học của mô hình được xây dựng với sự trình bày trực quan rõ ràng về kết quả. Gói này dựa trên sơ đồ khối xây dựng bằng cách chuyển các khối từ thư viện thành phần vào cửa sổ chỉnh sửa do người dùng tạo các mô hình. Sau đó mô hình được đưa ra. Trong bộ lễ phục. Hình 23.1 thể hiện quá trình mô hình hóa một hệ thống đơn giản - xi lanh thủy lực. Việc giám sát được thực hiện bằng máy hiện sóng ảo - trong Hình. Hình 23.1 cho thấy màn hình của hai máy hiện sóng như vậy và cửa sổ của một hệ thống con đơn giản của mô hình. Có thể mô hình hóa các hệ thống phức tạp bao gồm nhiều hệ thống con.

Simulink biên dịch và giải các phương trình trạng thái của mô hình và cho phép bạn kết nối nhiều loại dụng cụ đo ảo đến các điểm mong muốn. Sự rõ ràng trong việc trình bày các kết quả mô phỏng thật đáng kinh ngạc. Một số ví dụ về cách sử dụng gói Simulink đã được đưa ra trong Bài 4. Phiên bản trước của gói này được mô tả đầy đủ chi tiết trong sách. Sự đổi mới chính là việc xử lý tín hiệu ma trận. Đã thêm các gói hiệu suất Simulink riêng biệt, chẳng hạn như Bộ tăng tốc Simulink để biên dịch mã mô hình, trình lược tả Simulink để phân tích mã, v.v.

Cơm. 23.1. Ví dụ mô hình hệ thống xi lanh thủy lực sử dụng phần mở rộng Simulink

1.gif

Hình ảnh:

1b.gif

Hình ảnh:

4. Hội thảo và mục tiêu Windows thời gian thực

Hội thảo và mục tiêu Windows thời gian thực

Một hệ thống con mô phỏng thời gian thực mạnh mẽ được kết nối với Simulink (với phần cứng bổ sung dưới dạng thẻ mở rộng máy tính), được đại diện bởi gói mở rộng Real Time Windows Target và Workshop, là một công cụ mạnh mẽ để quản lý các đối tượng và hệ thống thực. Ngoài ra, các tiện ích mở rộng này cho phép bạn tạo mã mô hình thực thi được. Cơm. Hình 4.21 trong Bài 4 cho thấy một ví dụ về mô hình hóa như vậy cho một hệ thống được mô tả bằng các phương trình vi phân phi tuyến van der Pol. Ưu điểm của mô hình như vậy là tính rõ ràng về mặt toán học và vật lý. Trong các thành phần mô hình Simulink, bạn có thể chỉ định không chỉ các tham số cố định mà còn cả các mối quan hệ toán học mô tả hành vi của các mô hình.

5. Trình tạo báo cáo cho MATLAB và Simulink

Trình tạo báo cáo cho MATLAB và Simulink

Trình tạo báo cáo, một công cụ được giới thiệu trong MATLAB 5.3.1, cung cấp thông tin về hoạt động của hệ thống MATLAB và gói mở rộng Simulink. Công cụ này rất hữu ích khi gỡ lỗi các thuật toán tính toán phức tạp hoặc khi mô phỏng các hệ thống phức tạp. Trình tạo báo cáo được khởi chạy bằng lệnh Báo cáo. Báo cáo có thể được trình bày dưới dạng chương trình và chỉnh sửa.

Trình tạo báo cáo có thể chạy các lệnh và đoạn chương trình có trong báo cáo và cho phép bạn theo dõi hoạt động của các phép tính phức tạp.

6. Hộp công cụ mạng thần kinh

Hộp công cụ mạng thần kinh

Một gói các chương trình ứng dụng chứa các công cụ để xây dựng mạng lưới thần kinh dựa trên hành vi tương tự toán học của một nơron. Gói này cung cấp hỗ trợ hiệu quả cho việc thiết kế, đào tạo và mô phỏng nhiều mô hình mạng nổi tiếng, từ mô hình cơ bản perceptron đến các mạng liên kết và tự tổ chức hiện đại nhất. Gói này có thể được sử dụng để khám phá và áp dụng mạng lưới thần kinh cho các vấn đề như xử lý tín hiệu, điều khiển phi tuyến và mô hình tài chính. Khả năng tạo mã C di động bằng Hội thảo thời gian thực được cung cấp.

Gói này bao gồm hơn 15 loại mạng và quy tắc đào tạo đã biết, cho phép người dùng chọn mô hình phù hợp nhất cho một ứng dụng hoặc vấn đề nghiên cứu cụ thể. Đối với mỗi loại kiến ​​trúc và quy tắc học tập, có các chức năng khởi tạo, huấn luyện, thích ứng, tạo và mô phỏng, trình diễn và ứng dụng mạng ví dụ.

Đối với các mạng được giám sát, bạn có thể chọn kiến ​​trúc chuyển tiếp hoặc lặp lại bằng cách sử dụng nhiều quy tắc học tập và kỹ thuật thiết kế khác nhau như perceptron, lan truyền ngược, lan truyền ngược Levenberg, mạng cơ sở xuyên tâm và mạng hồi quy. Bạn có thể dễ dàng thay đổi bất kỳ kiến ​​trúc, quy tắc học tập hoặc chức năng chuyển tiếp nào hoặc thêm những kiến ​​trúc mới - tất cả mà không cần viết một dòng C hoặc FORTRAN. Ví dụ về việc sử dụng gói để nhận dạng hình ảnh chữ cái đã được đưa ra trong Bài học 4. Bạn có thể tìm thấy mô tả chi tiết về phiên bản trước của gói trong cuốn sách.

7. Hộp công cụ logic mờ

Hộp công cụ logic mờ

Gói ứng dụng Logic Mờ liên quan đến lý thuyết tập mờ (mờ). Cung cấp hỗ trợ cho các phương pháp phân cụm mờ hiện đại và mạng nơ ron mờ thích ứng. Các công cụ đồ họa của gói cho phép bạn giám sát tương tác hoạt động của hệ thống.

Các tính năng chính của gói:

  • định nghĩa các biến, luật mờ và hàm thành viên;
  • xem tương tác suy luận logic mờ;
  • các phương pháp hiện đại: suy luận mờ thích ứng sử dụng mạng nơ-ron, phân cụm mờ;
  • mô phỏng động tương tác trong Simulink;
  • tạo mã C di động bằng Hội thảo thời gian thực.

Ví dụ này cho thấy rõ sự khác biệt trong hành vi của mô hình khi tính đến logic mờ và không tính đến sự xem xét đó.

8. Hộp công cụ toán học tượng trưng

Hộp công cụ toán học tượng trưng

Một gói các chương trình ứng dụng cung cấp cho hệ thống MATLAB những khả năng mới về cơ bản - khả năng giải quyết các vấn đề ở dạng ký hiệu (phân tích), bao gồm việc thực hiện số học chính xác với độ sâu bit tùy ý. Gói này dựa trên việc sử dụng nhân toán học biểu tượng của một trong những hệ thống đại số máy tính mạnh nhất - Maple V R4. Cung cấp sự phân biệt và tích phân biểu tượng, tính tổng và tích, khai triển chuỗi Taylor và Maclaurin, các phép toán với đa thức lũy thừa (đa thức), tính nghiệm nghiệm của đa thức, giải phương trình phi tuyến ở dạng phân tích, tất cả các loại biến đổi biểu tượng, thay thế và nhiều hơn. Có các lệnh để truy cập trực tiếp vào kernel hệ thống Maple V.

Gói này cho phép bạn chuẩn bị các thủ tục với cú pháp của ngôn ngữ lập trình hệ thống Maple V R4 và cài đặt chúng vào hệ thống MATLAB. Thật không may, xét về khả năng toán học ký hiệu, gói này kém hơn nhiều so với các hệ thống đại số máy tính chuyên dụng, chẳng hạn như phiên bản mới nhất Cây phong và toán học.

9. Gói toán học

Gói toán học

MATLAB bao gồm nhiều gói mở rộng giúp nâng cao khả năng toán học của hệ thống, tăng tốc độ, hiệu quả và độ chính xác của phép tính.

10. Hộp công cụ nền tảng NAG

Hộp công cụ nền tảng NAG

Một trong những thư viện mạnh mẽ nhất hàm toán học, được tạo bởi một nhóm đặc biệt của The Numerical Algorithms Group, Ltd. Gói này chứa hàng trăm tính năng mới. Tên của các hàm và cú pháp gọi chúng được mượn từ Thư viện NAG Foundation nổi tiếng. Do đó, người dùng NAG FORTRAN có kinh nghiệm có thể dễ dàng làm việc với gói NAG trong MATLAB. Thư viện NAG Foundation cung cấp các chức năng của nó dưới dạng mã đối tượng và m-file tương ứng để gọi chúng. Người dùng có thể dễ dàng sửa đổi các tệp MEX này ở cấp mã nguồn.

Gói này cung cấp các tính năng sau:

    nghiệm của đa thức và phương pháp Laguerre sửa đổi;

    tính tổng của một chuỗi: biến đổi Fourier rời rạc và Hermitian-rời rạc;

    phương trình vi phân thông thường: phương pháp Adams và Runge-Kutta;

    phương trình vi phân từng phần;

    nội suy;

    tính toán giá trị riêng và vectơ, số ít, hỗ trợ ma trận phức và ma trận thực;

    xấp xỉ các đường cong và bề mặt: đa thức, spline bậc ba, đa thức Chebyshev;

    tối thiểu hóa và tối đa hóa các hàm: quy hoạch tuyến tính và bậc hai, cực trị của hàm nhiều biến;

    phân hủy ma trận;

    giải hệ phương trình tuyến tính;

    phương trình tuyến tính (LAPACK);

    tính toán thống kê, bao gồm thống kê mô tả và phân bố xác suất;

    mối tương quan và Phân tích hồi quy: tuyến tính, đa chiều và tổng quát mô hình tuyến tính;

    phương pháp đa chiều: thành phần chính, phép quay trực giao;

    tạo số ngẫu nhiên: phân phối chuẩn, phân phối Poisson, Weibull và Koschi;

    thống kê phi tham số: Friedman, Kruskal-Wallis, Mann-Whitney; Về chuỗi thời gian: đơn biến và đa biến;

    xấp xỉ của các hàm đặc biệt: hàm mũ tích phân, hàm gamma, hàm Bessel và Hankel.

Cuối cùng, gói này cho phép người dùng tạo các chương trình FORTRAN liên kết động với MATLAB.

11. Hộp công cụ Spline

Gói ứng dụng để làm việc với spline. Hỗ trợ phép nội suy và xấp xỉ spline một chiều, hai chiều và đa chiều. Cung cấp trình bày và hiển thị dữ liệu phức tạp và hỗ trợ đồ họa.

Gói này cho phép bạn thực hiện nội suy, xấp xỉ và chuyển đổi các spline từ dạng B sang đa thức từng phần, nội suy với spline bậc ba và làm mịn, thực hiện các phép toán trên spline: tính đạo hàm, tích phân và hiển thị.

Gói Spline được trang bị các chương trình làm việc với B-splines, được mô tả trong tác phẩm “Hướng dẫn thực hành về Spline” của Karl DeBoer, người tạo ra splines và là tác giả của gói Spline. Các tính năng của gói, kết hợp với ngôn ngữ MATLAB và hướng dẫn sử dụng chi tiết, làm cho các đường spline trở nên dễ hiểu và áp dụng hiệu quả cho nhiều vấn đề khác nhau.

Gói này bao gồm các chương trình để làm việc với hai dạng biểu diễn spline được sử dụng rộng rãi nhất: dạng B và dạng đa thức từng đoạn. Dạng B thuận tiện ở giai đoạn xây dựng đường trục, trong khi dạng đa thức từng phần hiệu quả hơn trong quá trình xây dựng công việc lâu dài với đường cong. Gói này bao gồm các chức năng tạo, hiển thị, nội suy, xấp xỉ và xử lý các đường trục ở dạng B và dưới dạng các phân đoạn đa thức.

12. Hộp công cụ thống kê

Hộp công cụ thống kê

Gói ứng dụng thống kê giúp mở rộng đáng kể khả năng của hệ thống MATLAB trong việc thực hiện các phép tính thống kê và xử lý dữ liệu thống kê. Chứa một bộ công cụ rất tiêu biểu để tạo số, vectơ, ma trận và mảng ngẫu nhiên với các luật phân phối khác nhau cũng như nhiều chức năng thống kê. Cần lưu ý rằng các hàm thống kê phổ biến nhất đều có trong cốt lõi của hệ thống MATLAB (bao gồm các hàm tạo dữ liệu ngẫu nhiên có phân phối chuẩn và đều). Các tính năng chính của gói:

    thống kê mô tả;

    phân bố xác suất;

    ước lượng tham số và xấp xỉ;

    kiểm tra giả thuyết;

    hồi quy đa biến;

    hồi quy từng bước tương tác;

    mô phỏng Monte Carlo;

    xấp xỉ trên các khoảng;

    kiểm soát quá trình thống kê;

    lập kế hoạch thí nghiệm;

    mô hình bề mặt đáp ứng;

    xấp xỉ mô hình phi tuyến;

    phân tích thành phần chính;

    đồ thị thống kê;

    Giao diện đồ họa người dùng.

Gói này bao gồm 20 phân bố xác suất khác nhau, bao gồm t (của Học sinh), F và Chi bình phương. Lựa chọn các thông số, Hiển thị đồ họa phân phối và cách tính toán xấp xỉ tốt nhất được cung cấp cho tất cả các loại phân phối. Có nhiều công cụ tương tác để trực quan hóa và phân tích dữ liệu động. Có các giao diện chuyên dụng để mô hình hóa bề mặt phản hồi, trực quan hóa các phân bố, tạo số ngẫu nhiên và đường mức.

13. Hộp công cụ tối ưu hóa

Hộp công cụ tối ưu hóa

Gói bài toán ứng dụng - giải các bài toán tối ưu và hệ phương trình phi tuyến. Hỗ trợ các phương pháp cơ bản để tối ưu hóa chức năng của một số biến:

    tối ưu hóa vô điều kiện các hàm phi tuyến;

    phương pháp bình phương tối thiểu và nội suy phi tuyến;

    giải các phương trình phi tuyến;

    lập trình tuyến tính;

    lập trình bậc hai;

    giảm thiểu có điều kiện của các hàm phi tuyến;

    phương pháp minimax;

    tối ưu hóa đa tiêu chí.

Nhiều ví dụ khác nhau chứng minh việc sử dụng hiệu quả các chức năng của gói. Với sự giúp đỡ của họ, bạn cũng có thể so sánh cách giải quyết cùng một vấn đề bằng các phương pháp khác nhau.

14. Hộp công cụ phương trình vi phân từng phần

Hộp công cụ phương trình vi phân từng phần

Một gói ứng dụng rất quan trọng chứa nhiều hàm để giải hệ phương trình vi phân từng phần. Cung cấp các phương tiện hiệu quả để giải các hệ phương trình như vậy, bao gồm cả các phương trình cứng nhắc. Gói sử dụng phương pháp phần tử hữu hạn. Các lệnh và giao diện đồ họa của gói có thể được sử dụng để mô hình toán học các phương trình vi phân từng phần cho nhiều ứng dụng khoa học và kỹ thuật, bao gồm các bài toán về độ bền của vật liệu, tính toán thiết bị điện từ, các bài toán truyền nhiệt và khối lượng cũng như các bài toán khuếch tán. Các tính năng chính của gói:

    một giao diện đồ họa hoàn chỉnh để xử lý các phương trình vi phân từng phần bậc hai;

    lựa chọn lưới tự động và thích ứng;

    thiết lập các điều kiện biên: Dirichlet, Neumann và hỗn hợp;

    xây dựng bài toán linh hoạt bằng cú pháp MATLAB;

    chia lưới hoàn toàn tự động và lựa chọn kích thước phần tử hữu hạn;

    đề án thiết kế phi tuyến và thích ứng;

    khả năng trực quan hóa các trường chứa các tham số và chức năng khác nhau của giải pháp, thể hiện các hiệu ứng hoạt ảnh và phân vùng được chấp nhận.

Gói này tuân theo sáu bước giải PDE một cách trực quan bằng phương pháp phần tử hữu hạn. Các bước này và các chế độ tương ứng của gói như sau: xác định hình học (chế độ vẽ), thiết lập các điều kiện biên (chế độ điều kiện biên), chọn các hệ số xác định bài toán (chế độ PDE), rời rạc hóa các phần tử hữu hạn (chế độ lưới). ), thiết lập các điều kiện ban đầu và giải phương trình (chế độ giải), xử lý giải pháp tiếp theo (chế độ đồ thị).

15. Gói phân tích, tổng hợp hệ thống điều khiển

Gói phân tích, tổng hợp hệ thống điều khiển

Hộp công cụ hệ thống điều khiển

Gói Hệ thống Điều khiển nhằm mục đích mô hình hóa, phân tích và thiết kế các hệ thống điều khiển tự động - cả liên tục và rời rạc. Các hàm gói thực hiện các phương thức hàm truyền truyền thống và các phương pháp không gian trạng thái hiện đại. Đáp ứng tần số và thời gian, sơ đồ cực 0 có thể được tính toán nhanh chóng và hiển thị trên màn hình. Gói này bao gồm:

    một bộ công cụ hoàn chỉnh để phân tích hệ thống MIMO (nhiều đầu vào, nhiều đầu ra);

    đặc điểm thời gian: hàm truyền và hàm chuyển tiếp, phản ứng với ảnh hưởng tùy ý;

    đặc tính tần số: sơ đồ Bode, Nichols, Nyquist, v.v.;

    phát triển các vòng phản hồi;

    thiết kế bộ điều khiển LQR/LQE;

    đặc điểm của mô hình: khả năng điều khiển, khả năng quan sát, hạ thấp thứ tự của mô hình;

    hỗ trợ cho các hệ thống có độ trễ.

Các tính năng xây dựng mô hình bổ sung cho phép bạn xây dựng các mô hình phức tạp hơn. Đáp ứng thời gian có thể được tính toán cho đầu vào xung, đầu vào một bước hoặc tín hiệu đầu vào ngẫu nhiên. Ngoài ra còn có các chức năng để phân tích số ít.

Một môi trường tương tác để so sánh đáp ứng thời gian và tần số của hệ thống cung cấp cho người dùng các điều khiển đồ họa để hiển thị và chuyển đổi đồng thời giữa các phản hồi. Có thể tính toán các đặc tính đáp ứng khác nhau như thời gian tăng tốc và thời gian tăng tốc.

Gói Hệ thống điều khiển chứa các công cụ để chọn tham số phản hồi. Các phương pháp truyền thống bao gồm: phân tích các điểm kỳ dị, xác định hệ số khuếch đại và suy giảm. Trong số các phương pháp hiện đại: điều khiển tuyến tính bậc hai, v.v. Gói Hệ thống điều khiển bao gồm một số lượng lớn các thuật toán để thiết kế và phân tích các hệ thống điều khiển. Ngoài ra, nó còn có một môi trường có thể tùy chỉnh và cho phép bạn tạo các tệp m của riêng mình.

16. Hộp công cụ thiết kế điều khiển phi tuyến

Hộp công cụ thiết kế điều khiển phi tuyến

Blockset Thiết kế điều khiển phi tuyến tính (NCD) thực hiện phương pháp tối ưu hóa động để thiết kế hệ thống điều khiển. Được thiết kế để sử dụng với Simulink, công cụ này tự động điều chỉnh các tham số hệ thống dựa trên các ràng buộc về thời gian do người dùng xác định.

Gói sử dụng thao tác kéo chuột để thay đổi các giới hạn thời gian trực tiếp trên biểu đồ, cho phép bạn dễ dàng thiết lập các biến và chỉ định các tham số không xác định, cung cấp tối ưu hóa tương tác, thực hiện mô phỏng Monte Carlo, hỗ trợ thiết kế SISO (một đầu vào - một đầu ra) và điều khiển MIMO hệ thống, cho phép mô hình hóa việc ngăn chặn nhiễu, theo dõi và các loại phản hồi khác, hỗ trợ lặp lại các vấn đề tham số và các vấn đề điều khiển hệ thống có độ trễ và cho phép lựa chọn giữa các ràng buộc thỏa mãn và không thể đạt được.

17. Hộp công cụ kiểm soát mạnh mẽ

Hộp công cụ kiểm soát mạnh mẽ

Gói Robust Control bao gồm các công cụ để thiết kế và phân tích các hệ thống điều khiển mạnh mẽ đa biến. Đây là những hệ thống có lỗi mô hình hóa, động lực học của chúng chưa được biết đầy đủ hoặc các tham số của chúng có thể thay đổi trong quá trình mô hình hóa. Các thuật toán mạnh mẽ của gói cho phép bạn thực hiện các phép tính phức tạp có tính đến những thay đổi ở nhiều tham số. Tính năng gói:

    tổng hợp các bộ điều khiển LQG dựa trên việc giảm thiểu các chỉ tiêu thống nhất và tích hợp;

    đáp ứng tần số đa thông số;

    xây dựng mô hình không gian trạng thái;

    chuyển đổi mô hình dựa trên các giá trị số ít;

    hạ thấp thứ tự của mô hình;

    hệ số quang phổ.

Gói Điều khiển Mạnh mẽ được xây dựng dựa trên chức năng của gói Hệ thống Điều khiển đồng thời cung cấp một bộ thuật toán nâng cao để thiết kế hệ thống điều khiển. Gói này cung cấp cầu nối giữa lý thuyết điều khiển hiện đại và các ứng dụng thực tế. Nó có nhiều chức năng thực hiện các phương pháp hiện đại để thiết kế và phân tích các bộ điều khiển mạnh mẽ đa biến.

Các biểu hiện của sự không chắc chắn vi phạm tính ổn định của hệ thống rất đa dạng - nhiễu và nhiễu tín hiệu, độ chính xác của mô hình hàm truyền, động lực học phi tuyến không được mô hình hóa. Gói Kiểm soát mạnh mẽ cho phép bạn ước tính giới hạn ổn định đa thông số trong các điều kiện không chắc chắn khác nhau. Trong số các phương pháp được sử dụng: thuật toán Perron, phân tích các tính năng của hàm truyền, v.v.

Gói Robust Control cung cấp nhiều phương pháp thiết kế phản hồi khác nhau, bao gồm: LQR, LQG, LQG/LTR, v.v. Nhu cầu hạ thấp thứ tự mô hình phát sinh trong một số trường hợp: hạ thấp thứ tự của một đối tượng, hạ thấp thứ tự của bộ điều khiển, hạ thấp thứ tự mô hình hệ thống. Một quy trình định tính để giảm bậc của một mô hình phải ổn định về mặt số lượng. Các quy trình có trong gói Kiểm soát mạnh mẽ sẽ giải quyết thành công nhiệm vụ này.

18. Hộp công cụ điều khiển dự đoán mô hình

Hộp công cụ điều khiển dự đoán mô hình

Gói Kiểm soát dự đoán mô hình chứa một bộ công cụ hoàn chỉnh để thực hiện chiến lược kiểm soát dự đoán (chủ động). Chiến lược này được phát triển để giải quyết các vấn đề thực tế trong việc kiểm soát các quy trình đa kênh phức tạp với các ràng buộc về các biến trạng thái và điều khiển. Các phương pháp kiểm soát dự đoán được sử dụng trong ngành hóa chất và kiểm soát các quá trình liên tục khác. Gói này cung cấp:

    mô hình hóa, nhận dạng và chẩn đoán hệ thống;

    hỗ trợ MISO (nhiều đầu vào - một đầu ra), MIMO, đặc tính nhất thời, mô hình không gian trạng thái;

    phân tích hệ thống;

    chuyển đổi mô hình thành các dạng biểu diễn khác nhau (không gian trạng thái, hàm truyền);

    cung cấp các hướng dẫn và demo.

Phương pháp dự đoán để kiểm soát các vấn đề sử dụng mô hình động tuyến tính rõ ràng của nhà máy để dự đoán tác động của những thay đổi trong tương lai của các biến kiểm soát đối với hoạt động của nhà máy. Bài toán tối ưu hóa được xây dựng dưới dạng bài toán quy hoạch bậc hai với các ràng buộc, được giải một lần nữa ở mỗi bước mô phỏng. Gói này cho phép bạn tạo và kiểm tra bộ điều khiển cho cả đối tượng đơn giản và phức tạp.

Gói này chứa hơn 50 chức năng chuyên dụng để thiết kế, phân tích và mô hình hóa các hệ thống động sử dụng điều khiển dự đoán. Nó hỗ trợ các loại hệ thống sau: thời gian xung, liên tục và rời rạc, không gian trạng thái. Nhiều loại nhiễu loạn khác nhau được xử lý. Ngoài ra, các ràng buộc về các biến đầu vào và đầu ra có thể được đưa vào mô hình một cách rõ ràng.

Các công cụ mô phỏng cho phép theo dõi và ổn định. Các công cụ phân tích bao gồm tính toán các cực của vòng kín, đáp ứng tần số và các đặc tính khác của hệ thống điều khiển. Để xác định mô hình, gói có chức năng tương tác với gói Nhận dạng hệ thống. Gói này cũng bao gồm hai chức năng Simulink cho phép bạn kiểm tra các mô hình phi tuyến.

19. mu - Phân tích và tổng hợp

(Mu)-Phân tích và tổng hợp

Gói phân tích và tổng hợp p chứa các chức năng thiết kế hệ thống điều khiển mạnh mẽ. Gói này sử dụng định mức thống nhất và tối ưu hóa tham số số ít và. Gói này bao gồm giao diện đồ họa để đơn giản hóa thao tác khối khi thiết kế bộ điều khiển tối ưu. Thuộc tính gói:

  • thiết kế các bộ điều chỉnh tối ưu về các chỉ tiêu thống nhất và tích hợp;
  • ước tính tham số số thực và số phức mu;
  • Lặp lại D-K cho xấp xỉ mu-tổng hợp;

    GUI để phân tích phản hồi vòng kín;

    phương tiện giảm thứ tự mô hình;

    kết nối trực tiếp các khối riêng lẻ của hệ thống lớn.

Một mô hình không gian trạng thái có thể được tạo và phân tích dựa trên ma trận hệ thống. Gói hỗ trợ làm việc với các mô hình liên tục và rời rạc. Gói này có giao diện đồ họa đầy đủ, bao gồm: khả năng thiết lập phạm vi dữ liệu đầu vào, một cửa sổ đặc biệt để chỉnh sửa các thuộc tính của các lần lặp D-K và biểu diễn đồ họa của các đặc tính tần số. Có chức năng cộng ma trận, nhân, biến đổi khác nhau và các phép toán khác trên ma trận. Cung cấp khả năng hạ thấp thứ tự của các mô hình.

20.Dòng chảy trạng thái

Stateflow là gói mô hình hóa hệ thống hướng sự kiện dựa trên lý thuyết máy trạng thái hữu hạn. Gói này được thiết kế để sử dụng với gói mô hình hóa hệ thống động Simulink. Bạn có thể chèn sơ đồ Stateflow (hoặc sơ đồ SF) vào bất kỳ mô hình Simulink nào, sơ đồ này sẽ phản ánh hành vi của các thành phần của đối tượng mô hình hóa (hoặc hệ thống). Sơ đồ SF có hình ảnh động. Sử dụng các khối và kết nối được mã hóa màu, bạn có thể theo dõi tất cả các giai đoạn hoạt động của hệ thống hoặc thiết bị mô phỏng và làm cho hoạt động của nó phụ thuộc vào các sự kiện nhất định. Cơm. Hình 23.6 minh họa mô hình hóa hành vi của ô tô khi xảy ra trường hợp khẩn cấp trên đường. Sơ đồ SF (chính xác hơn là một khung hoạt động của nó) hiển thị dưới mô hình ô tô.

Để tạo sơ đồ SF, gói này có trình chỉnh sửa tiện lợi và đơn giản cũng như các công cụ giao diện người dùng.

21. Hộp công cụ lý thuyết phản hồi định lượng

Hộp công cụ lý thuyết phản hồi định lượng

Gói này chứa các chức năng tạo ra các hệ thống mạnh mẽ (ổn định) có phản hồi. QFT (Lý thuyết phản hồi định lượng) là một phương pháp kỹ thuật sử dụng các mô hình biểu diễn tần số để đáp ứng các yêu cầu chất lượng khác nhau khi có các đặc điểm không chắc chắn của nhà máy. Phương pháp này dựa trên quan sát rằng phản hồi là cần thiết trong trường hợp một số đặc tính của đối tượng không chắc chắn và/hoặc nhiễu loạn chưa xác định được áp dụng cho đầu vào của nó. Tính năng gói:

    đánh giá các giới hạn tần số của độ không đảm bảo vốn có trong phản hồi;

    giao diện người dùng đồ họa cho phép bạn tối ưu hóa quá trình tìm kiếm các thông số phản hồi cần thiết;

    các chức năng xác định ảnh hưởng của các khối khác nhau được đưa vào mô hình (bộ ghép kênh, bộ cộng, vòng phản hồi) khi có sự không chắc chắn;

    hỗ trợ mô hình hóa các vòng phản hồi tương tự và kỹ thuật số, các tầng và mạch đa vòng;

    giải quyết sự không chắc chắn trong các thông số của nhà máy bằng cách sử dụng các mô hình tham số và phi tham số hoặc kết hợp các loại mô hình này.

Lý thuyết phản hồi là sự mở rộng tự nhiên của phương pháp thiết kế tần số cổ điển. Mục tiêu chính của nó là thiết kế các bộ điều khiển đơn giản, bậc nhỏ với băng thông tối thiểu đáp ứng các đặc tính hiệu suất khi có sự không chắc chắn.

Gói này cho phép bạn tính toán các tham số phản hồi, bộ lọc và bộ điều khiển kiểm tra khác nhau trong cả không gian liên tục và riêng biệt. Nó có giao diện đồ họa tiện lợi cho phép bạn tạo các bộ điều khiển đơn giản đáp ứng yêu cầu của người dùng.

QFT cho phép bạn thiết kế các bộ điều khiển đáp ứng các yêu cầu khác nhau, bất chấp những thay đổi về tham số mô hình. Dữ liệu đo được có thể được sử dụng trực tiếp để thiết kế bộ điều khiển mà không cần xác định phản ứng hệ thống phức tạp.

22. Hộp công cụ điều khiển LMI

Hộp công cụ điều khiển LMI

Gói điều khiển LMI (Bất đẳng thức ma trận tuyến tính) cung cấp một môi trường tích hợp để đặt ra và giải quyết các vấn đề lập trình tuyến tính. Gói này, ban đầu được thiết kế để thiết kế hệ thống điều khiển, cho phép bạn giải quyết mọi vấn đề lập trình tuyến tính trong hầu hết mọi lĩnh vực hoạt động khi phát sinh các vấn đề như vậy. Các tính năng chính của gói:

    giải bài toán quy hoạch tuyến tính: bài toán tương thích ràng buộc, tối thiểu hóa mục tiêu tuyến tính khi có ràng buộc tuyến tính, giảm thiểu giá trị riêng;

    nghiên cứu các bài toán quy hoạch tuyến tính;

    trình soạn thảo đồ họa cho các bài toán quy hoạch tuyến tính;

    thiết lập các hạn chế ở dạng tượng trưng;

    thiết kế đa tiêu chí của bộ điều chỉnh;

    kiểm tra độ ổn định: độ ổn định bậc hai hệ thống tuyến tính, Độ ổn định Lyapunov, kiểm chứng tiêu chuẩn Popov cho hệ phi tuyến.

Gói điều khiển LMI chứa các thuật toán đơn giản hiện đại để giải các bài toán quy hoạch tuyến tính. Sử dụng biểu diễn có cấu trúc của các ràng buộc tuyến tính, giúp cải thiện hiệu quả và giảm thiểu yêu cầu về bộ nhớ. Gói này có các công cụ chuyên dụng để phân tích và thiết kế hệ thống điều khiển dựa trên lập trình tuyến tính.

Bộ giải quy hoạch tuyến tính có thể dễ dàng kiểm tra tính ổn định của hệ thống động và hệ thống có thành phần phi tuyến. Trước đây, loại phân tích này được coi là quá phức tạp để thực hiện. Gói này thậm chí còn cho phép kết hợp các tiêu chí mà trước đây được coi là quá phức tạp và chỉ có thể giải quyết được với sự trợ giúp của các phương pháp heuristic.

Gói này là một công cụ mạnh mẽ để giải quyết các vấn đề tối ưu hóa lồi phát sinh trong các lĩnh vực như điều khiển, nhận dạng, lọc, thiết kế cấu trúc, lý thuyết đồ thị, nội suy và đại số tuyến tính. Gói LMI Control bao gồm hai loại giao diện đồ họa người dùng: trình soạn thảo vấn đề lập trình tuyến tính (LMI). Editor) và giao diện Magshape Editor cho phép bạn đặt các hạn chế ở dạng tượng trưng và Magshape cung cấp cho người dùng các công cụ thuận tiện để làm việc với gói.

23. Gói nhận dạng hệ thống

Gói nhận dạng hệ thống

Hộp công cụ nhận dạng hệ thống

Gói Nhận dạng Hệ thống chứa các công cụ để tạo mô hình toán học hệ thống động dựa trên dữ liệu đầu vào và đầu ra được quan sát. Nó có giao diện đồ họa linh hoạt giúp bạn sắp xếp dữ liệu và tạo mô hình. Các phương pháp nhận dạng có trong gói này có thể áp dụng cho nhiều vấn đề, từ thiết kế hệ thống điều khiển và xử lý tín hiệu đến phân tích chuỗi thời gian và độ rung. Các thuộc tính chính của gói:

    giao diện đơn giản và linh hoạt;

    xử lý trước dữ liệu, bao gồm lọc trước, loại bỏ các xu hướng và thành kiến; О lựa chọn phạm vi dữ liệu để phân tích;

    phân tích đáp ứng trong miền thời gian và tần số;

    hiển thị các số 0 và cực của hàm truyền hệ thống;

    phân tích phần dư khi kiểm định mô hình;

    xây dựng các sơ đồ phức tạp, chẳng hạn như sơ đồ Nyquist, v.v.

Giao diện đồ họa giúp đơn giản hóa quá trình tiền xử lý dữ liệu cũng như quá trình nhận dạng mô hình tương tác. Cũng có thể làm việc với gói ở chế độ lệnh và sử dụng phần mở rộng Simulink. Các thao tác tải và lưu dữ liệu, chọn phạm vi, xóa độ lệch và xu hướng được thực hiện dễ dàng và nằm trong menu chính.

Việc trình bày dữ liệu và các mô hình đã xác định được tổ chức bằng đồ họa sao cho trong quá trình nhận dạng tương tác, người dùng có thể dễ dàng quay lại bước công việc trước đó. Đối với người mới bắt đầu, có một tùy chọn để xem các bước tiếp theo có thể thực hiện được. Các công cụ đồ họa cho phép chuyên gia tìm thấy bất kỳ mô hình nào thu được trước đó và đánh giá chất lượng của nó so với các mô hình khác.

Bằng cách bắt đầu bằng việc đo đầu ra và đầu vào, bạn có thể tạo mô hình tham số của hệ thống mô tả hành vi của nó theo thời gian. Gói này hỗ trợ tất cả các cấu trúc mô hình truyền thống, bao gồm tự hồi quy, Box-Jenkins, v.v. Nó hỗ trợ các mô hình không gian trạng thái tuyến tính, có thể được xác định trong cả không gian rời rạc và liên tục. Những mô hình này có thể bao gồm số lượng đầu vào và đầu ra tùy ý. Gói này bao gồm các chức năng có thể được sử dụng làm dữ liệu thử nghiệm cho các mô hình đã xác định. Nhận dạng mô hình tuyến tính được sử dụng rộng rãi trong thiết kế hệ thống điều khiển khi cần tạo mô hình của một đối tượng. Trong các bài toán xử lý tín hiệu, các mô hình có thể được sử dụng để xử lý tín hiệu thích ứng. Phương pháp nhận dạng cũng đã được áp dụng thành công cho các ứng dụng tài chính.

24. Hộp công cụ nhận dạng hệ thống miền tần số

Hộp công cụ nhận dạng hệ thống miền tần số

Gói Nhận dạng Hệ thống Miền Tần số cung cấp các công cụ chuyên dụng để xác định các hệ thống động tuyến tính theo đáp ứng thời gian hoặc tần số của chúng. Các phương pháp dựa trên tần số nhằm mục đích xác định các hệ thống liên tục, cung cấp sự bổ sung mạnh mẽ cho kỹ thuật rời rạc truyền thống hơn. Các phương pháp của gói có thể được áp dụng cho các vấn đề như mô hình hóa hệ thống điện, cơ khí và âm thanh. Thuộc tính gói:

    nhiễu loạn định kỳ, hệ số đỉnh, phổ tối ưu, chuỗi nhị phân giả ngẫu nhiên và rời rạc;

    tính toán khoảng tin cậy cho biên độ và pha, số không và cực;

    xác định các hệ thống liên tục và rời rạc với độ trễ không xác định;

    chẩn đoán mô hình, bao gồm mô hình hóa và tính toán phần dư;

    chuyển đổi mô hình sang định dạng Hộp công cụ nhận dạng hệ thống và ngược lại.

Bằng cách sử dụng phương pháp tiếp cận miền tần số, có thể đạt được mô hình tốt nhất trong miền tần số; tránh lỗi lấy mẫu; dễ dàng cách ly thành phần DC của tín hiệu; cải thiện đáng kể tỷ lệ tín hiệu trên tạp âm. Để thu được các tín hiệu nhiễu, gói này cung cấp các chức năng tạo chuỗi nhị phân, giảm thiểu biên độ của đỉnh và cải thiện các đặc tính phổ. Gói này cung cấp khả năng nhận dạng các hệ thống tĩnh tuyến tính liên tục và rời rạc, tự động tạo tín hiệu đầu vào cũng như biểu diễn đồ họa các điểm 0 và cực của hàm truyền của hệ thống thu được. Các chức năng để kiểm tra mô hình bao gồm tính toán phần dư, hàm truyền, số 0 và cực và chạy mô hình bằng dữ liệu thử nghiệm.

25. Các gói mở rộng MATLAB bổ sung

Các gói mở rộng MATLAB bổ sung

Hộp công cụ truyền thông

Gói chương trình ứng dụng để xây dựng và mô hình hóa các thiết bị viễn thông khác nhau: dòng kỹ thuật số thông tin liên lạc, modem, bộ chuyển đổi tín hiệu, v.v. Nó có một bộ mô hình phong phú của nhiều loại thiết bị liên lạc và viễn thông. Chứa một số ví dụ thú vị về các công cụ truyền thông mô hình hóa, ví dụ: modem hoạt động bằng giao thức v34, bộ điều biến để cung cấp điều chế dải biên đơn, v.v.

26. Bộ khối xử lý tín hiệu số (DSP)

Bộ xử lý tín hiệu số (DSP)

Gói chương trình ứng dụng để thiết kế các thiết bị sử dụng bộ xử lý tín hiệu số. Trước hết, đây là những bộ lọc kỹ thuật số hiệu quả cao với đáp ứng tần số (đáp ứng tần số) được chỉ định hoặc điều chỉnh phù hợp với các tham số của tín hiệu. Kết quả mô hình hóa và thiết kế các thiết bị kỹ thuật số sử dụng gói này có thể được sử dụng để xây dựng các bộ lọc kỹ thuật số hiệu quả cao trên các bộ vi xử lý tín hiệu số hiện đại.

27. Khối điểm cố định

Khối điểm cố định

Gói đặc biệt này tập trung vào việc mô hình hóa các hệ thống điều khiển kỹ thuật số và bộ lọc kỹ thuật số như một phần của gói Simulink. Một bộ thành phần đặc biệt cho phép bạn nhanh chóng chuyển đổi giữa các phép tính điểm cố định và dấu phẩy động (điểm). Bạn có thể chỉ định độ dài từ 8, 16 hoặc 32 bit. Gói này có một số thuộc tính hữu ích:

    sử dụng số học không dấu hoặc nhị phân;

    người dùng lựa chọn vị trí điểm nhị phân;

    tự động thiết lập vị trí của điểm nhị phân;

    xem phạm vi tối đa và tối thiểu của tín hiệu mô hình;

    chuyển đổi giữa các phép tính dấu phẩy động và cố định;

    hiệu chỉnh tràn và tính sẵn có của các thành phần chính cho hoạt động điểm cố định; toán tử logic, bảng tra cứu một và hai chiều.

28. Gói xử lý tín hiệu và hình ảnh

Gói xử lý tín hiệu và hình ảnh

Hộp công cụ xử lý tín hiệu

Một gói mạnh mẽ để phân tích, mô hình hóa và thiết kế các thiết bị xử lý tất cả các loại tín hiệu, cung cấp khả năng lọc và nhiều phép biến đổi.

Gói Xử lý Tín hiệu cung cấp khả năng cực kỳ toàn diện để tạo các chương trình xử lý tín hiệu cho các ứng dụng khoa học và kỹ thuật hiện đại. Gói này sử dụng nhiều kỹ thuật lọc và thuật toán phân tích quang phổ mới nhất. Gói này chứa các mô-đun để phát triển hệ thống tuyến tính và phân tích chuỗi thời gian. Đặc biệt, gói này sẽ hữu ích trong các lĩnh vực như xử lý thông tin âm thanh và video, viễn thông, địa vật lý, nhiệm vụ kiểm soát thời gian thực, kinh tế, tài chính và y học. Các thuộc tính chính của gói:

    mô hình hóa tín hiệu và hệ thống tuyến tính;

    thiết kế, phân tích và triển khai các bộ lọc kỹ thuật số và analog;

    biến đổi Fourier nhanh, cosine rời rạc và các biến đổi khác;

    đánh giá phổ và xử lý tín hiệu thống kê;

    xử lý tham số của chuỗi thời gian;

    tạo ra các tín hiệu có hình dạng khác nhau.

Gói Xử lý Tín hiệu là một lớp vỏ lý tưởng để phân tích và xử lý tín hiệu. Nó sử dụng các thuật toán đã được thử nghiệm thực tế được chọn lọc để mang lại hiệu quả và độ tin cậy tối đa. Gói này chứa một loạt các thuật toán để biểu diễn tín hiệu và mô hình tuyến tính. Bộ này cho phép người dùng tiếp cận khá linh hoạt để tạo tập lệnh xử lý tín hiệu. Gói này bao gồm các thuật toán để chuyển đổi mô hình từ biểu diễn này sang biểu diễn khác.

Gói Xử lý Tín hiệu bao gồm một bộ kỹ thuật hoàn chỉnh để tạo các bộ lọc kỹ thuật số với nhiều đặc điểm khác nhau. Nó cho phép bạn nhanh chóng phát triển các bộ lọc thông cao và thông thấp, bộ lọc thông dải và thông dừng, bộ lọc nhiều băng tần, bao gồm Chebyshev, Yule-Walker, bộ lọc hình elip, v.v.

Giao diện đồ họa cho phép bạn thiết kế các bộ lọc bằng cách chỉ định các yêu cầu đối với chúng ở chế độ kéo đối tượng bằng chuột. Gói này bao gồm các phương pháp thiết kế bộ lọc mới sau:

    Phương pháp Chebyshev tổng quát để tạo các bộ lọc có đáp ứng pha phi tuyến, hệ số phức hoặc đáp ứng tùy ý. Thuật toán được phát triển bởi McLennan và Karam vào năm 1995;

    bình phương tối thiểu bị ràng buộc cho phép người dùng kiểm soát rõ ràng lỗi tối đa (làm mịn);

    phương pháp tính thứ tự tối thiểu của bộ lọc với cửa sổ Kaiser;

    một phương pháp Butterworth tổng quát để thiết kế các bộ lọc thông thấp với băng thông và độ suy giảm đồng đều tối đa.

Dựa trên thuật toán Biến đổi Fourier nhanh tối ưu, Xử lý tín hiệu mang lại hiệu suất vượt trội để phân tích tần số và ước tính quang phổ. Gói này bao gồm các chức năng tính toán biến đổi Fourier rời rạc, biến đổi cosin rời rạc, biến đổi Hilbert và các biến đổi khác thường được sử dụng để phân tích, mã hóa và lọc. Gói này triển khai các phương pháp phân tích quang phổ như phương pháp Welch, phương pháp entropy cực đại, v.v.

Giao diện đồ họa mới cho phép bạn xem và đánh giá trực quan các đặc tính tín hiệu, thiết kế và áp dụng các bộ lọc, thực hiện phân tích quang phổ, khám phá ảnh hưởng của các phương pháp khác nhau và các thông số của chúng đến kết quả thu được. Giao diện đồ họa đặc biệt hữu ích để hiển thị chuỗi thời gian, đặc điểm quang phổ, thời gian và tần số cũng như vị trí của các điểm 0 và cực của các hàm truyền của hệ thống.

Gói Xử lý tín hiệu là cơ sở để giải quyết nhiều vấn đề khác. Ví dụ: bằng cách kết hợp nó với gói Xử lý hình ảnh, tín hiệu và hình ảnh 2D có thể được xử lý và phân tích. Khi được ghép nối với gói Nhận dạng hệ thống, gói Xử lý tín hiệu sẽ cho phép lập mô hình miền thời gian tham số của các hệ thống. Khi kết hợp với các gói Mạng thần kinh và Logic mờ, nhiều công cụ khác nhau có thể được tạo ra để xử lý dữ liệu hoặc trích xuất tính năng phân loại. Công cụ tạo tín hiệu cho phép bạn tạo tín hiệu xung có nhiều hình dạng khác nhau.

29. Hộp công cụ phân tích quang phổ bậc cao

Hộp công cụ phân tích quang phổ bậc cao

Gói Phân tích quang phổ bậc cao chứa các thuật toán đặc biệt để phân tích tín hiệu sử dụng các khoảnh khắc bậc cao hơn. Gói này cung cấp nhiều cơ hội để phân tích các tín hiệu không phải Gaussian, vì nó chứa các thuật toán cho các phương pháp phân tích và xử lý tín hiệu tiên tiến nhất. Các tính năng chính của gói:

    đánh giá phổ bậc cao;

    cách tiếp cận truyền thống hoặc tham số;

    phục hồi biên độ và pha;

    dự báo tuyến tính thích ứng;

    phục hồi hài hòa;

    ước tính độ trễ;

    xử lý tín hiệu khối

Gói Phân tích quang phổ bậc cao cho phép bạn phân tích các tín hiệu bị hỏng do nhiễu phi Gaussian và các quá trình xảy ra trong các hệ thống phi tuyến. Phổ bậc cao, được xác định theo mômen bậc cao của tín hiệu, chứa thông tin bổ sung không thể thu được bằng cách chỉ sử dụng phương pháp tự tương quan hoặc phân tích phổ công suất tín hiệu. Phổ bậc cao cho phép:

    triệt tiêu nhiễu Gaussian màu phụ gia;

    xác định tín hiệu pha không tối thiểu;

    làm nổi bật thông tin do tính chất phi Gaussian của nhiễu;

    phát hiện và phân tích các đặc tính phi tuyến của tín hiệu.

Các ứng dụng có thể có của phân tích quang phổ bậc cao bao gồm âm học, y sinh, kinh tế lượng, địa chấn, hải dương học, vật lý plasma, radar và radar. Các chức năng cốt lõi của gói hỗ trợ phổ bậc cao, ước tính phổ chéo, mô hình dự đoán tuyến tính và ước tính độ trễ.

30. Hộp công cụ xử lý ảnh

Hộp công cụ xử lý hình ảnh

Xử lý hình ảnh cung cấp cho các nhà khoa học, kỹ sư và thậm chí cả nghệ sĩ nhiều loại công cụ để xử lý và phân tích hình ảnh kỹ thuật số. Được kết hợp chặt chẽ với môi trường phát triển ứng dụng MATLAB, Hộp công cụ xử lý hình ảnh giúp bạn thoát khỏi việc mã hóa và gỡ lỗi các thuật toán tốn nhiều thời gian, cho phép bạn tập trung vào giải quyết vấn đề khoa học hoặc thực tiễn chính. Các thuộc tính chính của gói:

    phục hồi và làm nổi bật các chi tiết hình ảnh;

    làm việc với vùng hình ảnh đã chọn;

    Phân tích hình ảnh;

    lọc tuyến tính;

    chuyển đổi hình ảnh;

    các phép biến đổi hình học;

    tăng độ tương phản của các chi tiết quan trọng;

    các phép biến đổi nhị phân;

    xử lý và thống kê hình ảnh;

    biến đổi màu sắc;

    thay đổi bảng màu;

    chuyển đổi loại hình ảnh.

Gói Xử lý Hình ảnh cung cấp nhiều cơ hội để tạo và phân tích hình ảnh đồ họa trong môi trường MATLAB. Gói này cung cấp một giao diện cực kỳ linh hoạt cho phép bạn thao tác với hình ảnh, phát triển đồ họa một cách tương tác, trực quan hóa các tập dữ liệu và chú thích kết quả cho sách trắng, báo cáo và ấn phẩm. Tính linh hoạt, sự kết hợp giữa các thuật toán của gói với tính năng MATLAB như mô tả vectơ ma trận làm cho gói rất phù hợp để giải quyết hầu hết mọi vấn đề trong việc phát triển và trình bày đồ họa. Ví dụ về việc sử dụng gói này trong môi trường hệ thống MATLAB đã được đưa ra trong Bài 7. MATLAB bao gồm các quy trình được thiết kế đặc biệt để cải thiện hiệu quả của lớp vỏ đồ họa. Đặc biệt, có thể lưu ý các tính năng sau:

    gỡ lỗi tương tác khi phát triển đồ họa;

    trình lược tả để tối ưu hóa thời gian thực hiện thuật toán;

    các công cụ xây dựng giao diện người dùng đồ họa tương tác (GUI Builder) nhằm tăng tốc độ phát triển các mẫu GUI, cho phép bạn tùy chỉnh nó theo nhiệm vụ của người dùng.

Gói này cho phép người dùng dành ít thời gian và công sức hơn đáng kể để tạo đồ họa tiêu chuẩn và do đó tập trung nỗ lực vào các chi tiết và tính năng quan trọng của hình ảnh.

MATLAB và gói Xử lý ảnh được điều chỉnh tối đa cho việc phát triển và triển khai các ý tưởng và phương pháp mới của người dùng. Với mục đích này, có một tập hợp các gói liên quan nhằm giải quyết tất cả các loại vấn đề và vấn đề cụ thể theo một công thức độc đáo.

Xử lý hình ảnh hiện đang được sử dụng rộng rãi bởi hơn 4.000 công ty và trường đại học trên khắp thế giới. Đồng thời, có rất nhiều nhiệm vụ mà người dùng giải quyết bằng cách sử dụng của gói này, chẳng hạn như thám hiểm không gian, phát triển quân sự, thiên văn học, y học, sinh học, robot, khoa học vật liệu, di truyền học, v.v.

31. Hộp công cụ Wavelet

Gói Wavelet cung cấp cho người dùng một bộ chương trình hoàn chỉnh để nghiên cứu các hiện tượng không cố định đa chiều bằng cách sử dụng wavelet (gói sóng ngắn). Các phương thức được tạo tương đối gần đây trong gói Wavelet sẽ mở rộng khả năng của người dùng trong những lĩnh vực thường sử dụng kỹ thuật phân rã Fourier. Gói này có thể hữu ích cho các ứng dụng như xử lý giọng nói và âm thanh, viễn thông, địa vật lý, tài chính và y học. Các thuộc tính chính của gói:

    cải thiện giao diện người dùng đồ họa và bộ lệnh để phân tích, tổng hợp, lọc tín hiệu và hình ảnh;

    chuyển đổi tín hiệu liên tục đa chiều;

    chuyển đổi tín hiệu rời rạc;

    phân hủy và phân tích tín hiệu và hình ảnh;

    một loạt các chức năng cơ bản, bao gồm hiệu chỉnh các hiệu ứng biên;

    xử lý hàng loạt tín hiệu và hình ảnh;

    phân tích gói dựa trên entropy;

    lọc với khả năng đặt ngưỡng cứng và mềm;

    nén tín hiệu tối ưu.

Sử dụng gói này, bạn có thể phân tích các tính năng mà các phương pháp phân tích tín hiệu khác bỏ sót, tức là xu hướng, ngoại lệ, điểm dừng trong các đạo hàm bậc cao. Gói này cho phép bạn nén và lọc tín hiệu mà không bị tổn thất rõ ràng, ngay cả trong trường hợp bạn cần bảo toàn cả thành phần tần số cao và tần số thấp của tín hiệu. Có các thuật toán nén và lọc để xử lý tín hiệu hàng loạt. Các chương trình nén chọn số lượng hệ số tối thiểu thể hiện thông tin gốc một cách chính xác nhất, điều này rất quan trọng cho các giai đoạn tiếp theo của hệ thống nén. Gói này bao gồm các bộ cơ sở wavelet sau: biorthogonal, Haar, Mexican Hat, Mayer, v.v. Bạn cũng có thể thêm các cơ sở của riêng mình vào gói.

Hướng dẫn sử dụng mở rộng giải thích cách làm việc với các phương pháp của gói, kèm theo nhiều ví dụ và phần tham khảo đầy đủ.

32. Các gói ứng dụng khác

Các gói ứng dụng khác

Hộp công cụ tài chính

Một gói chương trình ứng dụng tính toán tài chính và kinh tế khá phù hợp với thời kỳ cải cách thị trường của chúng ta. Chứa nhiều chức năng tính lãi kép, giao dịch tiền gửi ngân hàng, tính toán lợi nhuận và nhiều chức năng khác. Thật không may, do có nhiều khác biệt (mặc dù nói chung là không cơ bản lắm) trong các công thức tài chính và kinh tế, nên việc sử dụng nó trong điều kiện của chúng ta không phải lúc nào cũng hợp lý - có nhiều chương trình trong nước để tính toán như vậy, ví dụ như “Kế toán 1C”. Nhưng nếu bạn muốn kết nối với cơ sở dữ liệu của các hãng tin tài chính - Bloom-berg, IDC thông qua gói MATLAB Datafeed Toolbox, thì tất nhiên, hãy đảm bảo sử dụng các gói mở rộng tài chính MATLAB.

Gói Tài chính là cơ sở để giải quyết nhiều vấn đề tài chính khác nhau trong MATLAB, từ các phép tính đơn giản đến các ứng dụng phân tán ở quy mô đầy đủ. Gói Tài chính có thể được sử dụng để tính toán lãi suất và lợi nhuận, phân tích thu nhập phái sinh và tiền gửi cũng như tối ưu hóa danh mục đầu tư. Các tính năng chính của gói:

    xử lí dữ liệu;

    phân tích phương sai hiệu quả danh mục đầu tư;

    phân tích chuỗi thời gian;

    tính toán lợi suất chứng khoán và đánh giá tỷ giá;

    phân tích thống kê và độ nhạy thị trường;

    tính toán thu nhập hàng năm và tính toán dòng tiền;

    phương pháp tính khấu hao và khấu trừ.

Do tầm quan trọng của ngày của một giao dịch tài chính cụ thể, gói Tài chính bao gồm một số chức năng để thao tác ngày và giờ ở nhiều định dạng khác nhau. Gói Tài chính cho phép bạn tính toán giá và lợi nhuận cho các khoản đầu tư trái phiếu. Người dùng có cơ hội thiết lập các lịch trình không chuẩn, bao gồm lịch trình không thường xuyên và không nhất quán cho các giao dịch ghi nợ và tín dụng cũng như quyết toán cuối cùng khi thanh toán hóa đơn. Các hàm độ nhạy kinh tế có thể được tính toán có tính đến các kỳ hạn khác nhau.

Các thuật toán của Gói tài chính để tính toán các chỉ số dòng tiền và dữ liệu khác được phản ánh trong tài khoản tài chính cho phép bạn tính toán, đặc biệt là lãi suất cho vay và tín dụng, tỷ suất sinh lời, biên lai cho vay và tổng dồn tích, đánh giá và dự báo giá trị của danh mục đầu tư , và tính toán các chỉ số khấu hao, v.v. Các chức năng của gói có thể được sử dụng có tính đến các dòng tiền dương và âm (dòng tiền) (phần vượt quá số tiền nhận được so với các khoản thanh toán hoặc số tiền thanh toán bằng tiền mặt tương ứng so với các khoản thu).

Gói Tài chính chứa các thuật toán cho phép bạn phân tích danh mục đầu tư, động lực và các yếu tố nhạy cảm về kinh tế. Đặc biệt, khi xác định hiệu quả đầu tư, các chức năng của gói cho phép bạn tạo danh mục đầu tư thỏa mãn bài toán cổ điển của G. Markowitz. Người dùng có thể kết hợp các thuật toán của gói để tính tỷ lệ Sharpe và tỷ suất lợi nhuận. Phân tích động lực và các yếu tố nhạy cảm về kinh tế cho phép người dùng xác định vị thế cho các giao dịch khung, phòng ngừa rủi ro và giao dịch lãi suất cố định. Gói Tài chính cũng cung cấp khả năng mở rộng để trình bày và trình bày dữ liệu, kết quả dưới dạng đồ thị và biểu đồ truyền thống cho các lĩnh vực kinh tế và tài chính. Tiền mặt có thể được hiển thị ở định dạng thập phân, ngân hàng và tỷ lệ phần trăm theo ý của người dùng.

33. Hộp công cụ lập bản đồ

Gói Bản đồ cung cấp đồ họa và giao diện lệnhđể phân tích dữ liệu địa lý, hiển thị bản đồ và truy cập nguồn lực bên ngoài Dữ liệu địa lý. Ngoài ra, gói này phù hợp để làm việc với nhiều tập bản đồ nổi tiếng. Tất cả những công cụ này, kết hợp với MATLAB, cung cấp cho người dùng tất cả các điều kiện để làm việc hiệu quả với dữ liệu địa lý khoa học. Các tính năng chính của gói:

    trực quan hóa, xử lý và phân tích dữ liệu đồ họa và khoa học;

    hơn 60 phép chiếu bản đồ (trực tiếp và nghịch đảo);

    thiết kế và hiển thị các bản đồ vector, ma trận và tổ hợp;

    giao diện đồ họa để xây dựng và xử lý bản đồ, dữ liệu;

    bản đồ dữ liệu toàn cầu và khu vực và giao diện với dữ liệu chính phủ có độ phân giải cao;

    thống kê địa lý và chức năng điều hướng;

    biểu diễn ba chiều của bản đồ với tính năng đánh dấu và tô bóng tích hợp;

    bộ chuyển đổi cho định dạng phổ biến dữ liệu địa lý: DCW, TIGER, EToro5.

Gói Bản đồ bao gồm hơn 60 phép chiếu được biết đến rộng rãi nhất, bao gồm hình trụ, giả hình trụ, hình nón, đa hình và giả hình nón, phương vị và giả phương vị. Có thể chiếu tiến và lùi, cũng như các loại chiếu không chuẩn do người dùng chỉ định.

Trong gói Bản đồ bằng thẻ là bất kỳ biến hoặc tập hợp biến nào đại diện hoặc gán một giá trị số cho một điểm hoặc khu vực địa lý. Gói này cho phép bạn làm việc với các bản đồ dữ liệu vectơ, ma trận và hỗn hợp. Giao diện đồ họa mạnh mẽ cung cấp trải nghiệm bản đồ tương tác, chẳng hạn như khả năng di chuyển con trỏ đến một đối tượng và nhấp vào đối tượng đó để lấy thông tin. Giao diện đồ họa MAPTOOL là một môi trường phát triển ứng dụng hoàn chỉnh để làm việc với bản đồ.

Các tập bản đồ thiên văn được biết đến rộng rãi nhất trên thế giới, Hoa Kỳ và các tập bản đồ thiên văn đều được bao gồm trong gói này. Cấu trúc dữ liệu địa lý giúp đơn giản hóa việc trích xuất và xử lý dữ liệu từ tập bản đồ và bản đồ. Cấu trúc và chức năng dữ liệu địa lý để tương tác với dữ liệu địa lý bên ngoài ở các định dạng Biểu đồ kỹ thuật số thế giới (DCW), TIGER, TBASE và ETOPO5 được kết hợp với nhau để cung cấp một công cụ mạnh mẽ và linh hoạt để truy cập cơ sở dữ liệu địa lý hiện tại và tương lai. Việc phân tích cẩn thận dữ liệu địa lý thường đòi hỏi các phương pháp toán học hoạt động trong hệ tọa độ cầu. Gói Bản đồ cung cấp một tập hợp con các chức năng địa lý, thống kê và điều hướng để phân tích dữ liệu địa lý. Các tính năng điều hướng cung cấp khả năng mạnh mẽ để thực hiện các nhiệm vụ di chuyển như định vị và lập kế hoạch tuyến đường.

34. Khối hệ thống điện

Hộp công cụ thu thập dữ liệu và hộp công cụ điều khiển thiết bị

Hộp công cụ thu thập dữ liệu - gói mở rộng liên quan đến lĩnh vực thu thập dữ liệu thông qua các khối được kết nối với bus máy tính bên trong, máy phát điện chức năng, máy phân tích phổ - nói tóm lại là các công cụ được sử dụng rộng rãi cho mục đích nghiên cứu để thu thập dữ liệu. Họ được hỗ trợ bởi sự thích hợp cơ sở tính toán. Khối mới Hộp công cụ điều khiển thiết bị cho phép bạn kết nối các thiết bị và dụng cụ với giao diện nối tiếp và với các giao diện Kênh công cộng và VXI.

36. Hộp công cụ cơ sở dữ liệu và Hộp công cụ thực tế ảo

Hộp công cụ cơ sở dữ liệu và Hộp công cụ thực tế ảo

Tốc độ của hộp công cụ Cơ sở dữ liệu đã được tăng hơn 100 lần, nhờ đó thông tin được trao đổi với một số hệ thống quản lý cơ sở dữ liệu thông qua trình điều khiển ODBC hoặc JDBC:

  • Truy cập 95 hoặc 97 Microsoft;

    Microsoft Máy chủ SQL 6,5 hoặc 7,0;

    Máy chủ thích ứng Sybase 11;

    Sybase (trước đây là Watcom) SQL Server Anywhere 5.0;

    IBM DB2 phổ thông 5.0;

  • Computer Associates Ingres (tất cả các phiên bản).

Tất cả dữ liệu được chuyển đổi trước thành mảng ô trong MATLAB 6.0. Trong MATLAB 6.1 bạn cũng có thể sử dụng một loạt các cấu trúc. Visual Query Builder cho phép bạn tạo các truy vấn phức tạp tùy ý bằng các phương ngữ ngôn ngữ SQL những cơ sở dữ liệu này ngay cả khi không có kiến ​​thức về SQL. Nhiều cơ sở dữ liệu không đồng nhất có thể được mở trong một phiên.

Hộp công cụ thực tế ảo có sẵn bắt đầu với MATLAB 6.1. Cho phép bạn thực hiện hoạt ảnh và hoạt ảnh ba chiều, bao gồm cả mô hình Simulink. Ngôn ngữ lập trình - VRML - ngôn ngữ mô hình hóa thực tế ảo(Ngôn ngữ mô hình hóa thực tế ảo). Có thể xem hoạt ảnh từ bất kỳ máy tính nào được trang bị trình duyệt hỗ trợ VRML. Khẳng định rằng toán học là môn khoa học về các mối quan hệ định lượng và các dạng không gian của bất kỳ thế giới thực hoặc ảo nào.

37. Liên kết Excel

Cho phép bạn sử dụng Microsoft Excel 97 làm bộ xử lý I/O MATLAB. Để thực hiện việc này, chỉ cần cài đặt tệp excllinkxla do Math Works cung cấp dưới dạng hàm bổ trợ trong Excel. Trong Excel bạn cần gõ Dịch vụ > Tiện ích bổ sung > Duyệt qua, chọn tệp trong thư mục \matlabrl2\toolbox\exlink và cài đặt nó. Bây giờ, mỗi khi khởi động Excel, cửa sổ lệnh MATLAB sẽ xuất hiện, bảng điều khiển Excel sẽ được bổ sung thêm các nút getmatrix, putmatrix, evalstring. Để đóng MATLAB từ Excel, chỉ cần nhập =MLC1ose() vào bất kỳ ô Excel nào. Để mở sau khi thực hiện lệnh này, bạn cần nhấp vào một trong các nút getmatrix, putmatrix, evalstring hoặc nhập vào Công cụ Excel > Macro > Thực thi mat! tôi biết rồi. Khi chuột được chọn trên một phạm vi ô Excel, bạn có thể nhấp vào getmatrix và nhập tên biến MATLAB. Ma trận sẽ xuất hiện trong Excel. Khi bạn đã điền số vào một phạm vi ô Excel, bạn có thể đánh dấu phạm vi đó, nhấp vào putmatrix và nhập tên biến MATLAB. Do đó, hoạt động rất trực quan. Không giống như MATLAB, Excel Link không phân biệt chữ hoa chữ thường: I và i, J và j tương đương nhau.

Gọi demo các gói mở rộng.

). Trong số các công cụ đa năng được sử dụng trong hóa học, gói MatLab chiếm một vị trí đặc biệt. Độ nổi tiếng của anh ấy cao bất thường. Điều này là do MatLab mạnh mẽ và linh hoạt để xử lý dữ liệu đa chiều. Chính cấu trúc của gói làm cho nó trở thành một công cụ thuận tiện để thực hiện các phép tính ma trận. Một loạt các vấn đề có thể được nghiên cứu bằng MatLab bao gồm: phân tích ma trận, xử lý tín hiệu và hình ảnh, mạng lưới thần kinh và nhiều vấn đề khác. MatLab là một ngôn ngữ mã nguồn mở cấp cao cho phép người dùng có kinh nghiệm hiểu các thuật toán được lập trình. Ngôn ngữ lập trình tích hợp đơn giản giúp bạn dễ dàng tạo các thuật toán của riêng mình. Qua nhiều năm sử dụng MatLab, chúng tôi đã tạo ra số lượng lớn các chức năng và ToolBox (gói công cụ chuyên dụng). Phổ biến nhất là gói PLS ToolBox của Eigenvector Research, Inc.

1. Thông tin cơ bản

1.1. Môi trường làm việc MatLab

Để khởi chạy chương trình, nhấp đúp vào biểu tượng. Môi trường làm việc như trong hình sẽ mở ra trước mắt bạn.

Môi trường làm việc MatLab 6.x hơi khác so với không gian làm việc của các phiên bản trước, nó có giao diện thuận tiện hơn để truy cập nhiều thành phần hỗ trợ

Môi trường làm việc MatLab 6.x chứa các yếu tố sau:

    thanh công cụ với các nút và danh sách thả xuống;

    cửa sổ với các tab Launch Pad và Không gian làm việc, từ đó bạn có thể truy cập các mô-đun ToolBox và nội dung bàn làm việc khác nhau;

    cửa sổ theo thẻ Lịch sử lệnhThư mục hiện tại, nhằm mục đích xem và gọi lại các lệnh đã nhập trước đó, cũng như để thiết lập thư mục hiện tại;

    một cửa sổ lệnh chứa dấu nhắc "đầu vào" và con trỏ dọc nhấp nháy;

    thanh trạng thái.

Nếu trong môi trường làm việc MatLab 6.x Nếu thiếu một số cửa sổ hiển thị trong hình, bạn nên chọn các mục thích hợp trong menu Xem: Cửa sổ lệnh, Lịch sử lệnh , Thư mục hiện tại , Không gian làm việc , Launch Pad .

Các lệnh nên được gõ trong cửa sổ lệnh. Ký hiệu » , biểu thị dấu nhắc dòng lệnh, không cần phải gõ. Để xem khu vực làm việc, thuận tiện sử dụng thanh cuộn hoặc phím Home, End để di chuyển sang trái hoặc phải và PageUp, PageDown để di chuyển lên hoặc xuống. Nếu đột nhiên sau khi di chuyển xung quanh vùng làm việc của cửa sổ lệnh, dòng lệnh có con trỏ nhấp nháy biến mất, bạn chỉ cần nhấn Enter.

Điều quan trọng cần nhớ là việc gõ bất kỳ lệnh hoặc biểu thức nào phải kết thúc bằng việc nhấn Enter để MatLab thực thi lệnh đó hoặc đánh giá biểu thức đó.

1.2. Tính toán đơn giản

Nhập 1+2 vào dòng lệnh và nhấn Enter. Kết quả cửa sổ lệnh MatLab hiển thị như sau:

Cơm. 2 Biểu diễn đồ họa của phân tích thành phần chính

Chương trình MatLab đã làm gì? Đầu tiên, cô tính tổng 1+2, sau đó ghi kết quả vào một biến đặc biệt ans và hiển thị giá trị của nó bằng 3 trong cửa sổ lệnh. Bên dưới phản hồi là dòng lệnh có con trỏ nhấp nháy, cho biết MatLab đã sẵn sàng cho các phép tính tiếp theo. Bạn có thể gõ các biểu thức mới trên dòng lệnh và tìm ý nghĩa của chúng. Nếu bạn cần tiếp tục làm việc với biểu thức trước đó, chẳng hạn như tính (1+2)/4.5, thì cách dễ nhất là sử dụng kết quả hiện có, được lưu trong biến ans. Gõ ans/4.5 (khi nhập số thập phân dấu chấm được sử dụng) và nhấn Đi vào, hóa ra

Cơm. 3 Biểu diễn đồ họa của phân tích thành phần chính

1.3. Lệnh vang vọng

Việc thực thi mỗi lệnh trong MatLab đều kèm theo tiếng vang. Trong ví dụ trên, câu trả lời là ans = 0,6667. Thường thì tiếng vang khiến bạn khó nhận biết hoạt động của chương trình và sau đó có thể tắt nó đi. Để thực hiện việc này, lệnh phải kết thúc bằng dấu chấm phẩy. Ví dụ

Cơm. 4 Ví dụ nhập hàm ScoresPCA

1.4. Bảo vệ môi trường làm việc. tập tin MAT

Cách dễ nhất để lưu tất cả các giá trị biến là sử dụng tùy chọn Save Workspace As trong menu File. Thao tác này sẽ mở hộp thoại Lưu biến không gian làm việc, trong đó bạn phải chỉ định tên thư mục và tệp. Theo mặc định, nên lưu tệp vào thư mục con công việc của thư mục MatLab chính. Chương trình sẽ lưu kết quả công việc của mình vào một tệp có phần mở rộng. Bây giờ bạn có thể đóng MatLab. Trong phiên làm việc tiếp theo, để khôi phục giá trị của các biến, bạn nên mở tệp đã lưu này bằng cách sử dụng mục con Mở của menu Tệp. Bây giờ tất cả các biến được xác định trong phiên trước đều có sẵn. Chúng có thể được sử dụng trong các lệnh mới được nhập.

1.5. Tạp chí

MatLab có khả năng viết lệnh thực thi và kết quả thành một tệp văn bản (ghi nhật ký công việc), sau đó có thể đọc hoặc in từ trình soạn thảo văn bản. Để bắt đầu ghi nhật ký, hãy sử dụng lệnh Nhật ký. Là một đối số lệnh Nhật ký bạn nên chỉ định tên của tệp mà nhật ký công việc sẽ được lưu trữ. Các lệnh được gõ thêm và kết quả thực hiện của chúng sẽ được ghi vào tệp này, ví dụ như một chuỗi lệnh

thực hiện các hành động sau:

    mở nhật ký trong tệp examplel-1.txt;

    thực hiện các phép tính;

    lưu tất cả các biến trong tệp MAT work-1.mat ;

    lưu nhật ký trong tệp Exampl-1.txt trong thư mục con công việc của thư mục gốc MatLab và đóng MatLab;

Xem nội dung của tệp Exampl-1.txt trong một số trình soạn thảo văn bản. Tệp sẽ chứa văn bản sau:

a1=3;
a2=2,5;
a3=a1+a2

Lưu công việc-1
từ bỏ

1.6. Hệ thống trợ giúp

Cửa sổ Trợ giúp MatLab xuất hiện sau khi chọn tùy chọn Cửa sổ Trợ giúp từ trình đơn Trợ giúp hoặc bằng cách nhấp vào nút câu hỏi trên thanh công cụ. Hoạt động tương tự có thể được thực hiện bằng cách gõ lệnh giúp đỡ. Để hiển thị cửa sổ trợ giúp cho từng chủ đề, hãy nhập chủ đề giúp đỡ. Cửa sổ trợ giúp cung cấp cho bạn thông tin tương tự như lệnh trợ giúp, nhưng giao diện cửa sổ cung cấp nhiều thông tin hơn. giao tiếp thuận tiện với các chủ đề trợ giúp khác. Bằng cách sử dụng địa chỉ của trang Web Math Works, bạn có thể truy cập vào máy chủ của công ty và nhận được thông tin mới nhất về các vấn đề mà bạn quan tâm. Bạn có thể kiểm tra các sản phẩm phần mềm mới hoặc tìm câu trả lời cho vấn đề của mình trên trang hỗ trợ kỹ thuật.

2. Ma trận

2.1. Vô hướng, vectơ và ma trận

Trong MatLab bạn có thể sử dụng đại lượng vô hướng, vectơ và ma trận. Để nhập một đại lượng vô hướng, chỉ cần gán giá trị của nó cho một biến nào đó là đủ, chẳng hạn

Lưu ý rằng MatLab phân biệt chữ hoa và chữ in hoa nên p và P là các biến khác nhau. Để nhập mảng (vectơ hoặc ma trận), các phần tử của chúng được đặt trong dấu ngoặc vuông. Vì vậy, để nhập vectơ hàng 1x3, hãy sử dụng lệnh sau, trong đó các thành phần hàng được phân tách bằng dấu cách hoặc dấu phẩy.

Khi nhập một vectơ cột, các phần tử được phân tách bằng dấu chấm phẩy. Ví dụ,

Thật thuận tiện khi nhập các ma trận nhỏ trực tiếp từ dòng lệnh. Trong đầu vào, ma trận có thể được coi là một vectơ cột, mỗi phần tử của ma trận là một vectơ hàng.

hoặc một ma trận có thể được coi là một vectơ hàng, mỗi phần tử của nó là một vectơ cột.

2.2. Truy cập các phần tử

Việc truy cập vào các phần tử ma trận được thực hiện bằng cách sử dụng hai chỉ số - số hàng và số cột được đặt trong ngoặc đơn, ví dụ: lệnh B(2,3) sẽ trả về phần tử của hàng thứ hai và cột thứ ba của ma trận B. Để chọn một cột hoặc hàng từ ma trận, hãy sử dụng số cột hoặc hàng của ma trận làm một trong các chỉ mục và thay thế chỉ mục kia bằng dấu hai chấm. Ví dụ: viết hàng thứ hai của ma trận A vào vectơ z

Bạn cũng có thể chọn khối ma trận bằng dấu hai chấm. Ví dụ: hãy chọn từ ma trận P một khối được đánh dấu bằng màu

Nếu bạn cần xem các biến môi trường làm việc, bạn cần gõ lệnh trên dòng lệnh ai .

Có thể thấy rằng môi trường làm việc chứa một ma trận vô hướng (p), bốn ma trận (A, B, P, P1) và một vectơ hàng (z).

2.3. Các phép toán ma trận cơ bản

Khi sử dụng các phép toán ma trận, hãy nhớ rằng để cộng hoặc trừ, các ma trận phải có cùng kích thước và khi nhân, số cột của ma trận thứ nhất phải bằng số hàng của ma trận thứ hai. Phép cộng và trừ ma trận, cũng như số và vectơ, được thực hiện bằng dấu cộng và dấu trừ

và phép nhân được đánh dấu bằng dấu hoa thị *. Hãy để chúng tôi giới thiệu một ma trận có kích thước 3 × 2

Nhân ma trận với một số cũng được thực hiện bằng cách sử dụng dấu hoa thị và bạn có thể nhân với một số ở cả bên phải và bên trái. Việc nâng ma trận vuông lên lũy thừa số nguyên được thực hiện bằng toán tử ^

Kiểm tra kết quả bằng cách nhân ma trận P với chính nó.

2.4. Tạo ma trận thuộc loại đặc biệt

Việc điền các số 0 vào ma trận hình chữ nhật được thực hiện bằng hàm tích hợp số không

Ma trận nhận dạng được tạo bằng hàm mắt

Một ma trận bao gồm các ma trận được hình thành nhờ việc gọi hàm những cái

MatLab cung cấp khả năng điền ma trận bằng các số ngẫu nhiên. Kết quả của hàm rand là một ma trận các số phân bố đều giữa 0 và 1 và các hàm randn- một ma trận các số được phân bố theo quy luật chuẩn với giá trị trung bình bằng 0 và phương sai đơn vị.

Chức năng chẩn đoán tạo thành một ma trận đường chéo từ một vectơ, sắp xếp các phần tử dọc theo đường chéo.

2.5. Tính toán ma trận

MatLab chứa nhiều các chức năng khác nhauđể làm việc với ma trận. Vì vậy, ví dụ, việc hoán vị ma trận được thực hiện bằng cách sử dụng dấu nháy đơn "

Ma trận nghịch đảo được tìm thấy bằng hàm mời cho ma trận vuông

3. Tích hợp MatLab và Excel

Việc tích hợp MatLab và Excel cho phép người dùng Excel truy cập nhiều chức năng MatLab để xử lý dữ liệu, tính toán khác nhau và trực quan hóa kết quả. Tiện ích bổ sung excllink.xla phần mở rộng này Khả năng Excel. Các chức năng đặc biệt được xác định để liên lạc giữa MatLab và Excel.

3.1. Cấu hình Excel

Trước khi thiết lập Excel để làm việc cùng với MatLab, bạn nên đảm bảo rằng Excel Link được bao gồm trong phiên bản đã cài đặt MatLab. Trong thư mục con exclink của thư mục MatLab chính hoặc thư mục con hộp công cụ sẽ có một tệp có bổ trợ excllink.xla. Khởi chạy Excel và chọn Bổ trợ từ menu Công cụ. Một hộp thoại xuất hiện chứa thông tin về các phần bổ trợ hiện có. Sử dụng nút Duyệt, chỉ định đường dẫn đến tệp excllink.xla. Dòng xuất hiện danh sách tiện ích bổ sung trong hộp thoại Excel Link 2.0 để sử dụng với MatLab với lá cờ được đặt. Nhấn OK, add-in cần thiết đã được thêm vào Excel.

Xin lưu ý rằng Excel hiện có thanh công cụ Excel Link chứa ba nút: putmatrix, getmatrix, evalstring. Các nút này thực hiện các hành động cơ bản cần thiết để thực hiện mối quan hệ giữa Excel và MatLab - trao đổi dữ liệu ma trận và thực thi các lệnh MatLab từ môi trường Excel. Khi Excel được khởi chạy lại, phần bổ trợ excllink.xla sẽ tự động được kết nối.

Công việc phối hợp của Excel và MatLab yêu cầu thêm một số cài đặt được chấp nhận theo mặc định trong Excel (nhưng có thể thay đổi). Trong menu Công cụ, đi tới Tùy chọn, hộp thoại Tùy chọn sẽ mở ra. Chọn tab Chung và đảm bảo rằng cờ kiểu tham chiếu R1C1 đã bị tắt, tức là. các ô được đánh số A1, A2, v.v. Trên tab Chỉnh sửa, phải đặt cờ Di chuyển lựa chọn sau Enter.

3.2. Trao đổi dữ liệu giữa MatLab và Excel

Khởi chạy Excel, kiểm tra xem mọi thứ đã được thực hiện chưa cài đặt cần thiết như đã mô tả ở phần trước (MatLab phải được đóng lại). Nhập ma trận vào các ô từ A1 đến C3, sử dụng dấu chấm để phân tách các vị trí thập phân theo yêu cầu của Excel.

Chọn dữ liệu ô trên trang tính và nhấp vào nút putmatrix, xuất hiện Cửa sổ Excel với cảnh báo rằng MatLab không chạy. Nhấn OK, đợi MatLab mở.

Một hộp thoại Excel xuất hiện với một dòng đầu vào để chỉ định tên của biến bàn làm việc MatLab mà dữ liệu từ các ô Excel đã chọn sẽ được xuất vào đó. Ví dụ: nhập M và đóng cửa sổ bằng nút OK. Chuyển sang cửa sổ lệnh MatLab và đảm bảo rằng biến M được tạo trong bàn làm việc chứa mảng ba nhân ba:

Thực hiện một số thao tác trong MatLab với ma trận M, ví dụ như đảo ngược nó.

Gọi mờiĐể đảo ngược ma trận, giống như bất kỳ lệnh MatLab nào khác, bạn có thể thực hiện trực tiếp từ Excel. Nhấp vào nút evalstring nằm trên bảng Excel Link sẽ xuất hiện hộp thoại, trong dòng nhập bạn nên gõ lệnh MatLab

IM=inv(M) .

Kết quả thu được tương tự khi thực hiện lệnh trên môi trường MatLab.

Quay lại Excel, biến ô A5 thành ô hiện tại và nhấp vào nút getmatrix. Xuất hiện hộp thoại có dòng nhập yêu cầu bạn nhập tên biến cần nhập vào Excel. TRONG trong trường hợp này một biến như vậy là IM. Bấm OK, các ô từ A5 đến A7 đã nhập các phần tử ma trận nghịch đảo.

Vì vậy, để xuất ma trận sang MatLab bạn nên chọn tế bào phù hợp Trang tính Excel và để nhập nó chỉ cần chỉ định một ô, đây sẽ là phần tử phía trên bên trái của mảng đã nhập. Các phần tử còn lại sẽ được ghi vào các ô của bảng tính theo kích thước của mảng, ghi đè dữ liệu chứa trong đó nên bạn nên cẩn thận khi nhập mảng.

Cách tiếp cận trên là cách đơn giản nhất để trao đổi thông tin giữa các ứng dụng - dữ liệu nguồn được chứa trong Excel, sau đó được xuất sang MatLab, được xử lý ở đó theo một cách nào đó và kết quả được nhập vào Excel. Người dùng chuyển dữ liệu bằng các nút thanh công cụ Excel Link. Thông tin có thể được trình bày dưới dạng ma trận, tức là diện tích hình chữ nhật của bảng tính. Các ô được sắp xếp trong một hàng hoặc cột được xuất tương ứng sang vectơ hàng và vectơ cột trong MatLab. Việc nhập vectơ hàng và vectơ cột vào Excel diễn ra theo cách tương tự.

4. Lập trình

4.1. Tệp M

Làm việc từ dòng lệnh MatLab trở nên khó khăn nếu bạn cần nhập nhiều lệnh và thay đổi chúng thường xuyên. Viết nhật ký bằng lệnh Nhật ký và duy trì môi trường làm việc giúp công việc dễ dàng hơn một chút. Cách thuận tiện nhất để thực thi các nhóm lệnh MatLab là sử dụng tệp M, trong đó bạn có thể nhập lệnh, thực thi tất cả chúng cùng một lúc hoặc từng phần, lưu chúng vào một tệp và sử dụng chúng sau này. Trình chỉnh sửa M-file được thiết kế để hoạt động với M-files. Với sự trợ giúp của nó, bạn có thể tạo các hàm của riêng mình và gọi chúng, kể cả từ cửa sổ lệnh.

Mở rộng menu Tệp của cửa sổ MatLab chính và trong mục Mới, chọn mục con M-file. Tệp mới sẽ mở trong cửa sổ soạn thảo M-file, được hiển thị trong hình.

Có hai loại M-file trong MatLab: file chương trình ( Tập lệnh M), chứa một chuỗi lệnh và các hàm tệp, ( Chức năng M-Files), mô tả các hàm do người dùng định nghĩa.

4.2. Chương trình tập tin

Nhập các lệnh trong trình soạn thảo để xây dựng hai biểu đồ trên một cửa sổ đồ họa

Bây giờ hãy lưu tệp có tên mydemo.m trong thư mục con công việc của thư mục MatLab chính bằng cách chọn Lưu dưới dạng từ menu Tệp của trình chỉnh sửa. Để chạy tất cả các lệnh có trong tệp, chọn Chạy từ menu Gỡ lỗi. Một cửa sổ đồ họa sẽ xuất hiện trên màn hình Hình 1, chứa đồ thị của hàm số.

Lệnh chương trình tập tin xuất ra cửa sổ lệnh. Để chặn đầu ra, bạn phải kết thúc lệnh bằng dấu chấm phẩy. Nếu xảy ra lỗi khi gõ và MatLab không thể nhận dạng lệnh, thì các lệnh cho đến lệnh nhập sai sẽ được thực thi, sau đó thông báo lỗi sẽ hiển thị trong cửa sổ lệnh.

Một cơ hội rất thuận tiện được cung cấp Trình soạn thảo tập tin M, là việc thực hiện một phần của lệnh. Đóng cửa sổ đồ họa Hình 1. Chọn bằng chuột trong khi giữ nút trái, hoặc các phím mũi tên trong khi giữ phím Sự thay đổi, bốn lệnh đầu tiên và thực thi chúng từ mục Văn bản. Xin lưu ý rằng chỉ có một biểu đồ được hiển thị trong cửa sổ đồ họa, tương ứng với các lệnh được thực thi. Hãy nhớ rằng để thực thi một số lệnh, hãy chọn chúng và nhấn phím F9.

Các khối riêng lẻ của tệp M có thể được cung cấp các chú thích, chúng được bỏ qua trong quá trình thực thi nhưng thuận tiện khi làm việc với tệp M. Nhận xét bắt đầu bằng dấu phần trăm và tự động được đánh dấu bằng màu xanh lục, ví dụ:

Khai mạc tập tin M hiện cóđược thực hiện bằng cách sử dụng mục menu Mở Tệp của môi trường làm việc hoặc trình chỉnh sửa tệp M.

4.3. Chức năng tập tin

Chương trình tệp được thảo luận ở trên chỉ là một chuỗi các lệnh MatLab; nó không có đối số đầu vào hoặc đầu ra. Để sử dụng các phương pháp số và khi lập trình các ứng dụng của riêng bạn trong MatLab, bạn phải có khả năng tạo các hàm tệp thực hiện các hành động cần thiết với các đối số đầu vào và trả về kết quả của hành động đó trong các đối số đầu ra. Hãy xem một vài ví dụ đơn giản để giúp bạn hiểu cách làm việc với các hàm tệp.

Khi xử lý trước dữ liệu từ phân tích hóa học đa biến, phương pháp định tâm thường được sử dụng. Sẽ rất hợp lý khi viết hàm tệp một lần, sau đó gọi nó ở bất cứ nơi nào cần thực hiện việc căn giữa. Mở một tệp mới trong trình soạn thảo M-file và gõ

Từ hàm ở dòng đầu tiên chỉ định rằng tệp này có chứa tệp hàm. Dòng đầu tiên là tiêu đề hàm, chứa tên hàm và danh sách các đối số đầu vào và đầu ra. Trong ví dụ, tên hàm là centering, một đối số đầu vào là X và một đối số đầu ra là Xc. Tiếp theo tiêu đề là các nhận xét và sau đó là phần nội dung của hàm (trong ví dụ này nó bao gồm hai dòng), trong đó giá trị của nó được tính toán. Điều quan trọng là giá trị tính toán được ghi vào Xc. Đừng quên bao gồm dấu chấm phẩy để ngăn thông tin không cần thiết hiển thị trên màn hình. Bây giờ hãy lưu tập tin vào thư mục làm việc của bạn. Xin lưu ý rằng việc chọn Lưu hoặc Lưu dưới dạng từ menu Tệp sẽ dẫn đến hộp thoại Lưu Tệp xuất hiện, với trường Tên tệp đã chứa tên ở giữa. Đừng thay đổi nó, hãy lưu tệp chức năng vào một tệp có tên gợi ý!

Bây giờ, hàm đã tạo có thể được sử dụng theo cách tương tự như hàm sin, cos và các hàm khác có sẵn. Các hàm riêng có thể được gọi từ một chương trình tệp và từ một hàm tệp khác. Cố gắng tự viết một hàm tệp sẽ chia tỷ lệ ma trận, tức là chia mỗi cột cho độ lệch chuẩn của cột đó.

Bạn có thể viết một tệp hàm với một số đối số đầu vào, được đặt trong danh sách được phân tách bằng dấu phẩy. Bạn cũng có thể tạo các hàm trả về nhiều giá trị. Để thực hiện điều này, các đối số đầu ra được thêm vào, phân tách bằng dấu phẩy, vào danh sách các đối số đầu ra và bản thân danh sách này được đặt trong dấu ngoặc vuông. Một ví dụ điển hình là hàm chuyển đổi thời gian được chỉ định tính bằng giây thành giờ, phút và giây.

Khi gọi các hàm tệp có nhiều đối số đầu ra, kết quả phải được ghi vào một vectơ có độ dài phù hợp.

4.4 Tạo biểu đồ

MatLab có nhiều khả năng hiển thị đồ họa vectơ và ma trận cũng như tạo nhận xét và in biểu đồ. Hãy để chúng tôi mô tả một số chức năng đồ họa quan trọng.

Chức năng kịch bản có nhiều dạng khác nhau được liên kết với các tham số đầu vào, ví dụ: cốt truyện (y) tạo một biểu đồ tuyến tính từng phần của các phần tử y so với chỉ số của chúng. Nếu hai vectơ được đưa ra làm đối số, thì cốt truyện (x, y) sẽ tạo ra đồ thị của y theo x. Ví dụ: để vẽ hàm sin trong phạm vi từ 0 đến 2π, hãy làm như sau

Chương trình đã xây dựng đồ thị phụ thuộc, hiển thị trong cửa sổ Hình 1

MatLab tự động gán một màu khác nhau cho từng ô (trừ khi người dùng làm như vậy), cho phép bạn phân biệt giữa các tập dữ liệu.

Đội giữ lấy cho phép bạn thêm các đường cong vào biểu đồ hiện có. Chức năng tình tiết phụ cho phép bạn hiển thị nhiều biểu đồ trong một cửa sổ

4.5 In đồ thị

Mục In trong menu Tệp và lệnh in in đồ họa MatLab. Menu In sẽ hiển thị hộp thoại cho phép bạn chọn các tùy chọn in tiêu chuẩn phổ biến. Đội in cung cấp tính linh hoạt cao hơn ở đầu ra và cho phép kiểm soát việc in từ tập tin M. Kết quả có thể được gửi trực tiếp đến máy in mặc định hoặc được lưu trong một tệp được chỉ định.

5. Chương trình mẫu

Phần này mô tả các thuật toán được sử dụng phổ biến nhất trong phân tích dữ liệu đa chiều. Cả hai phương pháp chuyển đổi dữ liệu đơn giản nhất - định tâm và chia tỷ lệ - và các thuật toán phân tích dữ liệu - PCA, PLS - đều được xem xét.

5.1. Định tâm và chia tỷ lệ

Thông thường trong quá trình phân tích cần phải chuyển đổi dữ liệu gốc. Các phương pháp được sử dụng phổ biến nhất để chuyển đổi dữ liệu là căn giữa và chia tỷ lệ cho từng biến theo độ lệch chuẩn của nó. Mã chức năng để căn giữa ma trận đã được đưa ra. Do đó, bên dưới chỉ hiển thị mã của hàm quy mô dữ liệu. Xin lưu ý rằng ma trận ban đầu phải được căn giữa

hàm Xs = chia tỷ lệ (X)
Tỷ lệ %: ma trận đầu ra là Xs
% ma trận X phải được căn giữa

Xs = X * inv(diag(std(X)));

% kết thúc chia tỷ lệ

5.2. SVD/PCA

Phương pháp nén dữ liệu phổ biến nhất trong phân tích đa biến là phân tích thành phần chính (PCA). Theo quan điểm toán học, PCA là sự phân rã của ma trận gốc X, I E. biểu diễn của nó dưới dạng tích của hai ma trận TP

X = TP t+ E

Ma trận Tđược gọi là ma trận điểm số, ma trận được gọi là ma trận các phần dư.

Cách đơn giản nhất để tìm ma trận TP- sử dụng phân tách SVD thông qua hàm MatLab tiêu chuẩn được gọi là svd .

hàm = pcasvd(X)

Svd(X);
T=U*D;
P=V;

% kết thúc của pcasvd

5.3 PCA/NIPALS

Để xây dựng tài khoản và tải PCA, thuật toán lặp lại NIPALS được sử dụng để tính toán một thành phần ở mỗi bước. Đầu tiên là ma trận gốc Xđược chuyển đổi (ở mức tối thiểu - căn giữa; xem) và biến thành ma trận E 0 , Một= 0. Tiếp theo, thuật toán sau được áp dụng.

t 2. P t = t t EMột / t t t 3. P = P / (P t P) ½ 4. t = EMột P / P t P 5. Kiểm tra sự hội tụ, nếu không thì chuyển sang bước 2

Sau khi tính tiếp theo ( Một-th) các thành phần, chúng tôi giả sử tMột=tPMột=P E Một+1 = EMộtt P Một TRÊN Một+1.

Mã cho thuật toán NIPALS có thể do độc giả tự viết; trong sách hướng dẫn này, các tác giả trình bày phiên bản của riêng họ. Khi tính PCA, bạn có thể nhập số thành phần chính (biến sốPC). Nếu không biết cần bao nhiêu thành phần thì bạn viết = pcanipals(X) vào dòng lệnh sau đó chương trình sẽ thiết lập số thành phần bằng kích thước nhỏ nhất của ma trận ban đầu X.

hàm = pcanipals(X, numberPC)

% tính toán số lượng thành phần
= kích thước(X); P=; T=;

Nếu chiều dài(numberPC) > 0
pc = sốPC(1);
elseif (độ dài(numberPC) == 0) & X_r< X_c
pc = X_r;
khác
pc = X_c;
kết thúc;

với k = 1:pc
P1 = rand(X_c, 1); T1 = X * P1; d0 = T1"*T1;
P1 = (T1" * X/(T1" * T1))"; P1 = P1/chuẩn(P1); T1 = X * P1; d = T1" * T1;

Trong khi d - d0 > 0,0001;
P1 = (T1" * X/(T1" * T1)); P1 = P1/chuẩn(P1); T1 = X * P1; d0 = T1"*T1;
P1 = (T1" * X/(T1" * T1)); P1 = P1/chuẩn(P1); T1 = X * P1; d = T1"*T1;
kết thúc

X = X - T1 * P1; P = cat(1, P, P1"); T = ;
kết thúc

Cách tính PCA bằng tiện ích bổ sung Chemometrics được mô tả trong hướng dẫn

5.4PLS1

Phương pháp phổ biến nhất để hiệu chuẩn đa biến là phương pháp chiếu lên cấu trúc tiềm ẩn (PLS). Phương pháp này liên quan đến việc phân tách đồng thời ma trận dự đoán X và ma trận đáp ứng Y:

X=TP t+ E Y=UQ t+ F T=XW(P t W) –1

Phép chiếu được xây dựng nhất quán - để tối đa hóa mối tương quan giữa các vectơ tương ứng X-tài khoản tMộtY-tài khoản bạnMột. Nếu khối dữ liệu Y bao gồm nhiều phản hồi (tức là K>1), có thể xây dựng hai phép chiếu của dữ liệu ban đầu – PLS1 và PLS2. Trong trường hợp đầu tiên, với mỗi câu trả lời y k không gian con chiếu riêng của nó được xây dựng. Đồng thời, hóa đơn T (bạn) và tải P (W, Q) phụ thuộc vào phản ứng nào được sử dụng. Cách tiếp cận này được gọi là PLS1. Đối với phương pháp PLS2, chỉ có một không gian chiếu được xây dựng, đây là điểm chung cho tất cả các phản hồi.

Mô tả chi tiết về phương pháp PLS được đưa ra trong cuốn sách này. Để xây dựng các tài khoản và tải PLS1, thuật toán lặp lại được sử dụng. Đầu tiên là ma trận ban đầu XY trung tâm

= mc(X);
= mc(Y);

và chúng biến thành một ma trận E 0 và vectơ f 0 , Một= 0. Sau đó, thuật toán sau được áp dụng cho chúng

1. w t = fMột t E Một 2. w = w / (w t w) ½ 3. t = EMột w 4. q = t t fMột / t t t 5. bạn = qfMột / q 2 6. P t = t t EMột / t t t

Sau khi tính tiếp theo ( Một-th) các thành phần, chúng tôi giả sử tMột=tPMột=P. Để có được thành phần tiếp theo, bạn cần tính số dư E Một+1 = EMộtt P t và áp dụng thuật toán tương tự cho chúng, thay thế chỉ mục Một TRÊN Một+1.

Đây là mã cho thuật toán này được lấy từ cuốn sách

hàm = xin vui lòng (x, y)
%PLS: tính toán thành phần PLS.
% Các vectơ đầu ra là w, t, u, q và p.
%
% Chọn một vectơ từ y làm vectơ u bắt đầu.

u = y(:, 1);

% Tiêu chí hội tụ được đặt ra rất cao.
kri = 100;

% Các lệnh từ đây đến cuối được lặp lại cho đến khi hội tụ.
trong khi (kri > 1e - 10)

% Mỗi vectơ bắt đầu u được lưu dưới dạng uold.
uold = bạn; w = (u" * x)"; w = w/chuẩn mực(w);
t = x * w; q = (t" * y)"/(t" * t);
u = y * q/(q" * q);

% Tiêu chuẩn hội tụ là chuẩn của u-uold chia cho chuẩn của u.
kri = Norm(uold - u)/norm(u);
kết thúc;

% Sau khi hội tụ, tính p.
p = (t" * x)"/(t" * t);

%Xin vui lòng kết thúc

Giới thiệu về tính toán PLS1 bằng tiện ích bổ sung Hóa họcThêm vào trongđược mô tả trong các phương pháp Chiếu thủ công trong Excel.

5.5PLS2

Đối với PLS2, thuật toán như sau. Đầu tiên là ma trận ban đầu XY biến đổi (ít nhất - ở giữa; xem) và chúng biến thành ma trận E 0 và F 0 , Một= 0. Sau đó, thuật toán sau đây được áp dụng cho chúng.

1. Chọn vectơ ban đầu bạn 2. w t = bạn t E Một 3. w = w / (w t w) ½ 4. t = EMột w 5. q t = t t FMột / t t t 6. bạn = FMột q/ q t q 7. Kiểm tra sự hội tụ, nếu không thì chuyển sang câu 2 8. P t = t t EMột / t t t

Sau khi tính tiếp theo ( Mộtồ) Cần đặt các thành phần PLS2: tMột=t, PMột=p,wMột=w, bạnMột=bạnq một = q. Để có được thành phần tiếp theo, bạn cần tính số dư E Một+1 = EMộttp t và FMột +1 = F Mộttq t và áp dụng thuật toán tương tự cho chúng, thay thế chỉ mục Một TRÊN Một+1.

Đây là mã, cũng được mượn từ cuốn sách.

hàm = xin vui lòng (x, y, a)
% PLS: tính toán thành phần PLS.
% Các ma trận đầu ra là W, T, U, Q và P.
% B chứa các hệ số hồi quy và SS là tổng của
% bình phương cho phần dư.
% a là số thành phần.
%
% Đối với một thành phần: sử dụng tất cả các lệnh để kết thúc.

Với i=1:a
% Tính tổng các bình phương. Hãy sử dụng hàm ss.
sx = ;
sy = ;

% Hãy sử dụng hàm để tính một thành phần.
= xin vui lòng(x, y);

% Tính số dư.
x = x - t * p";
y = y - t * q";

% Lưu các vectơ trong ma trận.
W = ;
T = ;
U = ;
Q = ;
P = ;
kết thúc;

% Tính hệ số hồi quy sau vòng lặp.
B=W*inv(P"*W)*Q";

% Cộng SS dư cuối cùng vào tổng các vectơ bình phương.
sx=;
sy=;

% Tạo ma trận vectơ ss cho X và Y.
SS = ;

%Tính phần SS đã sử dụng.
= kích thước(SS);
tt = (SS * diag(SS(1,:).^(-1)) - cái(a, b)) * (-1)

%Kết thúc xin vui lòng

hàm số = ss(x)
%SS: tính tổng bình phương của ma trận X.
%

ss=sum(sum(x. * x));
%Cuối giây

Giới thiệu về tính toán PLS2 bằng tiện ích bổ sung Hóa họcThêm vào trongđược mô tả trong các phương pháp Chiếu thủ công trong Excel.

Phần kết luận

MatLab là một công cụ rất phổ biến để phân tích dữ liệu. Theo khảo sát, có tới 1/3 tổng số nhà nghiên cứu sử dụng nó, trong khi chương trình Unsrambler chỉ được 16% nhà khoa học sử dụng. Nhược điểm chính của MatLab là giá cao. Ngoài ra, MatLab còn tốt cho việc tính toán thông thường. Việc thiếu tính tương tác gây bất tiện khi thực hiện tìm kiếm, tính toán nghiên cứu các tập dữ liệu mới, chưa được khám phá.

Những người làm việc với môn toán cao cấp biết rất rõ những “con quái vật” toán học mà đôi khi họ phải đối mặt. Ví dụ, bạn có thể dành rất nhiều thời gian, năng lượng tinh thần và các tế bào thần kinh không thể phục hồi để tính một tích phân ba khổng lồ nào đó. Tất nhiên, rất thú vị khi thách thức tích phân và giành được nó. Nhưng thay vào đó, điều gì sẽ xảy ra nếu tích phân đe dọa lấy bạn? Hoặc tệ hơn, tam thức bậc ba đã vượt khỏi tầm kiểm soát và trở nên điên loạn? Bạn sẽ không mong điều này xảy ra với kẻ thù của mình.


Trước đây, chỉ có hai lựa chọn: từ bỏ mọi thứ và đi dạo, hoặc tham gia vào trận chiến kéo dài nhiều giờ với tích phân. Chà, đối với một số người thì mất nhiều giờ, đối với những người khác thì mất nhiều phút - ai đã nghiên cứu cách thực hiện. Nhưng đó không phải là vấn đề. Thế kỷ XX và sự tiến bộ không ngừng chuyển động mang lại cho chúng ta một con đường thứ ba, cụ thể là, chúng cho phép chúng ta tính tích phân phức tạp nhất một cách “nhanh chóng”. Điều tương tự cũng áp dụng cho việc giải tất cả các loại phương trình, vẽ đồ thị của hàm số dưới dạng hyperboloid bậc ba, v.v.

Đối với những tình huống đặc biệt nhưng xảy ra định kỳ như vậy ở học sinh, có một vũ khí toán học mạnh mẽ. Dành cho những ai chưa biết, hãy tham khảo gói phần mềm MATLAB.

Matlab sẽ giải phương trình, tính gần đúng và xây dựng đồ thị của hàm số. Bạn có hiểu điều này có nghĩa gì không, thưa các bạn?

Điều này có nghĩa là nó là một trong những gói xử lý dữ liệu mạnh mẽ nhất hiện nay. Cái tên tượng trưng cho Ma trậnPhòng thí nghiệm. Phòng thí nghiệm ma trận, nếu bằng tiếng Nga . Khả năng của chương trình bao gồm hầu hết các lĩnh vực toán học. Vì vậy, bằng cách sử dụng Matlab, bạn có thể:

  • Thực hiện tất cả các loại phép tính trên ma trận, giải phương trình tuyến tính, làm việc với vectơ;
  • Tính toán gốc của đa thức ở bất kỳ mức độ nào, thực hiện các phép toán trên đa thức, vi phân, ngoại suy và nội suy các đường cong, xây dựng đồ thị của bất kỳ hàm số nào;
  • Tiến hành phân tích thống kê dữ liệu bằng cách sử dụng lọc kỹ thuật số, hồi quy thống kê;
  • Giải phương trình vi phân. Trong các đạo hàm riêng, tuyến tính, phi tuyến, có điều kiện biên - không thành vấn đề, Matlab sẽ giải quyết được mọi thứ;
  • Thực hiện các phép tính số học.

Ngoài tất cả những điều này, khả năng của MATLAB còn cho phép bạn trực quan hóa dữ liệu, bao gồm xây dựng biểu đồ ba chiều và tạo video hoạt hình.

Tất nhiên, mô tả của chúng tôi về Matlab vẫn chưa hoàn chỉnh. Ngoài những khả năng và chức năng do nhà sản xuất cung cấp, còn có một số lượng lớn các công cụ Matlab được viết đơn giản bởi những người đam mê hoặc các công ty khác.

MATLAB là ngôn ngữ lập trình


Nó cũng là ngôn ngữ lập trình được sử dụng trực tiếp khi làm việc với chương trình. Chúng ta sẽ không đi sâu vào chi tiết mà chỉ nói rằng các chương trình viết bằng MATLAB có hai loại: hàm và tập lệnh.


Tệp làm việc chính của chương trình là tệp M. Đây là một tệp văn bản vô tận và trong đó các phép tính được lập trình trực tiếp. Nhân tiện, đừng để từ này làm bạn sợ - để làm việc trong MATLAB, bạn không cần phải là một lập trình viên chuyên nghiệp.

Các tập tin M được chia thành

  • kịch bản M. Tập lệnh M là loại tệp M đơn giản nhất và không có đối số đầu vào hoặc đầu ra. Tệp này được sử dụng để tự động hóa các phép tính lặp đi lặp lại.
  • Hàm M. Hàm M là các tệp M chấp nhận các đối số đầu vào và đầu ra.

Để thể hiện rõ ràng công việc diễn ra như thế nào trong MATLAB, dưới đây chúng tôi đưa ra một ví dụ về cách tạo hàm trong Matlab. Chức năng này sẽ tính giá trị trung bình của vectơ.
f hàm y = trung bình(x)
% TRUNG BÌNH Giá trị trung bình của các phần tử vectơ.
% TRUNG BÌNH(X), trong đó X là một vectơ. Tính trung bình các phần tử của một vectơ.
% Nếu đối số đầu vào không phải là vectơ thì sẽ xảy ra lỗi.
= kích thước(x);
nếu (~((m == 1) | (n == 1)) | (m == 1 & n == 1))
error("Mảng đầu vào phải là một vectơ')
kết thúc
y = tổng(x)/độ dài(x); % Tính toán thực tế

Dòng định nghĩa hàm cho MATLAB biết rằng tệp là hàm M và cũng chỉ định danh sách các đối số đầu vào. Do đó, dòng định nghĩa cho hàm trung bình trông như sau:
hàm y = trung bình(x)
Ở đâu:

  1. chức năng - từ khóa, xác định hàm M;
  2. y - đối số đầu ra;
  3. trung bình - tên hàm;
  4. x là đối số đầu vào.

Vì vậy, để viết một hàm trong Matlab, bạn cần nhớ rằng mọi hàm trong hệ thống MATLAB đều có một dòng định nghĩa hàm tương tự như dòng dưới đây.

Tất nhiên, một gói mạnh mẽ như vậy là cần thiết không chỉ để giúp cuộc sống của sinh viên dễ dàng hơn. Hiện nay, MATLAB một mặt rất được các chuyên gia trong nhiều lĩnh vực khoa học và kỹ thuật rất ưa chuộng. Mặt khác, khả năng làm việc với các ma trận lớn khiến MATLAB trở thành một công cụ không thể thiếu đối với các nhà phân tích tài chính, cho phép họ giải quyết nhiều vấn đề hơn, chẳng hạn như Excel nổi tiếng. Bạn có thể đọc thêm về điều này trong bài viết đánh giá.

Nhược điểm khi làm việc với MATLAB


Những khó khăn khi làm việc với MATLAB là gì? Có lẽ chỉ có một khó khăn. Nhưng cơ bản. Để phát huy đầy đủ các khả năng của MATLAB và dễ dàng giải quyết các vấn đề nảy sinh trước mắt, bạn sẽ phải làm việc chăm chỉ và trước tiên phải hiểu bản thân Matlab (cách tạo tệp, cách tạo hàm, v.v.). Và điều này không đơn giản như vậy, bởi vì quyền lực và cơ hội rộng lớn đòi hỏi phải có sự hy sinh.

Ngay cả khi chúng ta muốn, chúng ta cũng không thể nói rằng MATLAB làchương trình đơn giản. Tuy nhiên, chúng tôi hy vọng rằng tất cả những điều trên sẽ là cơ sở đủ để tiếp tục phát triển nó.

Và cuối cùng. Nếu bạn không biết tại sao mọi thứ trong cuộc sống của bạn lại diễn ra theo cách này mà không phải theo cách khác, hãy hỏi Matlab về điều đó. Chỉ cần gõ “tại sao” vào dòng lệnh. Anh ấy sẽ trả lời. Thử nó!

Bây giờ bạn đã biết các khả năng của Matlab. Trong lĩnh vực giáo dục, MATLAB thường được sử dụng trong giảng dạy các phương pháp số và đại số tuyến tính. Nhiều học sinh không thể thiếu nó khi xử lý kết quả của một thí nghiệm được thực hiện trong phòng thí nghiệm. Để nắm vững các khái niệm cơ bản khi làm việc với MATLAB một cách nhanh chóng và hiệu quả, bạn luôn có thể liên hệ với chúng tôi, chúng tôi sẵn sàng trả lời bất kỳ câu hỏi nào của bạn bất kỳ lúc nào.

Mục tiêu của công việc: làm quen với các lệnh cơ bản của hệ thống MATLAB

Sổ tay phòng thí nghiệm

MATLAB LÀ GÌ?

MATLAB là một ngôn ngữ hiệu suất cao để tính toán kỹ thuật. Nó bao gồm các phép tính, trực quan hóa và lập trình trong một môi trường thân thiện với người dùng, nơi các vấn đề và giải pháp được thể hiện dưới dạng gần giống với toán học. Sử dụng điển hình MATLAB- Cái này:

    Tính toán toán học;

    tạo ra các thuật toán;

    làm người mẫu;

    phân tích, nghiên cứu và trực quan hóa dữ liệu;

    đồ họa khoa học và kỹ thuật;

    phát triển ứng dụng, bao gồm cả việc tạo giao diện đồ họa.

MATLAB là một hệ thống tương tác trong đó phần tử dữ liệu chính là một mảng. Điều này cho phép bạn giải quyết các vấn đề tính toán kỹ thuật khác nhau, đặc biệt là các vấn đề liên quan đến ma trận và vectơ, nhanh hơn nhiều lần so với việc viết chương trình bằng các ngôn ngữ lập trình “vô hướng” như hoặc Fortran .

Từ MATLAB có nghĩa là phòng thí nghiệm ma trận ( phòng thí nghiệm ma trận ). MATLABđược viết đặc biệt để cung cấp dễ dàng truy cậpĐẾN LINPACKEISPACK, đại diện cho hiện đại phần mềm cho việc tính toán ma trận.

MATLAB đã phát triển qua nhiều năm, tập trung vào những người dùng khác nhau. Trong môi trường đại học, nó là một công cụ tiêu chuẩn để làm việc trong nhiều lĩnh vực toán học, kỹ thuật và khoa học. Trong công nghiệp, MATLAB là một công cụ để nghiên cứu, phát triển và phân tích dữ liệu hiệu quả cao.

TRONG MATLAB Một vai trò quan trọng được thực hiện bởi các nhóm chương trình chuyên biệt được gọi là hộp công cụ. Chúng rất quan trọng đối với hầu hết người dùng MATLAB, vì chúng cho phép bạn nghiên cứu và áp dụng các phương pháp chuyên biệt. Hộp công cụ là một tập hợp đầy đủ các tính năng MATLAB(M-files), cho phép giải quyết các loại vấn đề cụ thể. Hộp công cụ được sử dụng để xử lý tín hiệu, hệ thống điều khiển, mạng lưới thần kinh, logic mờ, wavelet, mô hình hóa, v.v.

HỆ THỐNG MATLAB

Hệ thống MATLAB bao gồm năm phần chính:

    Ngôn ngữ MATLAB. Nó là ngôn ngữ mảng và ma trận cấp cao với tính năng quản lý luồng, chức năng, cấu trúc dữ liệu, I/O và các tính năng lập trình hướng đối tượng. Điều này cho phép bạn lập trình cả “quy mô nhỏ” để tạo nhanh các chương trình thô và “quy mô lớn” để tạo các ứng dụng lớn và phức tạp.

    Thứ Tư MATLAB . Đây là một bộ công cụ và thiết bị mà người dùng hoặc lập trình viên làm việc vớiMATLAB . Nó bao gồm các công cụ để quản lý các biến trong không gian làm việcMATLAB , đầu vào và đầu ra dữ liệu, đồng thời tạo, giám sát và gỡ lỗi các tệp M và ứng dụng MATLAB.

    Đồ họa được điều khiển Đây là một hệ thống đồ họaMATLAB , bao gồm các lệnh cấp cao để trực quan hóa dữ liệu 2D và 3D, xử lý hình ảnh, hoạt ảnh và đồ họa minh họa. Nó cũng bao gồm các lệnh cấp thấp cho phép bạn chỉnh sửa hoàn toàn hình thức đồ họa, giống như khi bạn tạoGiao diện đồ họa người dùng (GUI) Vì MATLAB các ứng dụng.

    Thư viện các hàm toán học. Đây là một tập hợp phong phú các thuật toán tính toán từ các hàm cơ bản như tổng, sin, cosin, số học phức tạp đến các thuật toán phức tạp hơn như nghịch đảo ma trận, tìm giá trị riêng, hàm Bessel và biến đổi Fourier nhanh.

Giao diện phần mềm. Đây là thư viện cho phép bạn viết chương trình bằngFortran tương tác vớiMATLAB . Nó bao gồm các phương tiện để gọi các chương trình từMATLAB (kết nối động), gọi điệnMATLAB như một công cụ tính toán và để đọc và ghi các tệp MAT.

GIỚI THIỆU SIMULINK

Simulink, đi kèm MATLAB chương trình là một hệ thống tương tác để mô hình hóa các hệ thống động phi tuyến. Đó là môi trường được điều khiển bằng chuột cho phép bạn mô phỏng một quy trình bằng cách kéo và thao tác các khối sơ đồ trên màn hình.Simulink làm việc với các hệ thống tuyến tính, phi tuyến, liên tục, rời rạc, đa chiều.

Khối - đây là những bổ sung choSimulink , cung cấp các thư viện khối cho các ứng dụng chuyên biệt như truyền thông, xử lý tín hiệu, hệ thống điện.

Hội thảo thời gian thực là một chương trình cho phép bạn tạoVỚI mã từ các khối sơ đồ và chạy chúng trên các hệ thống thời gian thực khác nhau.

Ma trận và hình vuông ma thuật

Cách tốt nhất để bắt đầu là với MATLAB- là học cách xử lý ma trận. TRONG MATLAB ma trận là một mảng số hình chữ nhật. Tầm quan trọng đặc biệt được dành cho ma trận 1x1, là ma trận vô hướng và ma trận có một cột hoặc một hàng, được gọi là vectơ. MATLAB sử dụng nhiều cách khác nhau để lưu trữ dữ liệu số và không phải số, nhưng lúc đầu, tốt nhất nên coi tất cả dữ liệu là ma trận. MATLABđược tổ chức sao cho mọi hoạt động trong đó diễn ra tự nhiên nhất có thể. Trong khi những người khác ngôn ngữ lập trình làm việc với những con số như những yếu tố của ngôn ngữ, MATLAB cho phép bạn thao tác nhanh chóng và dễ dàng toàn bộ ma trận.

Một ví dụ điển hình về ma trận có thể được tìm thấy trong một bản khắc từ thời Phục hưng của một nghệ sĩ và một người đam mê toán học. Albrecht Durer . Hình ảnh này chứa rất nhiều ký hiệu toán học và nếu nhìn kỹ bạn có thể thấy một ma trận vuông ở góc trên bên phải. Ma trận này được gọi là hình vuông ma thuật và vào thời Dürer, nó được cho là có đặc tính ma thuật. Nó thực sự có những đặc tính đáng chú ý đáng để nghiên cứu.

NHẬP MA TRẬN

Bạn có thể nhập ma trận vào MATLAB theo nhiều cách:

    nhập danh sách đầy đủ các phần tử;

    tải ma trận từ các tập tin bên ngoài;

    tạo ma trận bằng các hàm dựng sẵn;

    tạo ma trận bằng các hàm của riêng bạn trong M-files.

Hãy bắt đầu bằng cách giới thiệu ma trận Durer dưới dạng danh sách các phần tử. Bạn phải tuân theo một số điều kiện cơ bản:

    phân tách các phần tử chuỗi bằng dấu cách hoặc dấu phẩy

    sử dụng dấu chấm phẩy, ; , để đánh dấu sự kết thúc của mỗi dòng

    bao quanh toàn bộ danh sách các phần tử bằng dấu ngoặc vuông, .

Để nhập một ma trận Durer chỉ cần viết (Hình 1.1):

A=

MATLAB sẽ hiển thị ma trận chúng ta đã nhập,

A=

16 3 2 13

5 10 11 8

9 6 7 12

4 15 14 1

Cơm. 1.1 Ví dụ đoạn cửa sổ lệnh MATLAB

Điều này khớp chính xác với các con số trên bản khắc. Nếu chúng ta nhập một ma trận, nó sẽ tự động được môi trường ghi nhớ MATLAB. Và chúng ta có thể dễ dàng gọi cô ấy là MỘT. Bây giờ chúng ta chúng ta có MỘT trong không gian làm việcMATLAB(Hình 1.2)

Cơm. 1.2 Ví dụ về đoạn không gian làm việc của MATLAB

HOẠT ĐỘNG TỔNG CÁC PHẦN MỀM, CHUYỂN VỊ VÀ ĐƯỜNG CHÉO CỦA MA TRẬN

Bạn có thể đã biết rằng các tính chất đặc biệt của hình vuông ma thuật có liên quan đến những cách khác nhau để tính tổng các phần tử của nó. Nếu bạn lấy tổng các phần tử dọc theo hàng hoặc cột bất kỳ hoặc dọc theo bất kỳ đường chéo chính nào, bạn sẽ luôn nhận được cùng một số. Hãy kiểm tra điều này bằng cách sử dụng MATLAB. Tuyên bố đầu tiên chúng tôi sẽ kiểm tra là

tổng (A)

MATLAB sẽ đưa ra câu trả lời

trả lời =

34 34 34 34

Khi biến đầu ra không được xác định, MATLAB sử dụng một biến đáp, viết tắt của đáp án - đáp án để lưu trữ kết quả tính toán. Chúng tôi đã tính toán một vectơ hàng chứa tổng các phần tử của các cột ma trận MỘT. Thật vậy, mỗi cột có tổng bằng nhau, tổng kỳ diệu là 34.

Còn số lượng hàng thì sao? MATLAB thích làm việc với các cột của ma trận, vì vậy cách tốt nhất để lấy tổng trong các hàng là hoán vị ma trận của chúng ta, tính tổng trong các cột rồi hoán vị kết quả. Hoạt động chuyển vị được biểu thị bằng dấu nháy đơn hoặc dấu ngoặc đơn. Nó lật ma trận xung quanh đường chéo chính và hoán đổi các hàng thành các cột. Như vậy

MỘT'

nguyên nhân

trả lời =

16 5 9 4

3 10 6 15

2 11 7 14

13 8 12 1

Và sự biểu hiện

tổng(A')'

làm cho kết quả là một vectơ cột chứa tổng trong các hàng

trả lời =

34

34

34

34

Tổng các phần tử trên đường chéo chính có thể dễ dàng tính được bằng hàm chẩn đoán, chọn đường chéo này.

chẩn đoán (A)

trả lời =

16

10

7

1

một chức năng

tổng(diag(A))

nguyên nhân

trả lời =

34

Vì vậy, chúng tôi đã kiểm tra rằng ma trận trên bản khắc Durer thực sự kỳ diệu và học cách sử dụng một số phép toán ma trận MATLAB. Trong các phần tiếp theo, chúng tôi sẽ tiếp tục sử dụng ma trận này để chứng minh các khả năng bổ sung. MATLAB .

CHỈ SỐ

Phần tử trong dòng Tôi và cột j ma trận MỘTđóng góp bởi MỘT(tôi, j). Ví dụ, MỘT(4,2) là số ở hàng thứ tư và cột thứ hai. Đối với hình vuông ma thuật của chúng tôi MỘT(4,2) = 15. Như vậy ta tính được tổng các phần tử ở cột thứ 4 của ma trận MỘT bằng cách gõ

A(1,4) + A(2,4) + A(3,4) + A(4,4)

trả lời =

34

Tuy nhiên, đây không phải là cách tốt nhất để tính tổng một hàng.

Cũng có thể truy cập các phần tử ma trận thông qua một chỉ mục duy nhất, MỘT(k). Cái này cách thông thườngđề cập đến các hàng và cột của một ma trận. Nhưng nó chỉ có thể được sử dụng với ma trận hai chiều. Trong trường hợp này, mảng được coi là một vectơ dài được hình thành từ các cột của ma trận ban đầu.

Vì vậy, đối với hình vuông ma thuật của chúng ta, MỘT(8) là một cách khác để chỉ giá trị 15 được lưu trữ trong MỘT(4,2).

Nếu bạn đang cố gắng sử dụng giá trị của một phần tử bên ngoài ma trận, MATLAB sẽ báo lỗi:

t=A(4.5)

??? Index vượt quá kích thước ma trận.

Mặt khác, nếu bạn lưu trữ một giá trị bên ngoài ma trận thì kích thước của ma trận sẽ tăng lên.

X=A;

X(4,5) = 17

X =

16 3 2 13 0

5 10 11 8 0

9 6 7 12 0

4 15 14 1 17

toán tử đại tràng

Dấu hai chấm, : , là một trong những toán tử quan trọng nhấtMATLAB . Nó biểu hiện dưới nhiều hình thức khác nhau. Sự biểu lộ

1:10

trả lời =

1 2 3 4 5 6 7 8 9 10

Để có được khoảng nghịch đảo, chúng tôi mô tả mức tăng. Ví dụ

100:-7:50

trả lời =

100 93 86 79 72 65 58 51

0:pi/4:pi

dẫn đến

trả lời =

0 0.7854 1.5708 2.3562 3.1416

Biểu thức chỉ mục, bao gồm cả dấu hai chấm, đề cập đến một phần của ma trận. MỘT(1:k,j) là k phần tử đầu tiên j cột ma trận thứ MỘT.

Vì thế tổng(A(4, 1:4))
tính tổng của hàng thứ tư. Nhưng có một cách tốt hơn. Bản thân dấu hai chấm đề cập đến tất cả các phần tử trong hàng và cột của ma trận và từ kết thúc - ĐẾN dòng cuối cùng hoặc cột. Vì thế

tổng (A(:,cuối))

tính tổng các phần tử ở cột cuối cùng của ma trận MỘT

trả lời =

34

Tại sao tổng kỳ diệu của hình vuông 4x4 là 34? Nếu các số nguyên từ 1 đến 16 được sắp xếp thành bốn nhóm có tổng bằng nhau thì tổng đó phải là

tổng(1:16)/4

tất nhiên là bằng nhau

trả lời =

34

CHỨC NĂNG MA THUẬT

MATLAB thực sự có một chức năng tích hợp để tạo ra một hình vuông ma thuật có kích thước gần như bất kỳ. Không có gì đáng ngạc nhiên, chức năng này được gọi là ảo thuật.

B=ma thuật(4)

B=

16 2 3 13

5 11 10 8

9 7 6 12

4 14 15 1

Ma trận này gần giống với ma trận trong bản khắc Durer , và nó có tất cả các đặc tính kỳ diệu tương tự. Điểm khác biệt duy nhất là hai cột ở giữa đã đổi chỗ cho nhau. Để chuyển đổi TRONG vào ma trận Durer
MỘT, hãy sắp xếp lại chúng.

A=B(:,)

Điều này có nghĩa là với mỗi hàng của ma trận TRONG các phần tử được viết lại theo thứ tự 1, 3, 2, 4

A=

16 3 2 13

5 10 11 8

9 6 7 12

4 15 14 1

Tại sao Durer sắp xếp lại các cột so với những gì nó sử dụngMATLAB ? Không còn nghi ngờ gì nữa, ông ấy muốn ghi ngày khắc, 1514, ở dưới cùng của hình vuông ma thuật.

BIỂU THỨC

Giống như hầu hết các ngôn ngữ lập trình khác, MATLAB cung cấp khả năng sử dụng các biểu thức toán học, nhưng không giống như nhiều biểu thức khác, những biểu thức này trong MATLAB bao gồm cả ma trận. Các thành phần chính của biểu thức:

    biến

    toán tử

BIẾN

TRONG MATLAB không cần xác định loại hoặc thứ nguyên biến. Khi MATLAB gặp một tên biến mới, nó sẽ tự động tạo biến đó và phân bổ lượng bộ nhớ thích hợp. Nếu biến đã tồn tại, MATLAB thay đổi thành phần của nó và nếu cần thiết sẽ phân bổ bộ nhớ bổ sung. Ví dụ,

num_students = 25

tạo ma trận 1x1 có tên num_students và lưu trữ giá trị 25 trong phần tử duy nhất của nó.

Tên biến bao gồm các chữ cái, số hoặc dấu gạch dưới. MATLAB chỉ sử dụng 31 ký tự đầu tiên của tên biến. MATLAB Phân biệt chữ hoa chữ thường, nó phân biệt chữ hoa và chữ thường. Đó là lý do tại sao MỘTMỘT– không cùng một biến. Để xem ma trận liên kết với một biến, chỉ cần nhập tên biến.

SỐ

MATLAB sử dụng hệ thống số thập phân thông thường, với dấu thập phân tùy chọn và dấu cộng/trừ cho số. Hệ thống số khoa học sử dụng chữ cái eđể xác định số nhân của lũy thừa mười. Số ảo được sử dụng Tôi hoặc j như một hậu tố.

Tất cả các số được lưu trữ bằng định dạng dài được xác định theo tiêu chuẩn dấu phẩy động IEE. Số dấu phẩy động có độ chính xác giới hạn khoảng 16 chữ số có nghĩa và phạm vi giới hạn khoảng 10 -308 đến 10308 (Máy tính VAX sử dụng định dạng dấu phẩy động khác, nhưng độ chính xác và phạm vi của chúng gần như nhau).

NGƯỜI ĐIỀU HÀNH

Biểu thức sử dụng các phép tính số học thông thường và các quy tắc ưu tiên.

Phép cộng

– phép trừ

* phép nhân

/ phân công

\ phép chia trái (được mô tả ở phần Ma trận và Đại số tuyến tính trong sách

“Sử dụng MATLAB”)

^ độ

‘ chuyển vị liên hợp phức tạp

() xác định thứ tự tính toán

CHỨC NĂNG

MATLAB cung cấp một số lượng lớn các hàm toán học cơ bản như abs, sqrt, exp, tội lỗi. Tính căn bậc hai hoặc logarit của một số âm không phải là một lỗi: trong trường hợp này, kết quả là số phức tương ứng. MATLAB cũng cung cấp thêm hàm phức tạp, bao gồm hàm Gamma và hàm Bessel. Hầu hết các hàm này đều có đối số phức tạp. Để liệt kê tất cả các hàm toán học cơ bản, hãy nhập

giúp đỡ

Để hiển thị các hàm ma trận và toán học phức tạp hơn, hãy nhập

giúp đỡ

giúp đỡ elmat

tương ứng.

Một số tính năng như mét vuôngtội, -được xây dựng trong Họ là một phần MATLAB, vì vậy chúng rất hiệu quả, nhưng các chi tiết tính toán của chúng rất khó truy cập. Trong khi các tính năng khác như gammabồn rửađược thực hiện trong M-files. Do đó, bạn có thể dễ dàng xem mã của họ và thậm chí sửa đổi nó nếu cần.

Một số hàm đặc biệt cung cấp giá trị của các hằng số được sử dụng thường xuyên.

số pi 3.14159265…

tôi đơn vị tưởng tượng

j cũng giống như tôi

eps độ chính xác tương đối của số dấu phẩy động

số dấu phẩy động nhỏ nhất realmin

số dấu phẩy động lớn nhất realmax

vô cực

NaN không phải là số

Vô cực xuất hiện khi chia cho 0 hoặc khi thực hiện một biểu thức toán học dẫn đến tràn, tức là vượt quá realmax. Không phải là một con số (NaN)được tạo khi đánh giá các biểu thức như 0/0 hoặc Inf-Inf, không có ý nghĩa toán học cụ thể.

Tên hàm không được bảo lưu, vì vậy có thể thay đổi giá trị của chúng thành giá trị mới chẳng hạn

eps = 1.e-6

rõ ràng eps

BIỂU THỨC

Bạn đã thấy một số ví dụ về cách sử dụng biểu thức trong MATLAB. Dưới đây là một số ví dụ khác kèm theo kết quả.

rho = (1+sqrt(5))/2

rho =

1.6180

MỘT= cơ bụng(3+4i)

một =

5

z = sqrt(besselk(4/3,rho-i))

0,3730 + 0,3214i

rất lớn = exp(log(realmax))

rất lớn = 1,7977e+308

quá lớn = pi*khổng lồ

quá lớn = Inf

TẠO MA TRẬN

MATLAB có bốn hàm tạo ma trận cơ bản:

số không tất cả số không

tất cả các đơn vị

rand sự phân bố đồng đều của các phần tử ngẫu nhiên

phân phối chuẩn Randn của các phần tử ngẫu nhiên

Vài ví dụ:

Z = số không(2,4)

Z=

0 0 0 0

0 0 0 0

F = 5*người(3,3)

F=

5 5 5

5 5 5

5 5 5

N = sửa(10*rand(1,10))

N=

9 2 6 4 8 7 4 0 8 4

R = randn(4,4)

R=

-0.4326 -1.1465 0.3273 -0.5883

-1.6656 1.1909 0.1746 2.1832

0.1253 1.1892 -0.1867 -0.1364

0.2877 -0.0376 0.7258 0.1139

Đội trọng tảiđọc tập tin nhị phân, chứa ma trận được tạo trong MATLAB trước đó hoặc các tệp văn bản chứa dữ liệu số. Tệp văn bản phải được định dạng dưới dạng bảng hình chữ nhật gồm các số được phân cách bằng dấu cách, với số phần tử bằng nhau trên mỗi dòng. Ví dụ: hãy tạo bên ngoài MATLAB tệp văn bản chứa 4 dòng:

16.0 3.0 2.0 13.0

5.0 10.0 11.0 8.0

9.0 6.0 7.0 12.0

4.0 15.0 14.0 1.0

Hãy lưu tập tin này dưới tên magik.dat. Sau đó độitảimagik.dat sẽ đọc tệp này và tạo một biến ma thuật chứa ma trận của chúng tôi.

HIỆP HỘI

Hợp nhất là quá trình kết hợp các ma trận nhỏ để tạo ra ma trận lớn hơn. Trên thực tế, bạn đã tạo ma trận đầu tiên bằng cách kết hợp các phần tử riêng lẻ của nó. Một cặp dấu ngoặc vuông là toán tử hợp. Ví dụ: hãy bắt đầu với ma trận MỘT(hình vuông ma thuật 4x4) và hình dạng

B = [A A+32; A+48 A+16]

Kết quả sẽ là ma trận 8x8 thu được bằng cách nối 4 ma trận con

B=

16 3 2 13 48 35 34 45

5 10 11 8 37 42 43 40

9 6 7 12 41 38 39 44

4 15 14 1 36 47 46 33

64 51 50 61 32 19 18 29

53 58 59 56 21 26 27 24

57 54 55 60 25 22 23 28

52 63 62 49 20 31 30 17

Ma trận này chỉ có một nửa phép thuật. Các phần tử của nó là sự kết hợp của các số nguyên từ 1 đến 64 và tổng trong các cột chính xác bằng giá trị của hình vuông ma thuật 8x8.

tổng (B)

trả lời =

260 260 260 260 260 260 260 260

Tuy nhiên, tổng trong các hàng của ma trận này ( tổng(B')') không phải tất cả đều giống nhau. Cần có các thao tác bổ sung để làm cho ma trận này thực sự là một hình vuông ma thuật 8x8.

XÓA HÀNG VÀ CỘT

Bạn có thể xóa hàng và cột khỏi ma trận chỉ bằng một vài dấu ngoặc vuông. Hãy xem xét

X = A;

Bây giờ hãy xóa cột thứ hai của ma trận X.

X(:,2) =

Thao tác này sẽ thay đổi X theo cách sau

X =

16 2 13

5 11 8

9 7 12

4 14 1

Nếu loại bỏ một phần tử của ma trận thì kết quả sẽ không còn là ma trận nữa. Vì vậy biểu thức

X(1,2) =

kết quả tính toán sẽ gây ra sai số. Tuy nhiên, việc sử dụng một chỉ mục sẽ loại bỏ một phần tử hoặc chuỗi phần tử và chuyển các phần tử còn lại thành một vectơ hàng. Vì thế

X(2:2:10) =

sẽ cho kết quả

X =

16 9 2 7 13 12 1

PHÉP NHÂN MA TRẬN

Khi nhân hai ma trận, toán tử '*' được sử dụng. Ví dụ, nếu

A=

16 3 2 13

5 10 11 8

9 6 7 12

4 15 14 1

B=

16 4 7 3

5 -7 2 9

0 8 23 65

-7 4 17 9

Sau đó C = A*B sẽ cho kết quả

C =

180 111 385 322

74 70 444 892

90 98 440 644

132 27 397 1066

MATLAB còn cung cấp khả năng thực hiện phép nhân từng phần tử. Dấu chấm trước dấu nhân được sử dụng cho mục đích này. Ví dụ:

C = A.*B

kết quả là

C=

256 12 14 39

25 -70 22 72

0 48 161 780

-28 60 238 9

TẠO M-FILES

Tệp M là các tệp văn bản thông thường được tạo bằng trình soạn thảo văn bản. Đối với môi trường hoạt động của máy tính cá nhân, hệ thống MATLAB hỗ trợ trình soạn thảo/gỡ lỗi tích hợp đặc biệt, mặc dù có thể sử dụng bất kỳ trình gỡ lỗi nào khác. soạn thảo văn bản bằng mã ASCII.

Có hai cách để mở trình soạn thảo:

    từ menu Tệp, chọn tùy chọn Mới rồi chọn M-File.

    sử dụng lệnh chỉnh sửa biên tập .

Hàm M là các tệp M chấp nhận các đối số đầu vào và đầu ra. Chúng làm việc với các biến trong không gian làm việc của riêng chúng, khác với không gian làm việc của hệ thống MATLAB.

Ví dụ

Hàm trung bình là một M-file khá đơn giản dùng để tính giá trị trung bình của các phần tử của một vectơ:

hàm y = trung bình(x)

% TRUNG BÌNH Giá trị trung bình của các phần tử vectơ.

% TRUNG BÌNH(X), trong đó X là một vectơ. Tính giá trị trung bình của các phần tử

vectơ %.

% Nếu đối số đầu vào không phải là vectơ thì sẽ xảy ra lỗi.

Kích thước (x);

Nếu (~((m == 1) | (n == 1)) | (m == 1 & n == 1))

Error('Mảng đầu vào phải là một vectơ')

Kết thúc

Y = tổng(x)/độ dài(x); % Tính toán thực tế

Hãy thử nhập các lệnh này vào một tệp M có tên trung bình.m. Hàm trung bình chấp nhận một đối số đầu vào và một đối số đầu ra duy nhất. Để gọi hàm trung bình, bạn phải nhập các câu lệnh sau:

z = 1:99;

trung bình(z)


Chúng tôi nhận được kết quả

đáp án = 50

ĐẶC ĐIỂM THỐNG KÊ CỦA TÍN HIỆU

Giá trị trung bình của tín hiệu (thành phần không đổi của nó) được xác định theo công thức sau:

(1.1)

Độ lệch chuẩn (RMS, độ lệch, thành phần thay đổi) của tín hiệu được xác định theo công thức sau:

(1.2)

Nghĩa lỗi thống kê tín hiệu thu được xác định theo công thức sau:

(1.3)

Hàm phân phối chuẩn được mô tả bằng công thức sau:

(1.4)

BÀI TẬP

    Làm việc thông qua các lệnh cơ bản được nêu ở trên trong MATLAB.

    Tạo hàm M lấy đầu vào là một vectơ có kích thước tùy ý với dữ liệu và trả về:

    1. giá trị trung bình được tính theo công thức (1.1), cũng như thu được nhờ áp dụng hàm trung bình;

      độ lệch chuẩn được tính theo công thức (1.2), cũng như thu được nhờ áp dụng hàm std.

    Tạo hàm M lấy dữ liệu làm đầu vào là vectơ có kích thước tùy ý và trả về giá trị lỗi thống kê T.E. theo công thức (1.3).

    Hãy tự khám phá hàm biểu đồ hist (xem phần trợ giúp về hàm này - doc hist).

    Vẽ đồ thị của hàm phân phối chuẩn theo công thức (1.4) sử dụng hàm đồ thị và hàm fplot.

    Tạo hàm M dựa trên lệnh randn tạo ra nhiễu ngẫu nhiên có phân phối chuẩn với giá trị trung bình và độ lệch chuẩn cho trước.