Hàm Struve là gì?
Hàm Struve \(\mathbf{H}_{v}(x)\) là một hàm đặc biệt xuất hiện như một nghiệm riêng của phương trình Bessel không thuần nhất. Nó thường gặp trong các bài toán về âm học, động lực học chất lỏng, quang học và điện từ học, và thường đi kèm với các hàm Bessel thông thường. Công cụ này lập bảng giá trị \(\mathbf{H}_{v}(x)\) với bậc thực v bất kỳ trên một dãy giá trị x do bạn chọn, giúp bạn quan sát đặc tính dao động và suy giảm chậm của hàm. Đây là toán học thuần túy, áp dụng được ở mọi nơi và không phụ thuộc vào khu vực hay đơn vị nào.
Cách sử dụng máy tính
Hãy nhập bốn giá trị: Bậc v (bậc của hàm Struve), Giá trị x ban đầu (đối số đầu tiên), Bước nhảy (khoảng cách giữa các giá trị x liên tiếp) và Số lần lặp (số dòng cần tạo). Bảng kết quả sẽ liệt kê từng đối số \(x_{i} = \text{startX} + i \times \text{stepX}\) cùng giá trị tương ứng \(\mathbf{H}_{v}(x_{i})\). Với giá trị mặc định (v = 0, bắt đầu = -10, bước = 0,2, số lần = 101), bạn sẽ nhận được 101 điểm quét x từ -10 đến +10.
Giải thích công thức
Giá trị được tính trực tiếp từ chuỗi lũy thừa hiển thị ở trên:
$$\mathbf{H}_{v}(x) = \left(\frac{x}{2}\right)^{v+1} \sum_{k=0}^{\infty} \frac{(-1)^{k}\left(\frac{x}{2}\right)^{2k}}{\Gamma\!\left(k+\frac{3}{2}\right)\,\Gamma\!\left(k+v+\frac{3}{2}\right)}$$Đặt \(t = x/2\), hệ số đứng trước là \(t^{v+1}\) và mỗi số hạng là \((-1)^{k} t^{2k}\) chia cho tích của hai hàm gamma là \(\Gamma\!\left(k + \frac{3}{2}\right)\) và \(\Gamma\!\left(k + v + \frac{3}{2}\right)\). Hàm gamma được tính bằng xấp xỉ Lanczos ổn định về mặt số học, dùng công thức phản xạ \(\Gamma(z) = \pi / (\sin(\pi z)\,\Gamma(1 - z))\) khi đối số không dương. Chuỗi đan dấu này hội tụ nhanh với \(|x|\) ở mức vừa phải.
Ví dụ minh họa
Lấy v = 0 và x = 2, suy ra \(t = 1\) và hệ số đứng trước bằng 1. Cộng các số hạng của chuỗi ta được
$$1{,}273240 - 0{,}565884 + 0{,}090542 - 0{,}007391 + 0{,}000365 - \ldots \approx 0{,}79066$$Do đó \(\mathbf{H}_{0}(2) \approx 0{,}79066\), trùng khớp với giá trị tham chiếu tiêu chuẩn.
Câu hỏi thường gặp
\(\mathbf{H}_{v}(0)\) bằng bao nhiêu? Với mọi bậc \(v > -1\), hệ số \((x/2)^{v+1}\) triệt tiêu tại x = 0, nên \(\mathbf{H}_{v}(0) = 0\).
Tôi có thể dùng bậc âm hoặc không nguyên không? Có. Với x âm và v không nguyên, hàm trở thành số phức, nên các dòng đó được báo là không phải số (NaN); còn với v = 0 hoặc các bậc nguyên thì toàn bộ bảng vẫn là số thực.
Độ chính xác ra sao? Chuỗi tính trực tiếp cho độ chính xác rất cao trong khoảng mặc định. Với \(|x|\) rất lớn (vượt khoảng 30), cần rất nhiều số hạng và lúc đó nên dùng khai triển tiệm cận thì hợp lý hơn.