یک ژنراتور در پایتون بنویسید که با روش نیوتن-رافسون دنبالهٔ تقریب‌های ریشهٔ تابع f(x) را تولید کند تا بتوانید با next به‌صورت مرحله‌ای تقریب‌ها را دریافت کنید و وقتی تغییر بین دو تقریب کمتر از آستانه‌ای شد متوقف شوید.

8.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:19

0.0

یک تابع ژنراتور بسازید که پارامترهای تابع f، مشتق f'، حدس اولیه، تلرانس و حداکثر تکرار را بپذیرد و در هر تکرار با فرمول x_{n+1}=x_n - f(x)/f'(x) مقدار جدید را yield کند. در سمت فراخوانی از next(generator, default) برای گرفتن مرحله‌ای تقریب‌ها و مدیریت پایان یا از شرط |Δx|

توسط پژوهشگر در 202 روز قبل ساعت 02:19
دسته بندی ها: Python Python for beginner
arash در 202 روز قبل ساعت 10:08

برای استفاده پایدار از Newton-Raphson، مطمئن شوید f'(x0) غیر صفر است و رفتار مشتق در بازهٔ کارکرد تابع پایدار است. در هر تکرار x_{n+1} را yield کنید و delta = x_{n+1}-x_n را نگه دارید تا با شرط |Δx| بتوانید پایان را مدیریت کنید. همچنین باید از تقسیم بر صفر جلوگیری کنید: اگر f'(x_n) برابر صفر شد، بهتر است یا خاتمه دهید یا با تغییر x جایگزین نمایید و یا استثنا پرتاب کنید. برای کنترل گام‌ها با next(generator, default) می‌توانید از مقدار default برای پایان یافتن تولید در شرایط خاص استفاده کنید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری