Công cụ này làm gì
Công cụ này tính hàm beta không đầy đủ cận dưới, được định nghĩa bằng tích phân xác định \(B_x(a,b) = \int_0^x t^{a-1}(1-t)^{b-1}\,dt\). Biểu thức dưới dấu tích phân \(t^{a-1}(1-t)^{b-1}\) chính là nhân (kernel) của phân phối beta và phân phối beta-nhị thức. Khi cận trên \(x = 1\) (với cận dưới bằng 0), kết quả sẽ bằng hàm beta đầy đủ \(B(a,b) = \Gamma(a)\Gamma(b)/\Gamma(a+b)\).
Cách sử dụng
Nhập hai tham số dạng: a (biến a) và b. Cả hai phải dương. Thiết lập cận dưới của khoảng tích phân và cận trên x (thường nằm giữa 0 và 1). Chọn số phần chia n — tức số nút Gauss-Legendre. Giá trị n càng lớn thì độ chính xác càng cao; với hàm trơn thì n = 20 là quá đủ. Hãy giữ khoảng ở [0, 1] để thu được hàm beta đầy đủ.
Giải thích công thức
Tích phân được tính bằng cầu phương Gauss-Legendre. Các nút chuẩn \(x_i\) và trọng số \(w_i\) trên [-1, 1] được tạo ra dưới dạng nghiệm của đa thức Legendre \(P_n\) bằng phương pháp Newton, sau đó được ánh xạ tuyến tính sang khoảng đã chọn [c, d]:
$$t_i = \frac{d-c}{2}\,x_i + \frac{d+c}{2}$$Tích phân khi đó được xấp xỉ bằng \(\frac{d-c}{2}\sum w_i\, f(t_i)\). Vì Gauss-Legendre tính chính xác các đa thức có bậc tới \(2n-1\), nên nó hội tụ cực kỳ nhanh đối với các hàm trơn.
$$\begin{gathered} B_x(a,b) = \int_{\text{c}}^{\text{x}} t^{\,\text{a}-1}\,(1-t)^{\,\text{b}-1}\,dt \;\approx\; \frac{d-c}{2}\sum_{i=1}^{n} w_i\, f\!\left(t_i\right) \\[1.5em] \text{where}\quad \left\{ \begin{aligned} f(t) &= t^{\,\text{a}-1}\,(1-t)^{\,\text{b}-1} \\ t_i &= \frac{d-c}{2}\,z_i + \frac{d+c}{2} \\ c &= \text{lower},\quad d = \text{x} \\ n &= \text{divisions} \end{aligned} \right. \end{gathered}$$
Ví dụ minh họa
Với a = 3, b = 5, khoảng [0, 1] và n = 20, kết quả chính là hàm beta đầy đủ
$$B(3,5) = \frac{2! \cdot 4!}{7!} = \frac{48}{5040} = 0{,}0095238095\ldots = \frac{1}{105}$$Cầu phương tái tạo lại con số này với độ chính xác kép (double) đầy đủ.
Câu hỏi thường gặp
Nếu \(0 < a < 1\) hoặc \(0 < b < 1\) thì sao? Biểu thức dưới dấu tích phân có một điểm kỳ dị khả tích tại đầu mút. Các nút Gauss-Legendre nằm bên trong khoảng nên kết quả vẫn hữu hạn, nhưng độ chính xác sẽ giảm — hãy tăng n.
Làm sao để có hàm beta không đầy đủ chuẩn hóa \(I_x(a,b)\)? Chia kết quả này cho hàm beta đầy đủ (tính nó bằng cách đặt khoảng là [0, 1]).
Tại sao đôi khi kết quả lại âm? Nếu cận trên nhỏ hơn cận dưới thì tích phân có dấu sẽ âm, và điều này hoàn toàn đúng về mặt toán học.