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

पायथन में आइंस्टीन सममिति संकेत के साथ टेंसर संकुचन

परिचय

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

पैरामीटर्स

  • subscript: सममिति के लिए सबस्क्रिप्ट (कॉमा से अलग सूचकांक लेबल)।
  • operands: संक्रिया के लिए सरणियाँ।

चरण-दर-चरण उदाहरण

आवश्यक लाइब्रेरी आयात करें

import numpy as np

दो 3D सरणी बनाएं

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

सरणियों की जानकारी प्रदर्शित करें

print("सरणी 1...\n", arr1)
print("\nसरणी 2...\n", arr2)
print("\nसरणी 1 के आयाम...\n", arr1.ndim)
print("\nसरणी 2 के आयाम...\n", arr2.ndim)
print("\nसरणी 1 का आकार...\n", arr1.shape)
print("\nसरणी 2 का आकार...\n", arr2.shape)

टेंसर संकुचन करें (ijk,jil->kl)

print("\nपरिणाम (टेंसर संकुचन)...\n", np.einsum('ijk,jil->kl', arr1, arr2))

पूर्ण कोड उदाहरण

import numpy as np

# दो 3D सरणी बनाएं
arr1 = np.arange(60.).reshape(3, 4, 5)
arr2 = np.arange(24.).reshape(4, 3, 2)

# सरणी प्रदर्शित करें
print("सरणी 1...\n", arr1)
print("\nसरणी 2...\n", arr2)
print("\nसरणी 1 के आयाम...\n", arr1.ndim)
print("\nसरणी 2 के आयाम...\n", arr2.ndim)
print("\nसरणी 1 का आकार...\n", arr1.shape)
print("\nसरणी 2 का आकार...\n", arr2.shape)

# टेंसर संकुचन करें
print("\nपरिणाम (टेंसर संकुचन)...\n", np.einsum('ijk,jil->kl', arr1, arr2))

आउटपुट

सरणी 1...
 [[[ 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.]]]
सरणी 2...
 [[[ 0.  1.]
   [ 2.  3.]
   [ 4.  5.]]

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

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

  [[18. 19.]
   [20. 21.]
   [22. 23.]]]
सरणी 1 के आयाम...
 3
सरणी 2 के आयाम...
 3
सरणी 1 का आकार...
 (3, 4, 5)
सरणी 2 का आकार...
 (4, 3, 2)
परिणाम (टेंसर संकुचन)...
 [[4400. 4730.]
 [4532. 4874.]
 [4664. 5018.]
 [4796. 5162.]
 [4928. 5306.]]

व्याख्या: सबस्क्रिप्ट 'ijk,jil->kl' का अर्थ है: arr1 के सूचकांक i,j,k और arr2 के सूचकांक j,i,l को लेकर j और i पर योग करें, परिणाम kl सूचकांकों के साथ (5×2) मैट्रिक्स देता है।

  1. - Python में कैलेंडर प्रिंट करें

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

  1. - पायथन का उपयोग करके अपने खुद के फ़ॉन्ट में प्रिंट करें

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

  1. - पायथन के साथ नार्सिसिस्टिक (आर्मस्ट्रांग) नंबर कैसे प्रिंट करें

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