मैं अजगर के लिए एक सी ++ वैज्ञानिक आवेदन पोर्टिंग कर रहा हूँ के भंडारण के लिए एक टपल या numpy सरणी का उपयोग करें और के रूप में मैं अजगर करने के लिए नया हूँ, कुछ समस्याओं का मेरे मन के लिए आते हैं:बेहतर निर्देशांक
1) मैं परिभाषित करने कर रहा हूँ एक वर्ग जिसमें निर्देशांक (x, y) होंगे। इन मानों को कई बार एक्सेस किया जाएगा, लेकिन वे केवल क्लास इंस्टेंटेशन के बाद पढ़े जाएंगे। क्या स्मृति में और समय के अनुसार दोनों में एक टुपल या एक numpy सरणी का उपयोग करना बेहतर है?
2) कुछ मामलों में, इन निर्देशांकों का उपयोग जटिल संख्या बनाने के लिए किया जाएगा, जटिल कार्य पर मूल्यांकन किया जाएगा, और इस समारोह का वास्तविक हिस्सा उपयोग किया जाएगा। यह मानते हुए कि इस कार्य के वास्तविक और जटिल भागों को अलग करने का कोई तरीका नहीं है, और वास्तविक भाग को अंत में उपयोग करना होगा, शायद स्टोर करने के लिए सीधे जटिल संख्याओं का उपयोग करना बेहतर है (x, y)? पाइथन में जटिल से वास्तविक में परिवर्तन के साथ ओवरहेड कितना बुरा है? सी ++ में कोड इन परिवर्तनों में से बहुत कुछ करता है, और यह उस कोड में एक बड़ी मंदी है।
3) कुछ समन्वय परिवर्तन भी करना होगा, और समन्वय के लिए एक्स और वाई मानों को अलग से एक्सेस किया जाएगा, परिवर्तन किया जाएगा, और परिणाम लौटाया जाएगा। समन्वय परिवर्तन जटिल विमान में परिभाषित किए गए हैं, इसलिए जटिल चर पर भरोसा करने से सीधे घटक x और y का उपयोग करने के लिए अभी भी तेज़ है?
धन्यवाद
क्यों जटिल संख्याओं की एक संख्यात्मक सरणी का उपयोग न करें? – Gabe
यह एल्गोरिदम भावना में सबसे अच्छा तरीका है, लेकिन जहां तक मेरे परीक्षणों ने मुझे दिखाया है, यह सबसे धीमा संभव संयोजन है। – Ivan