I would like to create a block tridiagonal matrix starting from three numpy.ndarray. Is there any (direct) way to do that in python?
Thank you in advance!
Ch
With "regular" numpy arrays, using numpy.diag:
def tridiag(a, b, c, k1=-1, k2=0, k3=1): return np.diag(a, k1) + np.diag(b, k2) + np.diag(c, k3) a = [1, 1]; b = [2, 2, 2]; c = [3, 3] A = tridiag(a, b, c)