2010-01-25 51 views

Trả lời

0

Có 2 cách để làm điều này:

  1. Sử dụng Matlab cơ trong đó có một giao diện C (xem liên kết của câu trả lời đầu tiên cho điều đó). Bắt buộc phải cài đặt Matlab trên tất cả các máy mà bạn muốn chạy (xem giấy phép Matlab để biết chi tiết)
  2. Sử dụng Bộ tạo Matlab cho Java để biên dịch mã MATLAB và tạo trực tiếp giao diện Java của các chức năng của bạn. Với giải pháp này, bạn cần đến trình biên dịch Matlab và Trình xây dựng Matlab cho Java nhưng sau đó bạn có thể triển khai giải pháp của mình mà không phải trả thêm bất cứ thứ gì nữa. Lưu ý rằng bạn phải cài đặt Matlab Compiler Runtime (MCR) trên mỗi máy nhưng điều này hoàn toàn miễn phí.
5

Nếu bạn không muốn mua Bộ công cụ MATLAB của MathWork cho Java Toolbox, bạn có thể sử dụng JMI không có giấy tờ của MATLAB (Giao diện Java-MATLAB). Tìm kiếm nhóm tin CSSM (hoặc Google) cho JMI hoặc JMatLink dựa trên JMI. Mã MATLAB chính nó là đầy đủ các ví dụ sử dụng JMI - tìm kiếm "jmi" bằng cách sử dụng công cụ tìm kiếm của MATLAB Editor trong toàn bộ cài đặt MATLAB.

Lưu ý rằng JMI không được tài liệu hoặc cũng không được MathWorks hỗ trợ chính thức. Hơn nữa, nếu sử dụng không đúng cách nó có thể treo hoặc treo ứng dụng của bạn. Nhưng nó hoàn toàn miễn phí, không giống như hộp công cụ.

1

Thay vì sử dụng JMI không có giấy tờ (Giao diện Java MATLAB) được Yair đề cập, bạn có thể sử dụng matlabcontrol là một API Java bao quanh JMI giúp dễ sử dụng hơn. Nó được viết thành văn bản và có phần giới thiệu walkthrough. Không giống như sử dụng trực tiếp JMI, nó cũng có thể được sử dụng khi chạy một chương trình Java bên ngoài MATLAB.

1

Tôi đã sử dụng Java Builder để chạy tập lệnh/chức năng MATLAB trong ứng dụng java và có vẻ như rất dễ dàng và hữu ích.

Với mục đích này, bạn cần có hộp công cụ Java Builder JA để triển khai tập lệnh/hàm MATLAB làm lớp java.

Sau đó, bạn cần thêm lớp java (đã chuyển đổi) vào thư viện dự án java của bạn và thêm tệp jar javabuilder.

Sau khi thực hiện các bước trên, bạn có thể dễ dàng chạy tập lệnh matlab (giờ đây là lớp java trong thư viện dự án) bằng cách gọi tên lớp trong mã. Nếu lớp là một hàm matlab, bạn có thể chuyển các paramenters và nhận các giá trị trả về dễ dàng.

Nhưng offcourse, nó không phải là phương pháp duy nhất để làm điều đó. Nhưng điều này có vẻ dễ dàng đối với tôi tương đối.

Tôi hy vọng điều này sẽ trả lời cho câu hỏi của bạn.

Các vấn đề liên quan