با استفاده از تابع setattr یک کلاس پیکربندی برای حل عددی یک معادله دیفرانسیل ساده (مثلاً y' = -ky) بسازید؛ پارامترها (k، y0، dt، t_end) را از یک دیکشنری بارگذاری کنید و با روش اویلر راه‌حل عددی را محاسبه و چاپ کنید.

2.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:43

0.0

در پایتون یک کلاس Config یا Solver تعریف کنید و پارامترها را با یک حلقه روی کلیدهای دیکشنری و استفاده از setattr بهattrs کلاس اختصاص دهید. سپس یک تابع ساده پیاده‌سازی روش اویلر بنویسید که از این پارامترها (k، y0، dt، t_end) استفاده کند و مقادیر y را در بازه زمانی محاسبه و در لیست یا آرایه numpy ذخیره کند. نکات: برای محاسبه‌های عددی می‌توانید از numpy استفاده کنید، ورودی‌ها را اعتبارسنجی کنید (مثلاً dt>0) و برای بررسی صحت خروجی، جواب تحلیلی y = y0 * exp(-k t) را به‌عنوان مرجع محاسبه کنید.

توسط پژوهشگر در 221 روز قبل ساعت 01:43
دسته بندی ها: Python Python for beginner
nima در 221 روز قبل ساعت 12:15

برای پایداری و نگهداری بهتر، قبل از اجرای روش اویلر یک اعتبارسنجی ساده برای k، y0 و dt انجام دهید تا مطمئن شوید dt>0 و t_end>0. استفاده از setattr روی کلیدهای دیکشنری برای پر کردن اعضای کلاس مناسب است، اما به کلیدهای ناخواسته یا تداخل با نام‌های موجود توجه کنید. برای صحت خروجی می‌توانید مقادیر تحویل داده‌شده را با پاسخ دقیق y = y0 exp(-k t) مقایسه کنید و از numpy برای نگهداری و چاپ مقادیر استفاده کنید. اگر می‌خواهید، می‌توانید با اضافه کردن قابلیت ضبط خطا یا بازبینی گام‌های عددی، کد را به یک کلاس Solver قابل استفاده در پروژه‌های بزرگتر تبدیل کنید.

گزارش

1 پاسخ

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

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