صفحه اصلی دندانپزشکی روش نصف تقسیم مدار. روش دوگانگی یا روش دوبخشی

روش نصف تقسیم مدار. روش دوگانگی یا روش دوبخشی


روش تقسیم نیمه(اسامی دیگر: روش دوبخشی, روش دوگانگی) برای حل معادله f(x) = 0 به صورت زیر است. بگذارید بدانیم که تابع پیوسته است و انتهای بخش را به خود می گیرد
[الف, ب] مقادیر علائم مختلف، سپس ریشه در فاصله ( الف, ب). بیایید فاصله را به دو نیمه تقسیم کنیم و سپس نیمه ای را در نظر می گیریم که در انتهای آن تابع مقادیر علائم مختلف را می گیرد. دوباره این قطعه جدید را به دو قسمت مساوی تقسیم می کنیم و قسمتی را که حاوی ریشه است انتخاب می کنیم. این روند تا زمانی ادامه می یابد که طول قطعه بعدی از مقدار خطای مورد نیاز کمتر شود. ارائه دقیق‌تر الگوریتم برای روش دوبخشی:

1) بیایید محاسبه کنیم x = (الف+ ب)/2; بیایید محاسبه کنیم f(x);

2) اگر f(x) = 0، سپس به مرحله 5 بروید.

3) اگر f(x)∙f(الف) < 0, то ب = x، در غیر این صورت الف = x;

4) اگر | بالف| > ε، به نقطه 1 بروید؛

5) مقدار را خروجی بگیرید x;

مثال 2.4.با استفاده از روش تقسیم، ریشه معادله را اصلاح کنید ( x– 1) 3 = 0، متعلق به بخش .

راه حل در برنامه اکسل:

1) در سلول ها الف 1:اف 4، نمادها، مقادیر اولیه و فرمول ها را همانطور که در جدول 2.3 نشان داده شده است، معرفی می کنیم.

2) هر فرمول را با یک نشانگر پر تا خط دهم در سلول های پایینی کپی کنید، یعنی. ب 4 - تا ب 10, سی 4 - تا سی 10, دی 3 - تا دی 10, E 4 - تا E 10, اف 3 - تا اف 10.

جدول 2.3

الف ب سی دی E اف
f(a)= =(1-B3)^3
ک الف x f(x) ب b-a
0,95 =(B3+E3)/2 =(1-C3)^3 1,1 =E3-B3
=IF(D3=0,C3; IF(C$1*D3<0;B3;C3)) =IF(C$1*D3>0؛ E3;C3)

نتایج محاسبات در جدول آورده شده است. 2.4. در ستون افبررسی مقادیر طول بازه بالف. اگر مقدار کمتر از 0.01 باشد، یک مقدار تقریبی ریشه با یک خطای مشخص در این خط پیدا می شود. برای دستیابی به دقت مورد نیاز، 5 تکرار طول کشید. مقدار تقریبی ریشه با دقت 0.01 پس از گرد کردن به سه رقم اعشار 1.0015625 ≈ 1.00 است.

جدول 2.4

الف ب سی دی E اف
f(a)= 0,000125
ک الف x f(x) ب b-a
0,95 1,025 -2E-05 1,1 0,15
0,95 0,9875 2E-06 1,025 0,075
0,9875 1,00625 -2E-07 1,025 0,0375
0,9875 0,996875 3.1E-08 1,00625 0,0187
0,996875 1,0015625 -4E-09 1,00625 0,0094
0,996875 0,9992188 4.8E-10 1,0015625 0,0047
0,99921875 1,0003906 -6E-11 1,0015625 0,0023
0,99921875 0,9998047 7.5E-12 1,000390625 0,0012

الگوریتم داده شده را در نظر می گیرد مورد احتمالی"ضربه زدن به ریشه"، یعنی. برابری f(x) در مرحله بعد صفر شود. اگر در مثال 2.3 قطعه را بگیریم، در همان قدم اول به ریشه می رسیم x= 1. در واقع، اجازه دهید در سلول بنویسیم ب 3 مقدار 0.9. سپس جدول نتایج به شکل 2.5 خواهد بود (فقط 2 تکرار داده شده است).

جدول 2.5

الف ب سی دی E اف
f(a)= 0,001
ک الف x f(x) ب b-a
0,9 1,1 0,2

بیایید آن را در برنامه ایجاد کنیم اکسلتوابع سفارشی f(x) و bisect(a, b, eps) برای حل معادلات با استفاده از روش bisect با استفاده از زبان داخلی ویژوال بیسیک. توضیحات آنها در زیر آمده است:

