2010-11-11 Jakub Jelinek <jakub@redhat.com>
[official-gcc.git] / gcc / ada / s-gerela.ads
blobc09ce81d027d1844ddad79a6e2eafb6781790745
1 ------------------------------------------------------------------------------
2 -- --
3 -- GNAT RUN-TIME COMPONENTS --
4 -- --
5 -- S Y S T E M . G E N E R I C _ R E A L _ L A P A C K --
6 -- --
7 -- S p e c --
8 -- --
9 -- Copyright (C) 2006-2009, Free Software Foundation, Inc. --
10 -- --
11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. --
17 -- --
18 -- As a special exception under Section 7 of GPL version 3, you are granted --
19 -- additional permissions described in the GCC Runtime Library Exception, --
20 -- version 3.1, as published by the Free Software Foundation. --
21 -- --
22 -- You should have received a copy of the GNU General Public License and --
23 -- a copy of the GCC Runtime Library Exception along with this program; --
24 -- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
25 -- <http://www.gnu.org/licenses/>. --
26 -- --
27 -- GNAT was originally developed by the GNAT team at New York University. --
28 -- Extensive contributions were provided by Ada Core Technologies Inc. --
29 -- --
30 ------------------------------------------------------------------------------
32 -- Package comment required ???
34 generic
35 type Real is digits <>;
36 type Real_Vector is array (Integer range <>) of Real;
37 type Real_Matrix is array (Integer range <>, Integer range <>) of Real;
38 package System.Generic_Real_LAPACK is
39 pragma Pure;
41 type Integer_Vector is array (Integer range <>) of Integer;
43 Upper : aliased constant Character := 'U';
44 Lower : aliased constant Character := 'L';
46 -- LAPACK Computational Routines
48 -- gerfs Refines the solution of a system of linear equations with
49 -- a general matrix and estimates its error
50 -- getrf Computes LU factorization of a general m-by-n matrix
51 -- getri Computes inverse of an LU-factored general matrix
52 -- square matrix, with multiple right-hand sides
53 -- getrs Solves a system of linear equations with an LU-factored
54 -- square matrix, with multiple right-hand sides
55 -- orgtr Generates the Float orthogonal matrix Q determined by sytrd
56 -- steqr Computes all eigenvalues and eigenvectors of a symmetric or
57 -- Hermitian matrix reduced to tridiagonal form (QR algorithm)
58 -- sterf Computes all eigenvalues of a Float symmetric
59 -- tridiagonal matrix using QR algorithm
60 -- sytrd Reduces a Float symmetric matrix to tridiagonal form
62 procedure getrf
63 (M : Natural;
64 N : Natural;
65 A : in out Real_Matrix;
66 Ld_A : Positive;
67 I_Piv : out Integer_Vector;
68 Info : access Integer);
70 procedure getri
71 (N : Natural;
72 A : in out Real_Matrix;
73 Ld_A : Positive;
74 I_Piv : Integer_Vector;
75 Work : in out Real_Vector;
76 L_Work : Integer;
77 Info : access Integer);
79 procedure getrs
80 (Trans : access constant Character;
81 N : Natural;
82 N_Rhs : Natural;
83 A : Real_Matrix;
84 Ld_A : Positive;
85 I_Piv : Integer_Vector;
86 B : in out Real_Matrix;
87 Ld_B : Positive;
88 Info : access Integer);
90 procedure orgtr
91 (Uplo : access constant Character;
92 N : Natural;
93 A : in out Real_Matrix;
94 Ld_A : Positive;
95 Tau : Real_Vector;
96 Work : out Real_Vector;
97 L_Work : Integer;
98 Info : access Integer);
100 procedure sterf
101 (N : Natural;
102 D : in out Real_Vector;
103 E : in out Real_Vector;
104 Info : access Integer);
106 procedure steqr
107 (Comp_Z : access constant Character;
108 N : Natural;
109 D : in out Real_Vector;
110 E : in out Real_Vector;
111 Z : in out Real_Matrix;
112 Ld_Z : Positive;
113 Work : out Real_Vector;
114 Info : access Integer);
116 procedure sytrd
117 (Uplo : access constant Character;
118 N : Natural;
119 A : in out Real_Matrix;
120 Ld_A : Positive;
121 D : out Real_Vector;
122 E : out Real_Vector;
123 Tau : out Real_Vector;
124 Work : out Real_Vector;
125 L_Work : Integer;
126 Info : access Integer);
128 end System.Generic_Real_LAPACK;