Tôi có vấn đề sau: Tôi muốn mô phỏng một số hệ thống kỹ thuật điều khiển. Vì nó khá phức tạp, tôi đã sử dụng máy tính để lấy được một số phương trình (phức tạp) chỉ có thể được xuất sang mã fortran77. Trên máy tính của tôi phát triển này không có vấn đề (máy linux).Làm thế nào để biên dịch các đối tượng fortran đơn bằng cách sử dụng dịch f2c?
Không, tôi muốn làm điều đó trong phần cứng và ở đây tôi phải sử dụng hệ điều hành windows. Thật không may matlab không hỗ trợ gfortran trên cửa sổ. Vì vậy tôi không thể biên dịch các tập tin fortran trên hộp đó.
Ý tưởng của tôi bây giờ là dịch sang C là trình biên dịch C có sẵn tại MATLAB trên chiến thắng. Bất kỳ tùy chọn nào khác (tốt hơn)?
Tôi có một số SUBROUTINES theo cách sau.
SUBROUTINE sys_rhs (x, v, dx, param)
REAL*8 x(6)
C code is coming here
RETURN
END SUBROUTINE
Có thực hành tốt và không cho nó hoạt động để sử dụng chức năng sys_rhs__
trong hàm giao diện viết bằng C? Vấn đề là, tôi không thể kiểm tra nó vì tôi không có quyền truy cập lớn vào máy tính Windows. Vì vậy, nó sẽ làm việc nếu tôi thử nó và tôi không cần phải thử nghiệm rất nhiều.
Ngoài ra tôi cần những gì trên cửa sổ? Tôi có thể lấy chúng ở đâu?
Cảm ơn Christian
Dịch sang C thực sự có vẻ là tùy chọn tồi tệ nhất. Tùy thuộc vào phiên bản MATLAB của bạn, nó sẽ hỗ trợ * một số trình biên dịch fortran. Vì bất kỳ trình biên dịch fortran nào trong 10-15 năm qua sẽ biên dịch mã f77, chỉ cần tìm trình biên dịch khác - một trình biên dịch làm việc với MATLAB và sử dụng nó. Hoặc nếu bạn có một giấy phép MATLAB Linux, sử dụng intel's trên Linux - nó miễn phí trên Linux, nếu bộ nhớ phục vụ cho tôi. Ngoài ra, anh chàng này được cho là quản lý để có được gfortran/g95 + matlab để chơi tốt, vì vậy nó có thể. – Rook
Như tôi đã viết: Trong Linux không có vấn đề gì cả. Tôi có thể biên dịch bằng cách sử dụng gfortran và mô phỏng.Nhưng phần cứng được kết nối với một máy giành chiến thắng ... Tại http://www.mathworks.de/support/compilers/R2010a/win32.html chỉ có trình biên dịch fortran intel propietary được đề cập (R2010a được cài đặt bởi người quản trị). –
@ChristianWol: nó không phải là rất rõ ràng từ câu hỏi của bạn, bạn đang nói về việc tạo ra các tập tin MEX Fortran? – Amro