تابع f (بایوال x)

تابع دوگانه (a, b, eps)

1 x = (a + b) / 2

اگر f(x) = 0 سپس به 5 بروید

اگر f(x) * f(a)< 0 Then

اگر Abs(a - b) > eps سپس برو به 1

تابع f(x) تعیین می کند سمت چپمعادلات و تابع
bisect(a, b, eps) ریشه معادله را با استفاده از روش bisect محاسبه می کند f(x) = 0. توجه داشته باشید که تابع bisect(a, b, eps) از دسترسی به تابع f(x) استفاده می کند. الگوریتم ایجاد یک تابع سفارشی در اینجا آمده است:

1) دستور منو "ابزار - ماکرو - ویرایشگر" را اجرا کنید ویژوال بیسیک" پنجره " مایکروسافت ویژوال بیسیک" اگر در این فایلبرنامه ها اکسلماکروها یا توابع یا رویه های کاربر هنوز ایجاد نشده اند، این پنجره مانند شکل 2.4 خواهد بود.

2) دستور منو "Insert - Module" را اجرا کنید و متن های توابع برنامه را مطابق شکل 2.5 وارد کنید.

اکنون در سلول های برگه برنامه اکسلمی توانید از توابع ایجاد شده در فرمول ها استفاده کنید. به عنوان مثال، اجازه دهید وارد یک سلول شویم دی 18 فرمول

Bisect(0.95;1;0.00001)،

سپس مقدار 0.999993896 را دریافت می کنیم.

برای حل معادله دیگر (با سمت چپ متفاوت) باید با استفاده از دستور "ابزار - ماکرو - ویرایشگر" به پنجره ویرایشگر بروید. ویژوال بیسیکو به سادگی شرح تابع f(x) را بازنویسی کنید. برای مثال، بیایید با دقت 0.001، ریشه معادله sin5 را پیدا کنیم. x + x 2 - 1 = 0، متعلق به بازه (0.4؛ 0.5). برای انجام این کار، اجازه دهید توضیحات تابع را تغییر دهیم

برای توضیح جدید

f = Sin(5 * x) + x^2 - 1

سپس در سلول دی 18 ما مقدار 0.441009521 را دریافت می کنیم (این نتیجه را با مقدار ریشه فاصله (0.4؛ 0.5) که در مثال 2.3 یافت شد مقایسه کنید!).

برای حل یک معادله با استفاده از روش تقسیم نیم در برنامه Mathcadبیایید یک تابع زیربرنامه ایجاد کنیم bisec(f, الف, ب، ε)، جایی که:

f-نام تابع مربوط به سمت چپ معادله است f(x) = 0;

الف, ب- انتهای چپ و راست بخش [ الف, ب];

ε - دقت مقدار تقریبی ریشه.

حل مثال در برنامه Mathcad:

1) برنامه را اجرا کنید Mathcad.اجازه دهید تعریف تابع را معرفی کنیم bisec(f, الف, ب، ε). برای انجام این کار، با استفاده از صفحه کلید و نوار ابزار "Greek Symbols" تایپ کنید bisec(f, الف, ب، ε):=. پس از علامت تخصیص ":=" در نوار ابزار "برنامه‌نویسی"، از نشانگر ماوس برای کلیک چپ روی "افزودن خط" استفاده کنید. یک خط عمودی بعد از علامت تخصیص ظاهر می شود. در مرحله بعد، متن برنامه را که در زیر نشان داده شده است، با استفاده از نوار ابزار "Programming" وارد کنید تا علامت "←"، عملگر حلقه را وارد کنید. در حالی که، اپراتور شکستنو عملگر مشروط در غیر این صورت.

2) اجازه دهید تعریف تابع را معرفی کنیم f(x):=sin(5*x)+x^2–1 و سپس مقدار ریشه را با استفاده از تابع محاسبه کنید bisecدر مقادیر داده شده:
bisec(f, -0.8,–0.7,0.0001)=. پس از علامت "="، مقدار ریشه محاسبه شده توسط برنامه -0.7266601563 به طور خودکار ظاهر می شود. بیایید ریشه های باقیمانده را به همین ترتیب محاسبه کنیم.

در زیر برگه آمده است Mathcadبا تعریف تابع bisec(f, الف, ب، ε) و محاسبات:

