Công cụ này làm gì
Công cụ này lập bảng giá trị của hàm Bessel cầu loại một, \(j_{\nu}(x)\), tại một dãy các giá trị x. Bạn chọn bậc \(\nu\), giá trị x bắt đầu, bước nhảy và số dòng cần tạo. Máy tính sẽ trả về bảng hai cột gồm các cặp \((x, j_{\nu}(x))\). Đây là toán học thuần túy nên cho kết quả như nhau ở mọi nơi — không phụ thuộc quốc gia hay đơn vị đo nào.
Cách sử dụng
Nhập bậc \(\nu\) (có thể là số thực bất kỳ, ví dụ 0, 1, 2 hay 1.5), giá trị x ban đầu, bước nhảy cộng thêm vào x ở mỗi dòng, và số dòng cần tạo. Mỗi dòng thứ k dùng công thức \(x_k = \text{x\_ban\_đầu} + k\cdot\text{bước\_x}\). Con số nổi bật đầu tiên hiển thị \(j_{\nu}\) tại giá trị x đầu tiên; bảng bên dưới liệt kê tất cả các giá trị được tạo ra.
Giải thích công thức
Với bậc thực tổng quát,
$$j_{\nu}(x) = \sqrt{\frac{\pi}{2x}}\; J_{\nu+\frac{1}{2}}(x)$$trong đó J là hàm Bessel thường loại một, được tính qua chuỗi lũy thừa với hàm gamma theo phương pháp Lanczos. Với bậc nguyên, máy tính dùng các dạng đóng ổn định về mặt số học \(j_0(x) = \sin(x)/x\) và \(j_1(x) = \sin(x)/x^2 - \cos(x)/x\), sau đó leo lên bằng công thức truy hồi tiến
$$j_{n+1}(x) = \frac{2n+1}{x}\cdot j_n(x) - j_{n-1}(x).$$Tại \(x = 0\) áp dụng giới hạn: \(j_0(0) = 1\) và \(j_n(0) = 0\) khi \(\nu > 0\), để tránh chia cho 0.
Ví dụ minh họa
Với bậc \(\nu = 0\), x ban đầu = 0, bước = 0.2 và 6 dòng, ta được \(x = 0, 0.2, 0.4, 0.6, 0.8, 1.0\). Dùng \(j_0(x) = \sin(x)/x\): \(j_0(0)=1\), \(j_0(0.2)=0.993347\), \(j_0(0.4)=0.973546\), \(j_0(0.6)=0.941071\), \(j_0(0.8)=0.896695\), \(j_0(1.0)=0.841471\) — chính là dạng sinc tắt dần quen thuộc.
Câu hỏi thường gặp
Bậc có thể là phân số không? Có. Bậc \(\nu\) không nguyên sẽ dùng dạng chuỗi \(\sqrt{\pi/2x}\cdot J\).
Vì sao giá trị đầu tiên đúng bằng 1 khi x bắt đầu từ 0? Vì \(j_0(0) = 1\) theo giới hạn; còn với \(\nu > 0\) thì giới hạn bằng 0.
Truy hồi tiến có luôn an toàn không? Với bậc vừa phải và x điển hình khi xem bảng, thì có. Nếu bậc rất lớn so với x, truy hồi lùi sẽ ổn định hơn, nhưng trường hợp này hiếm khi cần đến ở đây.