روش ژاکوبی کیست؟ توضیح بده.
روش ژاکوبی یک روش تکراری در حل دستگاه معادلات خطی است که در جبر خطی مورد بحث قرار می‌گیرد.معرفی کلی.در یک دستگاه مربعی با "n" معادلۀ خطی:که:formula_2اگر ماتریس A را به دو ماتریس به شکل زیر تفکیک کنیم:از روش تکرار جواب را می‌توان به شکل زیر یافت:اگر این فرمول را بر اساس المانهایش مرتبط کنیم به این صورت در خواهد آمد:همگرایی.در روش ژاکوبی گاهی علی‌رغم اینکه شرایط همگرایی برقرار نباشد، جواب همگرا می‌شود.چند مثال.مثال۱.در formula_14 با داشتن مقدار اولیه (حدس اولیه)، جواب را بدست می آوریم.با استفاده از رابطۀ formula_16، که در بالا توضیح داده شد، به تخمین formula_17 می پردازیم تا جواب بدست آید.با بازنویسی رابطۀ اخیر به فرم ساده‌تر formula_18،که در آن formula_19 و formula_20.توجه کنید که formula_21 که formula_22 و formula_23 به ترتیب قسمت پایینی و بالایی formula_24 هستند.با استفاده از مقادیر داده شده:we determine formula_26 asFurther, C is found asWith T and C calculated, we estimate formula_17 as formula_30:با تکرار بعدی داریم:این فرایند تا جایی که همگرایی مشهود باشد تکرار می‌شود. (به عبارت دقیق تر formula_33 کوچک باشد). جواب پس از ۲۵ بار تکرار خواهد بود:مثال۲.فرض کنید معادلات زیر را بخواهیم حل کنیم:با انتخاب (0, 0, 0, 0) به عنوان تقریب اولیه:پاسخ‌ها پس از ۵ بار تکرار در جدول زیر آورده شده است:جواب دقیق (1, 2, −1, 1) است.حل مثال در پایتون.import numpy as npITERATION_LIMIT = 1000A = np.array(10., -1., 2., 0.], [-1., 11., -1., 3.], [2., -1., 10., -1.], [0.0, 3., -1., 8.)b = np.array([6., 25., -11., 15.])print("System:")for i in range(A.shape[0]): row = ["{}*x{}".format(A[i, j], j + 1) for j in range(A.shape[1])] print(" + ".join(row), "=", b[i])print()x = np.zeros_like(b)for it_count in range(ITERATION_LIMIT): print("Current solution:", x) x_new = np.zeros_like(x) for i in range(A.shape[0]): s1 = np.dot(A[i, :i], x[:i]) s2 = np.dot(A[i, i + 1:], x[i + 1:]) x_new[i] = (b[i] - s1 - s2) / A[i, i] if np.allclose(x, x_new, rtol=1e-10): break x = x_newprint("Solution:")print(x)error = np.dot(A, x) - bprint("Error:")print(error)خروجی به این شکل خواهد بود:System:10.0*x1 + -1.0*x2 + 2.0*x3 + 0.0*x4 = 6.0-1.0*x1 + 11.0*x2 + -1.0*x3 + 3.0*x4 = 25.02.0*x1 + -1.0*x2 + 10.0*x3 + -1.0*x4 = -11.00.0*x1 + 3.0*x2 + -1.0*x3 + 8.0*x4 = 15.0Current solution: [ 0. 0. 0. 0.]Current solution: [ 0.6 2.27272727 -1.1 1.875 ]Current solution: [ 1.04727273 1.71590909 -0.80522727 0.88522727]Current solution: [ 0.93263636 2.05330579 -1.04934091 1.13088068]Current solution: [ 1.01519876 1.95369576 -0.96810863 0.97384272]Current solution: [ 0.9889913 2.01141473 -1.0102859 1.02135051]Current solution: [ 1.00319865 1.99224126 -0.99452174 0.99443374]Current solution: [ 0.99812847 2.00230688 -1.00197223 1.00359431]Current solution: [ 1.00062513 1.9986703 -0.99903558 0.99888839]Current solution: [ 0.99967415 2.00044767 -1.00036916 1.00061919]Current solution: [ 1.0001186 1.99976795 -0.99982814 0.99978598]Current solution: [ 0.99994242 2.00008477 -1.00006833 1.0001085 ]Current solution: [ 1.00002214 1.99995896 -0.99996916 0.99995967]Current solution: [ 0.99998973 2.00001582 -1.00001257 1.00001924]Current solution: [ 1.00000409 1.99999268 -0.99999444 0.9999925 ]Current solution: [ 0.99999816 2.00000292 -1.0000023 1.00000344]Current solution: [ 1.00000075 1.99999868 -0.99999899 0.99999862]Current solution: [ 0.99999967 2.00000054 -1.00000042 1.00000062]Current solution: [ 1.00000014 1.99999976 -0.99999982 0.99999975]Current solution: [ 0.99999994 2.0000001 -1.00000008 1.00000011]Current solution: [ 1.00000003 1.99999996 -0.99999997 0.99999995]Current solution: [ 0.99999999 2.00000002 -1.00000001 1.00000002]Current solution: [ 1. 1.99999999 -0.99999999 0.99999999]Current solution: [ 1. 2. -1. 1.]Solution:[ 1. 2. -1. 1.]Error:[ -2.81440107e-08 5.15706873e-08 -3.63466359e-08 4.17092547e-08]