یک برنامه به زبان بدهیم سی++ برای حل معادله f(x) = 0 به روش نصف کردن:

#شامل

#شامل

f double (دو برابر x);

typedef double (*PF)(double);

دو بیسک (PF f، مضاعف a، دوبل b، eps مضاعف)؛

double a, b, x, eps;PF pf;

کوت<< "\n a = "; cin >>a;

کوت<< "\n b = "; cin >>b;

کوت<< "\n eps = "; cin >> eps;

x = bisec (pf,a,b,eps)؛ کوت<< "\n x = " << x;

کوت<< "\n Press any key & Enter "; cin >>a;

دو برابر f (دو برابر x)(

r = sin(5*x)+x*x-1;

دوبیسک (PF f, double a, double b, double eps)(

do( x = (a + b)/2;

اگر (f(x) == 0) break;

اگر (f(x)*f(a)<0) b = x;

)while (fabs(b-a) > eps);

عملکرد در برنامه f(x) برای حل معادله تعریف شده است

گناه 5 x + x 2 – 1 = 0

از مثال 2.3. نتیجه برنامه تعیین ریشه فاصله (0.4; 0.5) با دقت 0.00001 در زیر (صفحه نمایش کامپیوتر) ارائه شده است:

هر کلیدی را فشار دهید و Enter کنید

خط آخر برای سازماندهی مکث برای مشاهده نتیجه مورد نیاز است.

معادلات غیر خطی را می توان به 2 کلاس جبری و ماورایی تقسیم کرد. معادلات جبریمعادلاتی نامیده می شوند که فقط حاوی توابع جبری (عدد صحیح، گویا، غیر منطقی) هستند. به طور خاص، چند جمله ای یک تابع جبری کامل است. معادلات حاوی توابع دیگر (مثلثاتی، نمایی، لگاریتمی و غیره) نامیده می شوند. ماورایی

روش های حل معادلات غیر خطی به دو گروه تقسیم می شوند:

  1. روش های دقیق
  2. ;
  3. روش های تکراری
  4. .

روش های دقیق امکان نوشتن ریشه ها را در قالب یک رابطه محدود (فرمول) میسر می سازد.

همانطور که مشخص است، بسیاری از معادلات و سیستم های معادلات راه حل تحلیلی ندارند. این در درجه اول برای بیشتر معادلات ماورایی صدق می کند. همچنین ثابت شده است که ساختن فرمولی که بتوان از آن برای حل یک معادله جبری دلخواه با درجه بالاتر از چهار استفاده کرد، غیرممکن است. علاوه بر این، در برخی موارد معادله دارای ضرایبی است که فقط به طور تقریبی شناخته شده است، و بنابراین، وظیفه تعیین دقیق ریشه های معادله معنای خود را از دست می دهد. برای حل آنها استفاده می کنیم روش های تکراریبا درجه ای از دقت مشخص

اجازه دهید معادله داده شود

  1. تابع f(x) در بازه [ الف، ب] همراه با مشتقات مرتبه 1 و 2 آن.
  2. ارزش ها f(x) در انتهای بخش دارای علائم مختلف است ( f(الف) * f(ب) < 0).
  3. مشتقات اول و دوم f"(x) و و""(x) یک علامت مشخص را در کل بخش حفظ می کند.

شرایط 1) و 2) تضمین می کند که در فاصله [ یک، ب] حداقل یک ریشه وجود دارد و از 3) نتیجه می گیرد که f(x) در این فاصله یکنواخت است و بنابراین ریشه منحصر به فرد خواهد بود.

حل معادله (1) روش تکراریبه این معنی است که آیا ریشه دارد یا خیر، چند ریشه دارد و مقادیر ریشه ها را با دقت لازم پیدا کنید.

هر مقداری که یک تابع را معکوس می کند f(x) به صفر، یعنی. به گونه ای که:

تماس گرفت ریشه معادلات(1) یا صفرتوابع f(x).

مشکل یافتن ریشه یک معادله f(x) = 0 به روش تکراری شامل دو مرحله است:

  1. جداسازی ریشه
  2. - یافتن مقدار تقریبی ریشه یا بخش حاوی آن؛
  3. اصلاح ریشه های تقریبی
  4. - رساندن آنها به درجه ای از دقت.

فرآیند جداسازی ریشه با ایجاد علائم عملکرد آغاز می شود f(x) در مرز x=الفو x=بنقاطی در منطقه وجود آن است.

مثال 1 . ریشه های معادله را از هم جدا کنید:

