Main Page | Modules | Class List | File List | Class Members | File Members

linalg_defs.h

Go to the documentation of this file.
00001 
00014 /* This library is free software; you can redistribute it and/or
00015    modify it under the terms of the GNU Lesser General Public
00016    License as published by the Free Software Foundation; either
00017    version 2.1 of the License, or (at your option) any later version.
00018 
00019    This library is distributed in the hope that it will be useful,
00020    but WITHOUT ANY WARRANTY; without even the implied warranty of
00021    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00022    Lesser General Public License for more details.
00023 
00024    You should have received a copy of the GNU Lesser General Public
00025    License along with this library; if not, write to the Free Software
00026    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00027 */
00028 
00029 #ifndef _GAN_LINALG_DEFS_H
00030 #define _GAN_LINALG_DEFS_H
00031 
00032 #ifdef __cplusplus
00033 extern "C" {
00034 #endif
00035 
00051 /* start other groups */
00052 
00233 /* definitions used by linear algebra package */
00234 
00236 typedef enum
00237 {
00239    GAN_NOTRANSPOSE=0,
00240 
00242    GAN_TRANSPOSE=1
00243 }
00244 Gan_TposeFlag;
00245 
00247 typedef enum
00248 {
00250    GAN_NOINVERT=0,
00251 
00253    GAN_INVERT=1
00254 } Gan_InvertFlag;
00255 
00257 typedef enum
00258 {
00260    GAN_MATRIXPART_LOWER,
00261 
00263    GAN_MATRIXPART_UPPER,
00264 
00266    GAN_MATRIXPART_WHOLE
00267 } Gan_LapackUpLoFlag;
00268 
00270 typedef enum
00271 {
00273     GAN_MATSTORAGE_FULL,
00274 
00276     GAN_MATSTORAGE_LOWERTRIANGULAR,
00277 
00279     GAN_MATSTORAGE_UPPERTRIANGULAR,
00280 
00282     GAN_MATSTORAGE_UPPERHESSENBERG,
00283 
00285     GAN_MATSTORAGE_SYMMBANDLOWER,
00286 
00288     GAN_MATSTORAGE_SYMMBANDUPPER,
00289 
00291     GAN_MATSTORAGE_BAND
00292 } Gan_LapackMatStorage;
00293 
00295 typedef enum
00296 {
00298    GAN_NOUNIT=0,
00299 
00301    GAN_UNIT=1
00302 } Gan_LapackUnitFlag;
00303 
00305 typedef enum Gan_LapackLamchFlag
00306 {
00308     GAN_LAMCH_EPS,
00309 
00311     GAN_LAMCH_SFMIN,
00312 
00314     GAN_LAMCH_BASE,
00315 
00317     GAN_LAMCH_PREC,
00318 
00320     GAN_LAMCH_T,
00321 
00323     GAN_LAMCH_RND,
00324 
00326     GAN_LAMCH_EMIN,
00327 
00329     GAN_LAMCH_RMIN,
00330 
00332     GAN_LAMCH_EMAX,
00333 
00335     GAN_LAMCH_RMAX
00336 } Gan_LapackLamchFlag;
00337 
00339 typedef enum Gan_LapackNormType
00340 {
00342     GAN_NORMTYPE_MAXABSVAL,
00343 
00345     GAN_NORMTYPE_ONE,
00346 
00348     GAN_NORMTYPE_INFINITY,
00349 
00351     GAN_NORMTYPE_FROBENIUS
00352 } Gan_LapackNormType;
00353 
00355 typedef enum Gan_LapackPlaneRotationType
00356 {
00357     GAN_PLANEROTATION_LEFT,
00358     GAN_PLANEROTATION_RIGHT
00359 } Gan_LapackPlaneRotationType;
00360 
00362 typedef enum Gan_LapackPlaneRotationDirection
00363 {
00364     GAN_PLANEROTATIONDIRECTION_FORWARDS,
00365     GAN_PLANEROTATIONDIRECTION_BACKWARDS
00366 } Gan_LapackPlaneRotationDirection;
00367 
00369 typedef enum Gan_LapackPivotType
00370 {
00371     GAN_PIVOTTYPE_VARIABLE,
00372     GAN_PIVOTTYPE_TOP,
00373     GAN_PIVOTTYPE_BOTTOM
00374 } Gan_LapackPivotType;
00375 
00377 typedef enum Gan_LapackSortOrder
00378 {
00379     GAN_SORTORDER_INCREASING,
00380     GAN_SORTORDER_DECREASING
00381 } Gan_LapackSortOrder;
00382 
00384 typedef enum Gan_LapackEvecType
00385 {
00387     GAN_EVECTYPE_EVALSONLY,
00388 
00390     GAN_EVECTYPE_EVECSORIGINAL,
00391 
00393     GAN_EVECTYPE_EVECSTRIDIAGONAL
00394 } Gan_LapackEvecType;
00395 
00397 typedef enum
00398 {
00400    GAN_LEFTMULT=0,
00401 
00403    GAN_RIGHTMULT=1
00404 } Gan_LapackSideFlag;
00405 
00407 typedef enum
00408 {
00410    GAN_SYMMETRIC_MATRIX,
00411 
00413    GAN_DIAGONAL_MATRIX,
00414 
00416    GAN_SCALED_IDENT_MATRIX,
00417 
00419    GAN_LOWER_TRI_MATRIX,
00420 
00422    GAN_UPPER_TRI_MATRIX,
00423 
00425    GAN_ZERO_SQUARE_MATRIX
00426 } Gan_SquMatrixType;
00427 
00440 #ifdef __cplusplus
00441 }
00442 #endif
00443 
00444 #endif /* #ifndef _GAN_LINALG_DEFS_H */
00445 

Generated on Fri Mar 17 12:44:47 2006 by  doxygen 1.3.9.1