🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: sci.math.num-analysis
2 messages
2 total messages Started by Nicolas Ratier Tue, 07 Apr 1992 15:30
Determinant
#250
Author: Nicolas Ratier
Date: Tue, 07 Apr 1992 15:30
46 lines
1976 bytes
   I have to compute the determinant of a block pentadiagonal matrix, exactly
 a matrix look like :

              / A  B  C                 \
             |  B  A  B  C               |
             |  C  B  A  B  C            |
             |     C  B  A  B  C         |
             |        -------------      |
             |           -------------   |
             |           C  B  A  B  C   |
             |              C  B  A  B   |
              \                C  B  A  /

where    A is a pentadiagonal matrix
         B is a   tridiagonal matrix
         C is a      diagonal matrix

and besides A, B, C are commuting pairwise (i.e. AB = BA, AC = CA, BC = CB)


   In fact, it is easy to find a efficient method to compute the determinant
of the pentadiagonal matrix by Gauss elimination way. What i need is a formula
for computing the determinant of a block pentadiagonal matrix from the
determinant of each (commuting) element.


   Do you have an idea how to solve this problem ?


                Thank you for responding, (please email me)

                        Nicolas RATIER


   -------------------------------------
   |       L.A.A.S.   (France)         |
   |                                   |
   |                                   |
   | Nicolas RATIER                    |
   |                                   |
   | email : ratier@laas.laas.fr       |
   | Tel   : (33) 61 33 62 46          |
   | Fax   : (33) 61 33 62 08          |
   | Telex : LAASTSE 520930F           |
   -------------------------------------
Re: Determinant
#253
Author: Peter Montgomery
Date: Wed, 08 Apr 1992 02:10
90 lines
3878 bytes
In article <7286@laas.laas.fr> ratier@lio.laas.fr (Nicolas Ratier) writes:
>
>   I have to compute the determinant of a block pentadiagonal matrix, exactly
> a matrix look like :
>
>              / A  B  C                 \
>             |  B  A  B  C               |
>             |  C  B  A  B  C            |
>             |     C  B  A  B  C         |
>             |        -------------      |
>             |           -------------   |
>             |           C  B  A  B  C   |
>             |              C  B  A  B   |
>              \                C  B  A  /
>
>where    A is a pentadiagonal matrix
>         B is a   tridiagonal matrix
>         C is a      diagonal matrix
>
>and besides A, B, C are commuting pairwise (i.e. AB = BA, AC = CA, BC = CB)
>
>
>   In fact, it is easy to find a efficient method to compute the determinant
>of the pentadiagonal matrix by Gauss elimination way. What i need is a formula
>for computing the determinant of a block pentadiagonal matrix from the
>determinant of each (commuting) element.
>
#	The problem cannot be solved as proposed.  In this example, 
#	A and B are 3 x 3 diagonal matrices (which necessarily
# 	commute) and C = 0.  The determinant expression is not
#	a function of det(A) = a1*a2*a3 and det(B) = b1*b2*b3 alone.

with(linalg):
M := array(1..9, 1..9);
for i from 1 to 9 do
    for j from 1 to 9 do
        dif := abs(i-j);
	isub := 1 + ((i-1) mod 3);
        if (dif = 0) then
	    M[i,j] := a.isub;
	elif (dif = 3) then
            M[i,j] := b.isub;
        else
            M[i,j] := 0;
        fi; 
        
    od;
od;
print(M);
print(factor(det(M)));
;quit;


    |\^/|      MAPLE V
._|\|   |/|_.  Copyright (c) 1981-1990 by the University of Waterloo.
 \  MAPLE  /   All rights reserved.  MAPLE is a registered trademark of
 <____ ____>   Waterloo Maple Software.
      |        Type ? for help.

	(source listing deleted)

> print(M);
                     [ a1   0   0  b1   0   0   0   0   0 ]
                     [                                    ]
                     [  0  a2   0   0  b2   0   0   0   0 ]
                     [                                    ]
                     [  0   0  a3   0   0  b3   0   0   0 ]
                     [                                    ]
                     [ b1   0   0  a1   0   0  b1   0   0 ]
                     [                                    ]
                     [  0  b2   0   0  a2   0   0  b2   0 ]
                     [                                    ]
                     [  0   0  b3   0   0  a3   0   0  b3 ]
                     [                                    ]
                     [  0   0   0  b1   0   0  a1   0   0 ]
                     [                                    ]
                     [  0   0   0   0  b2   0   0  a2   0 ]
                     [                                    ]
                     [  0   0   0   0   0  b3   0   0  a3 ]

> print(factor(det(M)));
                           2       2     2       2     2       2
               a3 a2 a1 (a3  - 2 b3 ) (a2  - 2 b2 ) (a1  - 2 b1 )

> ;quit;
--
        Peter L. Montgomery              Internet: pmontgom@math.ucla.edu
        Department of Mathematics, UCLA, Los Angeles, CA  90024-1555  USA
Go Bruins!  This Bruin PhD wants to go solve your problems.
Interests include computational mathematics, compilers, and number theory.
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads