Python nội suy 3D nhanh
Nội suy láng giềng tự nhiên là một phương pháp nội suy dữ liệu phân tán (i. e. bạn biết các giá trị của hàm tại các vị trí rải rác). Nó thường vượt trội so với phép nội suy barycentric tuyến tính, đây là phương pháp nội suy thường được sử dụng do hàm griddata của Scipy cung cấp Có một số cách triển khai phép nội suy hàng xóm tự nhiên 2D trong Python. Chúng tôi cần triển khai 3D nhanh có thể chạy mà không cần GPU, vì vậy chúng tôi đã viết triển khai Nội suy Sibson rời rạc (một phiên bản nội suy lân cận tự nhiên nhanh nhưng gây ra các lỗi nhỏ so với phép nội suy lân cận tự nhiên “hình học”) Cách sử dụngMô-đun này hiển thị một chức năng duy nhất, API cho Có một số phương tiện chung có sẵn trong SciPy để nội suy và làm mịn dữ liệu ở các chiều 1, 2 và cao hơn. Việc lựa chọn một thói quen nội suy cụ thể phụ thuộc vào dữ liệu. cho dù nó là một chiều, được đưa ra trên một lưới có cấu trúc hay không có cấu trúc. Một yếu tố khác là độ mịn mong muốn của bộ nội suy. Tóm lại, các quy trình được khuyến nghị cho phép nội suy có thể được tóm tắt như sau Tốt bụng lịch trình liên tục bình luận 1D tuyến tính
từng phần liên tục đến từ numpy spline khối
đạo hàm bậc 2 spline khối đơn điệu
đạo hàm thứ nhất không vượt quá spline không lập phương
(k-1) đạo hàm thứ
gần nhất
loại=’gần nhất’, ‘trước đó’, ‘tiếp theo’ đường cong N-D gần nhất, tuyến tính, spline
(k-1) đạo hàm thứ sử dụng mảng N-dim y Lưới N-D thông thường (tuyến tính) gần nhất
phương pháp = 'gần nhất' tuyến tính phương pháp = 'tuyến tính' splines đạo hàm bậc 2 method=’cubic’, ‘quintic’ splines đơn điệu dẫn xuất thứ nhất phương pháp = 'pchip' N-D rải rác gần nhất
bí danh. tuyến tính
hình khối (chỉ 2D)
dẫn xuất thứ nhất hàm cơ sở xuyên tâm
Để làm mịn dữ liệu, các chức năng được cung cấp cho dữ liệu 1 và 2-D bằng cách sử dụng các đường nối khối, dựa trên thư viện FORTRAN FITPACK. Ngoài ra, các quy trình được cung cấp để nội suy/làm trơn bằng cách sử dụng các hàm cơ sở xuyên tâm với một số nhân. Thông tin chi tiết được đưa ra trong các liên kết dưới đây
|