f( x) є x 3 - 6x + 2 = 0.

بیایید یک نمودار تقریبی ایجاد کنیم:

در نتیجه، معادله (2) دارای سه ریشه واقعی است که در فواصل [-3، -1] و .

مقادیر تقریبی ریشه ها ( تقریب های اولیه) را می توان از معنای فیزیکی مسئله، از حل یک مسئله مشابه با داده های اولیه متفاوت، یا به صورت گرافیکی یافت.

در عمل مهندسی رایج است روش گرافیکیتعیین ریشه های تقریبی

با در نظر گرفتن اینکه ریشه های واقعی معادله (1) نقاط تلاقی نمودار تابع هستند. f(x) با محور x کافی است تابع را رسم کنیم f(x) و نقاط تقاطع را علامت بزنید f(x) با محور اوه،یا روی محور علامت بزنید اوهبخش های حاوی یک ریشه ساخت نمودارها را اغلب می توان با جایگزینی معادله (1) تا حد زیادی ساده کرد. معادلاو با معادله:

معادله (4) را می توان به راحتی به عنوان یک برابری بازنویسی کرد:

از اینجا مشخص می شود که ریشه های معادله (4) را می توان به صورت ابسیساهای نقاط تقاطع منحنی لگاریتمی یافت. y= ورود xو هذلولی ها y = . با ساختن این منحنی ها، تقریباً تنها ریشه معادله (4) را پیدا می کنیم یا قطعه حاوی آن را تعیین می کنیم.

فرآیند تکراری شامل پالایش متوالی تقریب اولیه است X 0 . هر مرحله از این قبیل نامیده می شود تکرار. در نتیجه تکرارها، دنباله ای از مقادیر تقریبی ریشه پیدا می شود X 1 , X 2 , ..., xn.اگر این مقادیر با افزایش تعداد تکرارها nبه ارزش واقعی ریشه نزدیک شوید، سپس می گوییم که فرآیند تکراری است همگرا می شود.

برای یافتن ریشه معادله (1) متعلق به بخش [ یک، ب]، این بخش را به نصف تقسیم کنید. اگر f= 0، سپس x = ریشه معادله است. اگر fبرابر 0 نیست (که در عمل به احتمال زیاد است)، سپس یکی از نیمه ها یا در انتهای آن تابع را انتخاب می کنیم. f(x) علائم مخالف دارد بخش جدید باریک [ الف 1 , ب 1] دوباره به نصف تقسیم کنید و همان اعمال را انجام دهید.

روش نیمه‌ها عملاً برای یافتن تقریباً ریشه یک معادله ساده است و همیشه همگرا است.

مثال 3. از روش نصف کردن برای روشن کردن ریشه معادله استفاده کنید

f( x) = x 4 + 2 x 3 - x - 1 = 0

خوابیده بر روی قطعه [0، 1] .

به طور مداوم داریم:

f(0) = - 1; f(1) = 1; f(0,5) = 0,06 + 0,25 - 0,5 - 1 = - 1,19;

f(0.75) = 0.32 + 0.84 - 0.75 - 1 = - 0.59;

f(0.875) = 0.59 + 1.34 - 0.88 - 1 = + 0.05;

f(0.8125) = 0.436 + 1.072 - 0.812 - 1 = - 0.304;

f(0.8438) = 0.507 + 1.202 - 0.844 - 1 = - 0.135;

f(0.8594) = 0.546 + 1.270 - 0.859 - 1 = - 0.043 و غیره.

قابل قبول است

x = (0.859 + 0.875) = 0.867

در این روش، فرآیند تکرار شامل مقادیر زیر است که به صورت تقریبی برای ریشه معادله (1) در نظر گرفته می شود: X 1 ، X 2 ، ...، x nنقاط تقاطع وتر ABبا محور x (شکل 3). ابتدا معادله وتر را می نویسیم AB:

.

برای نقطه تقاطع وتر ABبا محور x ( x = x 1 ,y= 0) معادله را بدست می آوریم:

برای قطعیت بگذارید و""(x) > 0 در a x b( اتفاق می افتد و""(x) < اگر معادله را به شکل بنویسیم 0 به ما کاهش می یابد - f(x) = 0). سپس منحنی در = f(x) به سمت پایین محدب خواهد بود و بنابراین در زیر وتر آن قرار دارد AB. دو حالت ممکن وجود دارد: 1) f(الف) > 0 (شکل 3، الف) و 2) f(ب) < 0 (Рисунок 3, ب).

