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