From: Guido Kanschat Date: Wed, 28 Apr 2010 17:59:18 +0000 (+0000) Subject: add generalized eigenvalues X-Git-Tag: v8.0.0~6171 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a131396afec060b681fb1ce210a1992e94bad154;p=dealii.git add generalized eigenvalues git-svn-id: https://svn.dealii.org/trunk@21048 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/contrib/blastemplates/lapack_templates.h.in b/deal.II/contrib/blastemplates/lapack_templates.h.in index 3e0d135160..8ddee8562c 100644 --- a/deal.II/contrib/blastemplates/lapack_templates.h.in +++ b/deal.II/contrib/blastemplates/lapack_templates.h.in @@ -70,6 +70,13 @@ void dgeevx_ (const char* balanc, const char* jobvl, const char* jobvr, void dsyev_ (const char *jobz, const char *uplo, const int *n, double *A, const int *lda, double *w, double *work, const int *lwork, int *info); +// General eigenvalues and eigenvectors of +// 1: A*x = lambda*B*x; 2: A*B*x = lambda*x; 3: B*A*x = lambda*x +// A and B are symmetric and B is definite +void dsygv_ (const int* itype, const char* jobz, const char* uplo, + const int* n, double* A, const int* lda, double* B, + const int* ldb, double* w, double* work, + const int* lwork, int* info); // Compute singular value decomposition void dgesvd_ (int* jobu, int* jobvt, const int* n, const int* m, double* A, const int* lda, diff --git a/deal.II/contrib/blastemplates/templates.pl b/deal.II/contrib/blastemplates/templates.pl index d139352f7d..e4d2c908f2 100644 --- a/deal.II/contrib/blastemplates/templates.pl +++ b/deal.II/contrib/blastemplates/templates.pl @@ -2,7 +2,7 @@ # $Id$ # Version: $Name$ # -# Copyright (C) 2005, 2006, 2007, 2008, 2009 by the deal authors +# Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 by the deal authors # # This file is subject to QPL and may not be distributed # without copyright and license information. Please refer @@ -17,8 +17,6 @@ my $double; print << 'EOT' //--------------------------------------------------------------------------- -// $Id$ -// Version: $Name$ // // This file was automatically generated from lapack_templates.h.in // See blastemplates in the deal.II contrib directory @@ -35,10 +33,9 @@ print << 'EOT' #ifndef __LAPACK_TEMPLATES_H #define __LAPACK_TEMPLATES_H +#include #include -using namespace dealii; - extern "C" { EOT @@ -103,6 +100,6 @@ while(<>) } } -print "\n}\n"; +print "\n}\n\nDEAL_II_NAMESPACE_OPEN\n"; -print "\n$templates\n\n#endif\n"; +print "$templates\n\nDEAL_II_NAMESPACE_CLOSE\n\n#endif\n";