how to form tridiagonal matrix in matlab

Status
Not open for further replies.

ramani

Member level 4
Joined
Dec 21, 2005
Messages
78
Helped
2
Reputation
4
Reaction score
1
Trophy points
1,288
Location
india
Activity points
1,919
tridiagonal matrix matlab

hi to all,

what is the syntax used in matlab to form tridiagonal matrix from the available lower,main and upper diagonal elements.

if i use T1=diag(md1)+diag(ld1,-1)+diag(ud1,1);,
it is not working for 2×2 tridiagonal matrix.
for 2×2 tridiagonal matrix all elements should present.

is there any matlab program available for this?
 

matlab tridiagonal matrix

I think that statement is OK, if our understanding is the same
example:
diag([1,2])+diag(1,-1)+diag(2,1)

ans =

1 2
1 2

?diag([1,2,3])+diag([1,2],-1)+diag([1,2],1)

ans =

1 1 0
1 2 2
0 2 3
 

matlab tridiagonal

but if i use the expression shown below it gives the wrong answer.

diag(1)+diag(1,-1)+diag(1,1)

ans =

1 2
2 1
 

tridiagonal matlab

hello
the first diag in your statement just generates a constant 1
which means, it just plus 1 to the sum(diag(1,-1), diag(1,1))
you may see it from the following:
diag(1)

ans =

1

?diag(1,-1)

ans =

0 0
1 0

?diag(1,1)

ans =

0 1
0 0

so you have to specify the all the diagnal elements in you matrix
just like this
diag([1,1])
or
diag([1,0])
then it will be OK.
 

Re: tridiagonal matlab

You may also use :

for k=1:20;

for i=2:n-1;
for j=1:n
if (j==i-1)
M(i,j)= YOUR VALUE;
elseif (j==i)
M(i,j)=YOUR VALUE;
elseif (j==i+1)
M(i,j)=YOUR VALUE;
else
M(i,j)=0;
end
end
end

end

and Eye generate a nxn matrix with ones on its diagonal only.

Hope this helps.

Jack





- - - Updated - - -

From older post : on 10/05/2013, 01:30PM, leen87 posted :

You may also use :

for k=1:20;

for i=2:n-1;
for j=1:n
if (j==i-1)
M(i,j)= YOUR VALUE;
elseif (j==i)
M(i,j)=YOUR VALUE;
elseif (j==i+1)
M(i,j)=YOUR VALUE;
else
M(i,j)=0;
end
end
end

end

and M=Eye generate a nxn matrix with ones on its diagonal only.

Hope this helps.

leen87
 

Hi
You can use sparse matrix to assemble diagonal matrices

Hope this helps you
Rasha
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…