From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6267 invoked by alias); 30 Mar 2006 22:22:05 -0000 Received: (qmail 6155 invoked by uid 22791); 30 Mar 2006 22:22:02 -0000 X-Spam-Check-By: sourceware.org Received: from mailwasher.lanl.gov (HELO mailwasher-b.lanl.gov) (192.65.95.54) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 30 Mar 2006 22:21:57 +0000 Received: from alvie-mail.lanl.gov (alvie-mail.lanl.gov [128.165.4.110]) by mailwasher-b.lanl.gov (8.12.11/8.12.11/(ccn-5)) with ESMTP id k2UMLsf6019911 for ; Thu, 30 Mar 2006 15:21:54 -0700 Received: from bellerophon.lanl.gov (bellerophon.lanl.gov [128.165.59.112]) by alvie-mail.lanl.gov (8.12.11/8.12.11/(ccn-5)) with ESMTP id k2UMLrtW005362; Thu, 30 Mar 2006 15:21:53 -0700 Subject: Re: gsl_linalg_exponential_ss() From: Gerard Jungman To: Tino Kluge Cc: gsl-discuss In-Reply-To: <20060330134228.GA7195@localhost> References: <20060327121954.GA28592@localhost> <1143666291.2934.92.camel@bellerophon.lanl.gov> <20060330134228.GA7195@localhost> Content-Type: text/plain Date: Thu, 30 Mar 2006 22:22:00 -0000 Message-Id: <1143757084.2934.135.camel@bellerophon.lanl.gov> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Mailing-List: contact gsl-discuss-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gsl-discuss-owner@sourceware.org X-SW-Source: 2006-q1/txt/msg00099.txt.bz2 On Thu, 2006-03-30 at 14:42 +0100, Tino Kluge wrote: > Thanks for your answer. My understanding of matrix exponentiation is > only limited but I was thinking of algorithms which (block) > diagonalise the matrix first, exponentiate the diagonal and then > transfer back. In that setting a speeding up could be achieved by > storing the diagonal and the basis transformation. If you have a matrix that can be factored or blocked in some useful way, then that can help. But we left it up to end users to figure that out for themselves and exponentiate accordingly. The GSL function handles any type of matrix. > After a quick look into your code it seems that the algorithm does > something more sophisticated. Yes, general matrix exponentiation is not an easy problem. The paper quoted in the code, Moler + Van Loan, SIAM Rev. 20, 801 (1978), is a good place to look if you are interested in this problem. There are a bunch of other papers out there, including a famous review paper (something like "Nineteen Ways to Calculate the Matrix Exponential"), for which I don't have a reference handy. -- Gerard Jungman Los Alamos National Laboratory