পাইথন নামপাই-তে numpy.linalg.cholesky() মেথড ব্যবহার করে কোলেসکی ডিকম্পোজিশন (Cholesky decomposition) ফেরত দেওয়া যায়। এটি বর্গ ম্যাট্রিক্স a-র ডিকম্পোজিশন L × L.H ফেরত দেয়, যেখানে L হল লোয়ার-ট্র্যাঙ্গুলার (lower-triangular) ম্যাট্রিক্স এবং .H হল কনজুগেট ট্রান্সপোজ (conjugate transpose) অপারেটর।
aঅবশ্যই হার্মিটিয়ান (সিমেট্রিক যদি সব উপাদান বাস্তব হয়) এবং পজিটিভ-ডিফিনিট (positive-definite) হতে হবে।- নামপাই এটি যাচাই করে না — শুধু লোয়ার-ট্র্যাঙ্গুলার এবং ডায়াগোনাল উপাদানগুলোই ব্যবহার করা হয়।
- শুধু
Lফেরত দেওয়া হয়।
প্যারামিটার
- a: হার্মিটিয়ান (সিমেট্রিক), পজিটিভ-ডিফিনিট ইনপুট ম্যাট্রিক্স
পদ্ধতি
লাইব্রেরি ইম্পোর্ট করুন
import numpy as np
জটিল ২×২ হার্মিটিয়ান ম্যাট্রিক্স তৈরি করুন
arr = np.array([[1, -2j], [2j, 5]])
অ্যারে এবং বৈশিষ্ট্য দেখুন
print("আমাদের অ্যারে...\n", arr)
print("\nআমাদের অ্যারের মাত্রা...\n", arr.ndim)
print("\nআমাদের অ্যারে অবজেক্টের ডেটা টাইপ...\n", arr.dtype)
print("\nআমাদের অ্যারে অবজেক্টের আকার...\n", arr.shape)
কোলেসکی ডিকম্পোজিশন বের করুন
print("\nলিনিয়ার অ্যালজেব্রায় কোলেসکی ডিকম্পোজিশন...\n", np.linalg.cholesky(arr))
সম্পূর্ণ উদাহরণ
import numpy as np
arr = np.array([[1, -2j], [2j, 5]])
print("আমাদের অ্যারে...\n", arr)
print("\nআমাদের অ্যারের মাত্রা...\n", arr.ndim)
print("\nআমাদের অ্যারে অবজেক্টের ডেটা টাইপ...\n", arr.dtype)
print("\nআমাদের অ্যারে অবজেক্টের আকার...\n", arr.shape)
print("\nলিনিয়ার অ্যালজেব্রায় কোলেসکی ডিকম্পোজিশন...\n", np.linalg.cholesky(arr))
আউটপুট
আমাদের অ্যারে...
[[ 1.+0.j -0.-2.j]
[ 0.+2.j 5.+0.j]]
আমাদের অ্যারের মাত্রা...
2
আমাদের অ্যারে অবজেক্টের ডেটা টাইপ...
complex128
আমাদের অ্যারে অবজেক্টের আকার...
(2, 2)
লিনিয়ার অ্যালজেব্রায় কোলেসکی ডিকম্পোজিশন...
[[1.+0.j 0.+0.j]
[0.+2.j 1.+0.j]]
ব্যাখ্যা: ম্যাট্রিক্স [[1, -2j], [2j, 5]] হার্মিটিয়ান এবং পজিটিভ-ডিফিনিট। এর কোলেসکی ফ্যাক্টর L = [[1, 0], [2j, 1]]। যাচাই: L × L.H = [[1, 0], [2j, 1]] × [[1, -2j], [0, 1]] = [[1, -2j], [2j, 5]]।