Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन में आइंस्टीन योग सम्मेलन के साथ टेंसर संकुचन

आइंस्टीन के सारांश सम्मेलन के साथ टेंसर संकुचन के लिए, पायथन में numpy.einsum () विधि का उपयोग करें। पहला पैरामीटर सबस्क्रिप्ट है। यह सारांश के लिए सबस्क्रिप्ट को सबस्क्रिप्ट लेबलों की अल्पविराम सूची के रूप में निर्दिष्ट करता है। दूसरा पैरामीटर ऑपरेंड है। ये ऑपरेशन के लिए सरणियाँ हैं।

आइंसम () विधि ऑपरेंड पर आइंस्टीन के योग सम्मेलन का मूल्यांकन करती है। आइंस्टीन के योग सम्मेलन का उपयोग करते हुए, कई सामान्य बहु-आयामी, रैखिक बीजगणितीय सरणी संचालन को एक साधारण फैशन में दर्शाया जा सकता है। निहित मोड में einsum इन मानों की गणना करता है।

स्पष्ट मोड में, einsum अन्य सरणी संचालनों की गणना करने के लिए और अधिक लचीलापन प्रदान करता है जिन्हें शास्त्रीय आइंस्टीन योग संचालन नहीं माना जा सकता है, अक्षम करके, या संक्षेप में निर्दिष्ट सबस्क्रिप्ट लेबल को मजबूर करके।

कदम

सबसे पहले, आवश्यक पुस्तकालयों को आयात करें -

import numpy as np

सरणी () विधि का उपयोग करके दो सुस्पष्ट एक-आयामी सरणी बनाना -

arr1 = np.arange(60.).reshape(3,4,5)
arr2 = np.arange(24.).reshape(4,3,2)

सरणियों को प्रदर्शित करें -

print("Array1...\n",arr1)
print("\nArray2...\n",arr2)

दोनों सरणियों के आयामों की जाँच करें -

print("\nDimensions of Array1...\n",arr1.ndim)
print("\nDimensions of Array2...\n",arr2.ndim)

दोनों सरणियों के आकार की जाँच करें -

print("\nShape of Array1...\n",arr1.shape)
print("\nShape of Array2...\n",arr2.shape)

आइंस्टीन के सारांश सम्मेलन के साथ टेंसर संकुचन के लिए, पायथन में numpy.einsum() विधि का उपयोग करें -

print("\nResult (Tensor contraction)...\n",np.einsum('ijk,jil->kl', arr1, arr2))

उदाहरण

import numpy as np

# Creating two numpy One-Dimensional array using the array() method
arr1 = np.arange(60.).reshape(3,4,5)
arr2 = np.arange(24.).reshape(4,3,2)

# Display the arrays
print("Array1...\n",arr1)
print("\nArray2...\n",arr2)

# Check the Dimensions of both the arrays
print("\nDimensions of Array1...\n",arr1.ndim)
print("\nDimensions of Array2...\n",arr2.ndim)

# Check the Shape of both the arrays
print("\nShape of Array1...\n",arr1.shape)
print("\nShape of Array2...\n",arr2.shape)

# For Tensor contraction with Einstein summation convention, use the numpy.einsum() method in Python.
print("\nResult (Tensor contraction)...\n",np.einsum('ijk,jil->kl', arr1, arr2))

आउटपुट

Array1...
[[[ 0. 1. 2. 3. 4.]
[ 5. 6. 7. 8. 9.]
[10. 11. 12. 13. 14.]
[15. 16. 17. 18. 19.]]

[[20. 21. 22. 23. 24.]
[25. 26. 27. 28. 29.]
[30. 31. 32. 33. 34.]
[35. 36. 37. 38. 39.]]

[[40. 41. 42. 43. 44.]
[45. 46. 47. 48. 49.]
[50. 51. 52. 53. 54.]
[55. 56. 57. 58. 59.]]]

Array2...
[[[ 0. 1.]
[ 2. 3.]
[ 4. 5.]]

[[ 6. 7.]
[ 8. 9.]
[10. 11.]]

[[12. 13.]
[14. 15.]
[16. 17.]]

[[18. 19.]
[20. 21.]
[22. 23.]]]

Dimensions of Array1...
3

Dimensions of Array2...
3

Shape of Array1...
(3, 4, 5)

Shape of Array2...
(4, 3, 2)

Result (Tensor contraction)...
[[4400. 4730.]
[4532. 4874.]
[4664. 5018.]
[4796. 5162.]
[4928. 5306.]]

  1. पायथन में एक कैलेंडर प्रिंट करें

    इस ट्यूटोरियल में, हम सीखेंगे कि कैलेंडर का उपयोग करके महीने और साल के कैलेंडर को कैसे प्रिंट किया जाए पायथन का मॉड्यूल। यह पायथन में एक सीधी बात है। हमें साल और महीने की संख्या चाहिए। बस इतना ही। आइए देखें कि एक साल का कैलेंडर कैसे प्रिंट करें। वर्ष कैलेंडर प्रिंट करने के लिए नीचे दिए गए चरणों का

  1. पायथन का उपयोग करके अपने स्वयं के फ़ॉन्ट से प्रिंट करें?

    इसमें, हम यह देखने जा रहे हैं कि हम अपने टेक्स्ट को कितने अलग तरीके से अजगर का उपयोग करके एक बहुत ही अनोखे तरीके से प्रदर्शित कर सकते हैं। तो मान लीजिए कि मैं हैलो, पायथन प्रदर्शित करना चाहता हूं और कई तरीकों से मैं अपना टेक्स्ट/स्ट्रिंग (हैलो, पायथन) प्रदर्शित कर सकता हूं जैसे: इनपुट “Hello,

  1. कैसे अजगर के साथ Narcissistic (आर्मस्ट्रांग) नंबर मुद्रित करने के लिए?

    Narcissistic Numbers प्रिंट करने के लिए, आइए पहले इसकी परिभाषा देखें। यह एक संख्या है जो अपने स्वयं के अंकों का योग है जो प्रत्येक अंक की संख्या की शक्ति तक बढ़ा है। उदाहरण के लिए, 1, 153, 370 सभी नार्सिसिस्टिक नंबर हैं। आप निम्न कोड चलाकर इन नंबरों को प्रिंट कर सकते हैं def print_narcissistic_nums(