Kvant

Bản dịch tự động sơ bộ, chất lượng thấp: có thể còn lỗi và câu chữ chưa tự nhiên. Bản này sẽ được thay bằng bản dịch tốt hơn. Bản gốc →

51

phương pháp lobachevsky

Tiến sĩ Khoa học Vật lý và Toán học
A. L. BRUDNO

Người sáng tạo ra hình học phi Euclide N. I. Lobachevsky cũng đã nghĩ ra phương pháp tính gần đúng các phương trình đại số lời giải (với hệ số thực)

a0+a1x+a2x2+⋯+anxn=0.(1)a_0 + a_1x + a_2x^2 + \dots + a_nx^n = 0. \quad (1)

Phương pháp này cho phép bạn tìm giá trị tuyệt đối của nghiệm có mô đun cực đại. Sau đó, dấu của nghiệm có thể dễ dàng được xác định bằng cách thay thế vào phương trình đã cho. Hạn chế duy nhất trong việc sử dụng phương pháp này là gốc có giá trị tuyệt đối tối đa phải là duy nhất. Ví dụ, nếu nó hoàn chỉnh, thì đã có hai trong số chúng (nghĩa là nó cũng là liên hợp phức) và phương pháp này không thể áp dụng được. Sau đó, phương pháp này đã được cải tiến và có thể tìm thấy tất cả các nghiệm của phương trình nếu mô-đun của chúng khác nhau.

Ý tưởng của Lobachevsky như sau. Chúng ta hãy thay thế phương trình đã cho (1) bằng một phương trình khác có nghiệm bằng bình phương các nghiệm của phương trình đã cho. Chúng tôi sẽ lặp lại kỹ thuật này nhiều lần. Khi đó, các nghiệm của phương trình sẽ được “bình phương”, rồi đến lũy thừa thứ 4, đến bậc 8, v.v. Kết quả là, nghiệm có mô đun cực đại bắt đầu đóng vai trò lấn át so với các nghiệm khác và có thể dễ dàng tính toán từ các hệ số của phương trình thu được (xem bên dưới). Nếu bây giờ căn của đáp số được chuyển thành lũy thừa thì chúng ta sẽ nhận được giá trị tuyệt đối (xấp xỉ) của nghiệm của phương trình ban đầu.

  1. Vì vậy, Lobachevsky cần tìm một đa thức có nghiệm bằng bình phương của các nghiệm của đa thức ban đầu, và ông phải tìm nó mà không cần tính nghiệm của đa thức ban đầu. Hãy xem lobachevsky đã làm gì. Chúng ta được cho một đa thức

P(x)=a0+a1x+a2x2+⋯+anxn.(2)P(x) = a_0 + a_1x + a_2x^2 + \dots + a_nx^n. \quad (2)

Có một định lý: đa thức P(x)P(x) có thể biểu diễn dưới dạng

P(x)=an(x−x1)(x−x2)…(x−xn),P(x) = a_n(x - x_1)(x - x_2) \dots (x - x_n),

trong đó x1,x2,…,xnx_1, x_2, \dots, x_n là nghiệm của phương trình P(x)=0P(x) = 0 (ở trường, điều này chỉ được nghiên cứu với n=2n=2 và được gọi là “phân tích nhân tử của tam thức bậc hai”). Hãy lấy đa thức P(−x)P(-x). Nó có thể được viết dưới dạng

P(−x)=a0−a1x+a2x2−⋯+(−1)nanxn.P(-x) = a_0 - a_1x + a_2x^2 - \dots + (-1)^n a_nx^n.

hoặc

P(−x)=an(−x−x1)(−x−x2)…(−x−xn),P(-x) = a_n(-x - x_1)(-x - x_2) \dots (-x - x_n),

hoặc thậm chí như thế này:

P(−x)=(−1)nan(x+x1)(x+x2)…(x+xn).P(-x) = (-1)^n a_n(x + x_1)(x + x_2) \dots (x + x_n).

Xét tích của đa thức

P(x)P(−x)=(−1)nan2(x2−x12)(x2−x22)…(x2−xn2).P(x)P(-x) = (-1)^n a_n^2(x^2 - x_1^2)(x^2 - x_2^2) \dots (x^2 - x_n^2).

52

Lưu ý rằng nó không chứa sức mạnh kỳ lạ xx. Nếu thay thế x2x^2 bằng tt trong tích này, chúng ta sẽ nhận được đa thức cần thiết

Q(t)=(−1)nan2(t−x12)(t−x22)…(t−xn2),Q(t) = (-1)^n a_n^2 (t - x_1^2) (t - x_2^2) \dots (t - x_n^2),

có các căn bằng bình phương các căn của đa thức đã cho P(x)P(x). Để tính các hệ số bkb_k của đa thức Q(t)Q(t)

Q(t)=b0+b1t+b2t2+⋯+bn−1tn−1+bntnQ(t) = b_0 + b_1 t + b_2 t^2 + \dots + b_{n-1} t^{n-1} + b_n t^n

bạn có thể thay đổi P(x)P(x) và P(−x)P(-x), đưa các thuật ngữ tương tự cho cùng lũy ​​thừa xx (các lũy thừa lẻ sẽ biến mất) và thay thế x2,x4,…x^2, x^4, \dots bằng t,t2,…t, t^2, \dots.

Dưới đây là công thức cho các hệ số bkb_k cho n=3n=3 và n=4n=4:

n=3;a0+a1x+a2x2+a3x3=0n = 3; a_0 + a_1 x + a_2 x^2 + a_3 x^3 = 0
b0=a0a0b_0 = a_0 a_0
b1=a0a2−a1a1+a2a0b_1 = a_0 a_2 - a_1 a_1 + a_2 a_0
b2=−a1a3+a2a2−a3a1b_2 = -a_1 a_3 + a_2 a_2 - a_3 a_1
b3=−a3a3b_3 = -a_3 a_3

n=4;a0+a1x+a2x2+a3x3+a4x4=0n = 4; a_0 + a_1 x + a_2 x^2 + a_3 x^3 + a_4 x^4 = 0
b0=a0a0b_0 = a_0 a_0
b1=a0a2−a1a1+a2a0b_1 = a_0 a_2 - a_1 a_1 + a_2 a_0
b2=a0a4−a1a3+a2a2−a3a1+a4a0b_2 = a_0 a_4 - a_1 a_3 + a_2 a_2 - a_3 a_1 + a_4 a_0
b3=a2a4−a3a3+a4a2b_3 = a_2 a_4 - a_3 a_3 + a_4 a_2
b4=a4a4b_4 = a_4 a_4

Việc tính các hệ số bkb_k không khó thực hiện trên máy tính hoặc thậm chí là máy tính vi mô có thể lập trình được. Sau khi tính toán các hệ số bkb_k, các giá trị của chúng được gán cho các hệ số aka_k, các hệ số mới bkb_k được tính toán, v.v., cho đến khi gốc có mô đun tối đa trở nên chiếm ưu thế.

Để tìm giá trị của gốc này, chúng ta hãy quay lại các công thức

Q(t)=b0+b1t+⋯+bn−1tn−1+bntnQ(t) = b_0 + b_1 t + \dots + b_{n-1} t^{n-1} + b_n t^n
Q(t)=bn(t−t1)(t−t2)…(t−tn).Q(t) = b_n (t - t_1) (t - t_2) \dots (t - t_n).

Nếu bạn mở dấu ngoặc và các thuật ngữ rút gọn ở dòng dưới cùng, bạn sẽ có được dòng trên cùng. Kể từ đây,

bn−1=−(t1+t2+⋯+tn)bnb_{n-1} = -(t_1 + t_2 + \dots + t_n) b_n

hoặc

t1(1+t2/t1+t3/t1+⋯+tn/t1)=−bn−1/bn.t_1 (1 + t_2/t_1 + t_3/t_1 + \dots + t_n/t_1) = -b_{n-1}/b_n.

Nếu nghiệm t1t_1 vượt quá đáng kể các nghiệm số khác về mô đun thì biểu thức trong ngoặc đơn gần bằng 1 và giá trị gần đúng

t1≈−bn−1/bn.t_1 \approx -b_{n-1}/b_n.

Điều thú vị là phương pháp Lobachevsky cũng có thể được sử dụng để tìm giá trị của các nghiệm còn lại của phương trình (nếu chúng khác nhau về mô đun). Đặt gốc t2t_2 nhỏ hơn t1t_1, nhưng giá trị lớn hơn phần còn lại. Khi đó trong biểu thức của bn−2b_{n-2}

bn−2=(t1t2+t1t3+⋯+t2t3+… )bnb_{n-2} = (t_1 t_2 + t_1 t_3 + \dots + t_2 t_3 + \dots) b_n

trong ngoặc, vai trò chính sẽ do t1t2t_1 t_2 đảm nhận và chúng ta có thể giả định gần đúng rằng bn−2≈t1t2bnb_{n-2} \approx t_1 t_2 b_n, từ đó

t2≈−bn−2/bn−1.t_2 \approx -b_{n-2}/b_{n-1}.

Tương tự như tk≈−bn−k/bn−k+1t_k \approx -b_{n-k}/b_{n-k+1}.

  1. Các giá trị gần đúng thu được bằng phương pháp của Lobachevsky gần như chắc chắn sẽ nhanh chóng hội tụ về chính xác lời giải. Khi tính toán trên máy tính hoặc máy tính vi mô, bạn cần thiết lập bộ đếm số lần lặp (ký hiệu là pp) và cộng thêm 1 vào sau mỗi lần lặp. Đối với các nghiệm xkx_k của phương trình ban đầu, nó sẽ là

∣xk∣=tk1/2p,|x_k| = t_k^{1/2^p},

vì đa thức Q(t)Q(t) thu được nhờ các lần lặp pp (liên tục đi từ đa thức PP đến đa thức QQ và thay thế các nghiệm bằng bình phương của chúng). ∣xk∣|x_k| chỉ nên được tính nếu tk>0t_k > 0. Giá trị của tkt_k có thể âm nếu có các nghiệm có độ lớn bằng nhau hoặc trong các lần lặp đầu tiên. Thật thuận tiện khi hiển thị các giá trị gần đúng của mô hình gốc xkx_k trên màn hình sau mỗi lần lặp và theo dõi cách chúng được thiết lập. Chính phương pháp này, nhưng bằng cách tính toán bằng tay, Lobachevsky đã nghĩ ra.

Thử nghiệm với máy vi tính MK-61 để tìm phương trình bậc ba 0,76—1,37x—1,3x²+2x³=0, có nghiệm x1=0,95x_1=0,95; x2=−0,8x_2=-0,8; x3=0,5x_3=0,5, đưa ra hình ảnh về sự hội tụ sau đây (có 2-3 chữ số thập phân; mỗi lần lặp mất 15 giây):