परिचय
numpy.real_if_close() फ़ंक्शन सम्मिश्र सरणी को वास्तविक सरणी में बदल देता है यदि सभी काल्पनिक भाग "शून्य के निकट" हों। "निकटता" सहनशीलता (tol) × मशीन एप्सिलॉन द्वारा निर्धारित होती है।
पैरामीटर
- a: इनपुट सरणी
- tol: मशीन एप्सिलॉन में सहनशीलता (डिफ़ॉल्ट: 100)
चरण
1. लाइब्रेरी आयात करें
import numpy as np
2. छोटे काल्पनिक भाग वाली सम्मिश्र सरणी बनाएं
arr = np.array([2.1 + 4e-14j, 5.2 + 3e-15j])
3. सरणी जानकारी प्रदर्शित करें
print("हमारी सरणी...\n", arr)
print("\nआयाम...\n", arr.ndim)
print("\nडेटा प्रकार...\n", arr.dtype)
print("\nआकार...\n", arr.shape)
4. सहनशीलता के साथ वास्तविक भाग निकालें
print("\nपरिणाम...\n", np.real_if_close(arr, tol=1000))
पूर्ण उदाहरण
import numpy as np
# बहुत छोटे काल्पनिक भाग वाली सम्मिश्र सरणी
arr = np.array([2.1 + 4e-14j, 5.2 + 3e-15j])
print("हमारी सरणी...\n", arr)
print("\nहमारी सरणी के आयाम...\n", arr.ndim)
print("\nहमारी सरणी ऑब्जेक्ट का डेटा प्रकार...\n", arr.dtype)
print("\nहमारी सरणी ऑब्जेक्ट का आकार...\n", arr.shape)
# tol=1000 के साथ वास्तविक भाग निकालें
print("\nपरिणाम...\n", np.real_if_close(arr, tol=1000))
आउटपुट
हमारी सरणी...
[2.1+4.e-14j 5.2+3.e-15j]
हमारी सरणी के आयाम...
1
हमारी सरणी ऑब्जेक्ट का डेटा प्रकार...
complex128
हमारी सरणी ऑब्जेक्ट का आकार...
(2,)
परिणाम...
[2.1 5.2]
व्याख्या
- मशीन एप्सिलॉन (float64 के लिए) ≈ 2.22e-16
- सहनशीलता सीमा = 1000 × 2.22e-16 = 2.22e-13
- काल्पनिक भाग: 4e-14 और 3e-15, दोनों सीमा से छोटे हैं
- इसलिए, सरणी को वास्तविक सरणी
[2.1, 5.2]में बदल दिया जाता है
यदि काल्पनिक भाग सहनशीलता से बड़े होते, तो मूल सम्मिश्र सरणी ही लौटाई जाती।