2014-11-11 22 views
7

Tôi tự hỏi sự khác nhau giữa LAPACK E và LAPACK là gì. Tôi muốn phân tích Eigen với phân tích QZ, nhưng tôi không chắc liệu tôi có nên bắt đầu với LAPACK E hoặc LAPACK hay không. Tôi đánh giá cao sự giúp đỡ nào.sự khác biệt giữa lapacke và lapack

+1

Từ các mô tả thẻ Stack Overflow và đọc kết quả tìm kiếm khác nhau của Google và Wikipedia, nó trông giống như LAPACK là một thư viện FORTRAN viết bằng FORTRAN, và LAPACKE là một thư viện C wrapper xung quanh thư viện FORTRAN LAPACK. – ajp15243

Trả lời

3

Bạn có thể muốn sử dụng LAPACKE vì nó giải phóng bạn khỏi việc viết trình trợ giúp để chuyển đổi từ/sang chế độ hàng chính sang chế độ chính cột cho ma trận trước/sau cuộc gọi LAPACK.

8

LAPACKE là trình bao bọc C cho thư viện F90 LAPACK chuẩn. Thành thật mà nói, nó dễ dàng hơn (và hiệu quả hơn) để làm những điều trực tiếp với LAPACK chỉ miễn là bạn lưu trữ những thứ cột lớn. LAPACKE kết thúc cuộc gọi (trong một số thời trang) các thói quen LAPACK anyways.

+0

Đúng vậy. Cuối cùng, tôi đã kết thúc bằng cách sử dụng LAPACKE trong mã C++ của tôi, bởi vì theo cách này tôi không cần phải lo lắng về việc cấp phát bộ nhớ. Ngoài ra, khi sử dụng LAPACKE, tôi đã sử dụng tùy chọn cột chính (LAPACK_COL_MAJOR) bằng cách lưu trữ mảng của tôi theo kiểu cột chính, vì theo cách này, LAPACKE tiêu thụ ít bộ nhớ hơn (không cần chuyển đổi từ hàng chính sang cột chính). – user3405291

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