شکل 3، الف، ب.

در مورد اول پایان الفتقریب های بی حرکت و متوالی: x 0 = ب;x، جایی که تابع است f (X) دارای علامت مقابل علامت مشتق دوم خود است و""(X).

روند تکراری ادامه می یابد تا زمانی که مشخص شود که

| x i - x i - 1 |< e ,

جایی که e حداکثر خطای مطلق مشخص شده است.

مثال 4. ریشه مثبت معادله را پیدا کنید

f( x) = x 3 - 0,2 x 2 - 0,2 X - 1,2 = 0

با دقت e = 0.01.

اول از همه ریشه را جدا می کنیم. چون

f(1) = -0.6< 0 и f (2) = 5,6 > 0,

سپس ریشه x مورد نیاز در بازه قرار دارد. فاصله حاصل بزرگ است، بنابراین آن را به نصف تقسیم می کنیم. چون

f (1.5) = 1.425 > 0، سپس 1< x < 1,5.

چون و""(x) = 6 x- 0.4 > 0 در 1< X < 1,5 и f(1.5) > 0، سپس از فرمول (5) برای حل مسئله استفاده می کنیم:

= 1,15;

| x 1-x 0 |

= 0.15 > e،

بنابراین، ما محاسبات را ادامه می دهیم. X 1) = -0,173;

= 1,190;

f ( 2-x|x

f (X 2) = -0,036;

= 1,198;

| x 3-x 2 | = 0,008 < e .

1 |

= 0.04 > e،

بنابراین، می توانیم x = 1.198 را با دقت e = 0.01 بگیریم. f(x) توجه داشته باشید که ریشه دقیق معادله x = 1.2 است. الف; ب], .


اجازه دهید

بنابراین، می توانیم x = 1.198 را با دقت e = 0.01 بگیریم. f(x) – عملکرد پیوسته در [ الف; ب],
,
روش نیوتن (روش مماس)
یک تابع دوبار متمایز پیوسته در بازه [ الف; ب].

