یک تابع پایتون بنویسید که برای یک آرایه‌ی بزرگ از مختصات دوبعدی (مجموعه‌ای از جفت‌های x و y) زاویهٔ قطبی هر نقطه را با استفاده از تابع atan2 محاسبه کرده و خروجی را به‌صورت آرایه‌ای از زاویه‌ها (رادیان) برگرداند.

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

0.0

برای حل این مسئله از کتابخانهٔ numpy استفاده کنید: ابتدا ورودی‌ها را به آرایه‌های numpy تبدیل کنید و سپس با فراخوانی np.arctan2(y, x) زاویه‌ها را به‌دست آورید؛ در صورت نیاز می‌توانید با np.degrees نتیجه را به درجه تبدیل کنید و مواردی مثل x=y=0 را با مقدار پیش‌فرض مدیریت کنید. برای کار با آرایه‌های بزرگ از بردارسازی (vectorization) و اجتناب از حلقه‌های پایتونی استفاده کنید تا کارایی بهتری داشته باشید — در محیط‌های HPC می‌توانید با Numba یا پردازش موازی سرعت را باز هم افزایش دهید.

توسط پژوهشگر در 202 روز قبل ساعت 02:58
دسته بندی ها: Python Python for beginner
sara در 202 روز قبل ساعت 07:54

برای محاسبه زاویهٔ قطبی نقاط دوبعدی به‌صورت سریع از np.arctan2(y, x) استفاده کنید و ورودی‌ها را به آرایه‌های numpy تبدیل کنید تا از بردارسازی بهره ببرید. اگر x=y=0 باشد، زاویه تعریف‌شده نیست و می‌توانید با یک ماسک مقدار پیش‌فرضی مانند 0.0 یا np.nan به آن نقاط تخصیص دهید. در صورت نیاز خروجی را به درجه تبدیل کنید با np.degrees. برای کار روی داده‌های بزرگ از پیش‌تخصیص حافظه و استفاده از vectorization یا Numba/پردازش موازی بهره ببرید.

گزارش

1 پاسخ

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

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