و علامت را به [ تغییر ندهید
روش نیوتن (روش مماس)
اجازه دهید با نشان دادن انتهای قسمتی که در آن علائم وجود داردمطابقت دادن تقریب های متوالی به ریشه دقیق

ج
.

با فرمول پیدا کنید
برای

سپس
ریشه دقیق معادله (1) است. ε فرآیند محاسبات معمولاً زمانی که متوقف می شود

معلوم می شود که کمتر از دقت مشخص شده است

. با این حال، این شرط نمی تواند به طور جدی تضمین کند که دقت مشخص شده به دست آمده است. برای اطمینان کامل، می توانید همانطور که در ابتدای این بخش گفته شد، بررسی دقت انجام دهید. اگر دقت به دست نیامد، باید چندین بار دیگر تکرارها را تکرار کنید. روش سکنت
اجازه دهید مقداری تقریب اولیه وجود داشته باشد . با استفاده از فرمول یک امتیاز دیگر به دست می آوریم، کجا روش نیوتن (روش مماس)
ساعت روش نیوتن (روش مماس) - تعداد کمی فرض می کنیم چندین مرحله از روش را تکمیل کرده ایم و در این مرحله دو تقریب متوالی داریم.

,

به ریشه دقیق (در مرحله اولیه این است

). سپس با استفاده از فرمول تقریب بعدی را پیدا می کنیم

فرآیند با همان معیاری که در روش نیوتن وجود داشت متوقف می شود.
روش تکرار در روش تکرار، معادله اصلی (1) به معادله معادل تبدیل می شود
,
. تقریب اولیه انتخاب شده است . هر تقریب بعدی با فرمول به دست می آید
فرآیند با همان معیاری که در روش نیوتن وجود داشت متوقف می شود. روش همگرا خواهد شد، یعنی. محدود کردن

اگر نابرابری در همسایگی ریشه باشد برابر با مقدار دقیق ریشه است

و تقریب اولیه کاملاً به ریشه نزدیک است.

مزایا و معایب روش ها

,

روش دوبخشی مستلزم جداسازی ریشه است و برای دستیابی به دقت بالا، تابع باید بارها ارزیابی شود. دستیابی به دقت مشخص شده در این روش تضمین شده است. انتهای قسمتی که در آن علائم وجود داردروش نیوتن دارای همگرایی بسیار سریع (همگرایی درجه دوم) است. کجا- ارزش دقیق ریشه

برای تضمین همگرایی روش نیوتن، چند شرط باید رعایت شود. به طور کلی، شما می توانید محاسبات را با استفاده از روش نیوتن بدون بررسی این شرایط شروع کنید، اما ممکن است همگرایی مشاهده نشود.

روش سکانت برای توابع صاف نرخ همگرایی نزدیک به نرخ همگرایی روش نیوتن فراهم می کند. نیازی به محاسبه مشتق یک تابع ندارد. اگر نقطه شروع دور از ریشه گرفته شود، ممکن است همگرایی وجود نداشته باشد.

روش تکرار نرخ همگرایی به طور قابل توجهی کمتر از روش نیوتن می دهد. اگر همگرایی وجود داشته باشد، برآورد اعمال می شود
اجازه دهید مقداری تقریب اولیه وجود داشته باشد
- اعداد،
,
;انتهای قسمتی که در آن علائم وجود دارد- ارزش دقیق ریشه مقادیر کجا, qبه تابع بستگی دارد و به عدد تکرار بستگی ندارد. اگر
نزدیک به 1 است، پس qنیز نزدیک به 1 است و همگرایی روش کند خواهد بود. محاسبه با استفاده از روش تکرار را می توان بدون بررسی شرایط شروع کرد
روش نیوتن (روش مماس) . در این صورت ممکن است روند واگرا شود و سپس پاسخ دریافت نشود.

روش های زیادی برای یافتن ریشه یک معادله غیرخطی غیر از موارد ذکر شده وجود دارد. در متکد، تابع ریشه در قالب است
از روش secant استفاده می کند و اگر به نتایج مطلوب منتهی نشد روش مولر. در روش دوم، برخلاف روش سکنت، در هر مرحله دو نقطه اضافی گرفته می شود، نمودار تابع با سهمی که از سه نقطه عبور می کند جایگزین می شود و نقطه تقاطع سهمی با محور به عنوان تقریب بعدی در نظر گرفته می شود. گاو نر. در تابع root با فرمت root( f(x), x, الف, ب) از روش های رایدر و برنت استفاده می شود. برای یافتن ریشه های چند جمله ای در متکد از روش لاگر استفاده می شود.

روش دوگانگینام خود را از کلمه یونانی باستان، که در ترجمه به معنی تقسیم به دو است. به همین دلیل است که این روش نام دومی نیز دارد: روش نصف کردن. ما اغلب از آن استفاده می کنیم. فرض کنید بازی "حدس بزنید عدد" را انجام دهید، که در آن یک بازیکن عددی را از 1 تا 100 حدس می‌زند، و دیگری سعی می‌کند آن را حدس بزند، با راهنمایی سرنخ‌های "بیش از" یا "کمتر از". منطقی است که فرض کنیم عدد اول 50 نامیده می شود و عدد دوم اگر کمتر باشد - 25، اگر بیشتر باشد - 75. بنابراین، در هر مرحله (تکرار) عدم قطعیت مجهول 2 برابر کاهش می یابد. آن ها حتی بدشانس ترین فرد جهان نیز به جای 100 عبارت تصادفی، عدد پنهان در این محدوده را در 7 حدس حدس می زند.

روش تقسیم نصف در حل معادله

حل صحیح یک معادله با استفاده از روش نیمه ها تنها در صورتی امکان پذیر است که بدانیم در یک بازه معین یک ریشه وجود دارد و منحصر به فرد است. این به هیچ وجه به این معنا نیست که از روش دوگانگی فقط می توان برای حل معادلات خطی استفاده کرد. برای یافتن ریشه معادلات مرتبه بالاتر با استفاده از روش نیم‌بخشی، ابتدا باید ریشه‌ها را به قطعات جدا کنید.< 0.

فرآیند جداسازی ریشه ها با یافتن مشتقات اول و دوم تابع و برابر کردن آنها با صفر f"(x)=0 و f""(x)=0 انجام می شود. در ادامه علائم f(x) در نقاط بحرانی و مرزی بازه ای که تابع تغییر می کند علامت |a,b|، جایی که f(a)*f(b) تعیین می شود.

الگوریتم روش دوگانگی

الگوریتم روش دوگانگی بسیار ساده است. بخش |a,b| را در نظر بگیرید که در آن یک ریشه x 1 وجود دارد

در مرحله اول x 0 =(a+b)/2 محاسبه می شود< 0, то , если наоборот, то ,т.е происходит сужение интервала. Таким образом в результате формируется последовательность x i , где i - номер иттерации.

سپس مقدار تابع در این نقطه تعیین می شود: اگر f(x 0)

محاسبات زمانی متوقف می شوند که اختلاف b-a کمتر از خطای مورد نیاز باشد.

به عنوان مثال استفاده از روش تقسیم نیمه، ریشه را در فاصله معادله x 3 -3*x+1=0 با دقت 10 -3 پیدا می کنیم.< 10 -3

همانطور که از جدول مشخص است، ریشه 0.347 است. تعداد تکرارها 10 است. شرط تکمیل: a-b=0.0009روش نیمه ها یا روش دوگانگی

ساده ترین روش برای حل معادله با استفاده از روش های عددی است.

دانلود کنید:

حل معادله به روش دوگانگی - حل معادله با استفاده از روش دوبخشی در پاسکال.

به آن روش دوگانگی نیز می گویند. این روش حل معادلات از این جهت با روش‌هایی که در بالا مورد بحث قرار گرفت متفاوت است، نیازی به تحقق این شرط ندارد که مشتق اول و دوم علامت خود را در بازه حفظ کنند. روش دوبخشی برای هر توابع پیوسته f(x)، از جمله توابع غیر قابل تمایز همگرا می شود.

قسمت را با یک نقطه به نصف تقسیم کنید. اگر (که عملاً محتمل‌تر است)، دو حالت ممکن است: یا f(x) علامت را در قسمت (شکل 3.8) تغییر می‌دهد یا در قطعه (شکل 3.9).

با انتخاب قسمتی که تابع در آن علامت تغییر می کند و ادامه روند نصف شدن بیشتر، می توان به یک قطعه کوچک دلخواه که حاوی ریشه معادله است رسید.

مثال 4. معادله 5x - 6x -3 = 0 دارای یک ریشه در بازه است. این معادله را با استفاده از روش تقسیم نیمه حل کنید.راه حل


: یک برنامه پاسکال می تواند به شکل زیر باشد:

تابع f(x: real): real;

f:=exp(x*ln(5))-6*x-3;

a, b, e, c, x: واقعی;

در حالی که abs(b-a)>e انجام می دهند<0 then

اگر f(a)*f(c)

writeln("x=",x:3:3," f(x)=",f(x):4:4);

e=0.001 x=1.562 f(x)=-0.0047


20.الگوریتم روش تقسیم نیمه ها.

1. یک تقریب ریشه جدید را تعیین کنید Xدر وسط بخش [a,b]: x=(a+b)/2.

2. مقادیر تابع را در نقاط پیدا کنید الفو X: F(a)و F(x).

3. وضعیت را بررسی کنید F(a)*F(x)< 0 . اگر شرط برآورده شود، ریشه روی قطعه قرار دارد [اوه] بحرکت به نقطه x (b=x). اگر شرط برآورده نشود، ریشه روی قطعه قرار دارد [x,b]. در این مورد، شما نیاز به یک نکته دارید الفحرکت به نقطه x (a=x).

4. به مرحله 1 بروید و دوباره قسمت را به نصف تقسیم کنید. الگوریتم تا زمانی که شرط برآورده شود ادامه می یابد /F(x)/< e (دقت مشخص شده).

21. روش تکرار ساده برای ریشه یابی. تفسیر هندسی.

معادله اصلی f(x)=0 با تبدیل‌های معادل به شکل با مجهول در سمت چپ انتخاب شده کاهش می‌یابد، یعنی x=φ(x)، که در آن φ(x) تابعی است که با تابع اصلی f مرتبط است. (x). این شکل از نوشتن معادله اجازه می دهد تا با توجه به تقریب اولیه x 0، تقریب بعدی، اول x 1 =φ(x 0) را بدست آوریم، سپس تقریب دوم را بدست آوریم x 2 =φ(x1) و به همین ترتیب x n +1 =φ(x n)… . دنباله (x n )= x 0، x 1، x 2، ...، x n،… دنباله ای از تکرارها یا تقریب ها با مقدار اولیه x 0 نامیده می شود. اگر تابع φ(x) پیوسته نباشد و محدودیتی وجود داشته باشد. ξ = lim x n به صورت n→∞، سپس با عبور از حد در برابری x n +1 =φ(x n)، در می یابیم که به صورت n→ ∞: lim x n +1 =lim φ(x n)=φ(lim x n ) یعنی ξ=φ(ξ) در نتیجه، اگر دنباله تقریب ها همگرا شود، به ریشه معادله (2) و در نتیجه معادله (1) همگرا می شود. با توجه به همگرایی فرآیند تکراری، این ریشه را می توان برای اندازه کافی بزرگ محاسبه کرد nبا هر دقت داده شده با این حال، باید تعیین کرد که در چه شرایطی دنباله (xn) همگرا خواهد بود. اجازه دهید یک ارتباط بین خطاهای دو تقریب همسایه - ε n و ε n +1 بدست آوریم: x n =ξ+ε n، x n +1 =ξ+ε n +1. بیایید این نمایش ها را با x n +1 =φ(xn) جایگزین کنیم و تابع را به یک سری تیلور در مجاورت ریشه گسترش دهیم:ξ+ε n +1 =φ(ξ+ε n)=φ(ξ)+ε n φ'(ξ)+ (ε n 2 /2!)φ''(η)، که در آن η Ο [ξ; ξ+ε n ] М از آنجایی که ξ یک ریشه است، پس ξ=φ(ξ) دریافت می کنیم: ε n +1 =ε n φ'(ξ)+(φ''(η)/2)ε n 2. از آنجایی که ε<1, то ε n 2 <<ε n . Поэтому если φ’(ξ) ¹ 0,то основной вклад в погрешность дает первое слагаемое, а слагаемым (φ’’(η)/2)ε n 2 можно пренебречь, то есть ε n +1 » ε n φ’(ξ).Это означает, что погрешность будет уменьшаться на каждом последующем шаге, если |φ’(ξ)|<1, тогда для любого n|ε n +1 |<|ε n |. Сформулируем теорему о сходимости метода простых итераций, дающую достаточные условия сходимости.

قضیه همگرایی روش تکرار ساده.فرض کنید ξ ریشه معادله x=φ(x) باشد، تابع φ(x) در بازه تعریف شده و قابل تمایز است و برای x О تمام مقادیر تابع φ (x) О. سپس، اگر چنین عدد مثبتی q وجود داشته باشد<1, что при x Î выполняется неравенство |φ’(ξ)|≤q<1, то на отрезке уравнение x=φ(x) имеет единственный корень x=ξ и процесс итераций, выраженный формулой x n +1 =φ(x n), где n=1,2,3… , сходится к этому корню независимо от выбора начального приближения x 0 Î .Таким образом, последовательность {x n },начинающаяся с любого x 0 Î , сходится к корню ξ со скоростью геометрической прогрессии, причем скорость сходимости тем выше, чем меньше величина q Î (1;0).Если функция φ(х) монотонно возрастает и 0<φ’(х)<1, то все приближения лежат по одну сторону от корня - такую сходимость называют монотонной (или ступенчатой) – рис.1. Если функция φ(х) монотонно убывает и 0>φ'(x)>-1، سپس تقریب های همسایه در طرفین مخالف ریشه قرار دارند - چنین همگرایی دو طرفه (یا مارپیچی) نامیده می شود - شکل 2. از آنجایی که در این حالت ریشه در بازه ای قرار می گیرد که انتهای آن تقریب های همسایه است – ξÎ(x n ,x n +1)، پس تحقق شرط |x n +1 -x n |<ε обеспечивает выполнение условия |ξ-x n +1 |<ε.


برای اینکه بتوانیم روش های تکرار شونده را از نظر سرعت همگرایی مقایسه کنیم، مفاهیم زیر معرفی می شوند:

تعریف 1:همگرایی یک دنباله (xn) به ξ نامیده می شود خطی(بر این اساس، فرآیند تکراری است همگرا خطیاگر یک CΟ(0,1) ثابت و یک عدد n 0 وجود داشته باشد به طوری که نابرابری های |ξ-x n +1 |≤C|ξ-x n | برای n≥n 0.

برای خطاهایی که قبلا معرفی شد، این به معنای |ε n+1 |≤C|ε n | است. در روش تکرار ساده، ثابت C مقدار q است، یعنی روش به صورت خطی همگرا می شود.

تعریف 2:دنباله تقریب ها (x n ) به ξ با حداقل همگرا می شود rمرتبه ام (بر این اساس، فرآیند تکراری حداقل دارد صمرتبه -ام)، اگر چنین ثابت هایی وجود داشته باشد C>0، ص≥1 و n 0 , که برای همه n≥n 0 شرایط |ξ-x n +1 |≤C|ξ-x n | p (یا در نمادهای دیگر |ε n+1 |≤C|ε n | p).



جدید در سایت

>

محبوب ترین