PLASMA 2.3.1

/home/mathieu/ICL/Plasma/svn/trunk/tools/plasma_2.4.0/include/plasmaf.h

00001 ***
00002 *
00003 * @file plasmaf.h
00004 *
00005 *  PLASMA FORTRAN header
00006 *  PLASMA is a software package provided by Univ. of Tennessee,
00007 *  Univ. of California Berkeley and Univ. of Colorado Denver
00008 *
00009 * @version 2.4.0
00010 * @author Bilel Hadri
00011 * @author Mathieu Faverge
00012 * @date 2010-11-15
00013 *
00014 ***
00015 
00016 *********************************************************************
00017 *   PLASMA constants - precisions
00018 *
00019       integer  PlasmaByte, PlasmaInteger, PlasmaRealFloat
00020       integer  PlasmaRealDouble, PlasmaComplexFloat, PlasmaComplexDouble
00021       parameter ( PlasmaByte          = 0 )
00022       parameter ( PlasmaInteger       = 1 )
00023       parameter ( PlasmaRealFloat     = 2 )
00024       parameter ( PlasmaRealDouble    = 3 )
00025       parameter ( PlasmaComplexFloat  = 4 )
00026       parameter ( PlasmaComplexDouble = 5 )
00027 
00028 *********************************************************************
00029 *   PLASMA constants - CBLAS & LAPACK
00030 *
00031       integer PlasmaCM, PlasmaRM, PlasmaCCRB
00032       integer PlasmaCRRB, PlasmaRCRB, PlasmaRRRB
00033       parameter ( PlasmaCM         = 101 )
00034       parameter ( PlasmaRM         = 102 )
00035       parameter ( PlasmaCCRB       = 103 )
00036       parameter ( PlasmaCRRB       = 104 )
00037       parameter ( PlasmaRCRB       = 105 )
00038       parameter ( PlasmaRRRB       = 106 )
00039 
00040       integer  PlasmaNoTrans, PlasmaTrans, PlasmaConjTrans
00041       parameter ( PlasmaNoTrans    = 111 )
00042       parameter ( PlasmaTrans      = 112 )
00043       parameter ( PlasmaConjTrans  = 113 )
00044 
00045       integer PlasmaUpper, PlasmaLower
00046       integer PlasmaUpperLower
00047       parameter ( PlasmaUpper      = 121 )
00048       parameter ( PlasmaLower      = 122 )
00049       parameter ( PlasmaUpperLower = 123 )
00050 
00051       integer PlasmaNonUnit,PlasmaUnit
00052       parameter ( PlasmaNonUnit    = 131 )
00053       parameter ( PlasmaUnit       = 132 )
00054 
00055       integer PlasmaLeft,PlasmaRight
00056       parameter ( PlasmaLeft       = 141 )
00057       parameter ( PlasmaRight      = 142 )
00058 
00059       integer PlasmaOneNorm, PlasmaRealOneNorm
00060       integer PlasmaTwoNorm, PlasmaFrobeniusNorm
00061       integer PlasmaInfNorm, PlasmaRealInfNorm
00062       integer PlasmaMaxNorm, PlasmaRealMaxNorm
00063       parameter ( PlasmaOneNorm       = 171 )
00064       parameter ( PlasmaRealOneNorm   = 172 )
00065       parameter ( PlasmaTwoNorm       = 173 )
00066       parameter ( PlasmaFrobeniusNorm = 174 )
00067       parameter ( PlasmaInfNorm       = 175 )
00068       parameter ( PlasmaRealInfNorm   = 176 )
00069       parameter ( PlasmaMaxNorm       = 177 )
00070       parameter ( PlasmaRealMaxNorm   = 178 )
00071 
00072       integer PlasmaDistUniform
00073       integer PlasmaDistSymmetric
00074       integer PlasmaDistNormal
00075       parameter ( PlasmaDistUniform   = 201 )
00076       parameter ( PlasmaDistSymmetric = 202 )
00077       parameter ( PlasmaDistNormal    = 203 )
00078 
00079       integer PlasmaHermGeev
00080       integer PlasmaHermPoev
00081       integer PlasmaNonsymPosv
00082       integer PlasmaSymPosv
00083       parameter ( PlasmaHermGeev    = 241 )
00084       parameter ( PlasmaHermPoev    = 242 )
00085       parameter ( PlasmaNonsymPosv  = 243 )
00086       parameter ( PlasmaSymPosv     = 244 )
00087 
00088       integer PlasmaNoPacking     
00089       integer PlasmaPackSubdiag   
00090       integer PlasmaPackSupdiag   
00091       integer PlasmaPackColumn    
00092       integer PlasmaPackLowerBand 
00093       integer PlasmaPackRow       
00094       integer PlasmaPackUpeprBand 
00095       integer PlasmaPackAll       
00096       parameter ( PlasmaNoPacking     = 291 )
00097       parameter ( PlasmaPackSubdiag   = 292 )
00098       parameter ( PlasmaPackSupdiag   = 293 )
00099       parameter ( PlasmaPackColumn    = 294 )
00100       parameter ( PlasmaPackRow       = 295 )
00101       parameter ( PlasmaPackLowerBand = 296 )
00102       parameter ( PlasmaPackUpeprBand = 297 )
00103       parameter ( PlasmaPackAll       = 298 )
00104 
00105       integer PlasmaNoVec,PlasmaVec
00106       parameter ( PlasmaNoVec = 301 )
00107       parameter ( PlasmaVec   = 302 )
00108 
00109       integer PlasmaForward, PlasmaBackward
00110       parameter ( PlasmaForward    = 391 )
00111       parameter ( PlasmaBackward   = 392 )
00112 
00113       integer PlasmaColumnwise,PlasmaRowwise
00114       parameter ( PlasmaColumnwise = 401 )
00115       parameter ( PlasmaRowwise    = 402 )
00116 
00117 *********************************************************************
00118 *   PLASMA constants - boolean
00119 *
00120       integer PLASMA_FALSE, PLASMA_TRUE
00121       parameter ( PLASMA_FALSE = 0 )
00122       parameter ( PLASMA_TRUE  = 1 )
00123 
00124 *********************************************************************
00125 *   State machine switches
00126 *
00127       integer PLASMA_WARNINGS, PLASMA_ERRORS, PLASMA_AUTOTUNING
00128       parameter ( PLASMA_WARNINGS   = 1 )
00129       parameter ( PLASMA_ERRORS     = 2 )
00130       parameter ( PLASMA_AUTOTUNING = 3 )
00131 
00132 *********************************************************************
00133 *   PLASMA constants - configuration  parameters
00134 *
00135       integer PLASMA_CONCURRENCY, PLASMA_TILE_SIZE
00136       integer PLASMA_INNER_BLOCK_SIZE, PLASMA_SCHEDULING_MODE
00137       integer PLASMA_HOUSEHOLDER_MODE, PLASMA_HOUSEHOLDER_SIZE
00138       integer PLASMA_TRANSLATION_MODE
00139       parameter ( PLASMA_CONCURRENCY      = 1 )
00140       parameter ( PLASMA_TILE_SIZE        = 2 )
00141       parameter ( PLASMA_INNER_BLOCK_SIZE = 3 )
00142       parameter ( PLASMA_SCHEDULING_MODE  = 4 )
00143       parameter ( PLASMA_HOUSEHOLDER_MODE = 5 )
00144       parameter ( PLASMA_HOUSEHOLDER_SIZE = 6 )
00145       parameter ( PLASMA_TRANSLATION_MODE = 7 )
00146 
00147 *********************************************************************
00148 *   PLASMA constants - scheduling mode
00149 *
00150       integer PLASMA_STATIC_SCHEDULING, PLASMA_DYNAMIC_SCHEDULING
00151       parameter ( PLASMA_STATIC_SCHEDULING   = 1 )
00152       parameter ( PLASMA_DYNAMIC_SCHEDULING  = 2 )
00153 
00154 *********************************************************************
00155 *   PLASMA constants - householder mode
00156 *
00157       integer PLASMA_FLAT_HOUSEHOLDER, PLASMA_TREE_HOUSEHOLDER
00158       parameter ( PLASMA_FLAT_HOUSEHOLDER  = 1 )
00159       parameter ( PLASMA_TREE_HOUSEHOLDER  = 2 )
00160 
00161 **********************************************************************
00162 *   PLASMA constants - translation mode
00163 *
00164       integer PLASMA_INPLACE, PLASMA_OUTOFPLACE
00165       parameter ( PLASMA_INPLACE     = 1 )
00166       parameter ( PLASMA_OUTOFPLACE  = 2 )
00167 
00168 *********************************************************************
00169 *   PLASMA constants - success & error codes
00170 *
00171       integer PLASMA_SUCCESS, PLASMA_ERR_NOT_INITIALIZED
00172       integer PLASMA_ERR_REINITIALIZED, PLASMA_ERR_NOT_SUPPORTED
00173       integer PLASMA_ERR_ILLEGAL_VALUE, PLASMA_ERR_NOT_FOUND
00174       integer PLASMA_ERR_OUT_OF_MEMORY, PLASMA_ERR_INTERNAL_LIMIT
00175       integer PLASMA_ERR_UNALLOCATED, PLASMA_ERR_FILESYSTEM
00176       integer PLASMA_ERR_UNEXPECTED, PLASMA_ERR_SEQUENCE_FLUSHED
00177       parameter ( PLASMA_SUCCESS             =    0 )
00178       parameter ( PLASMA_ERR_NOT_INITIALIZED = -101 )
00179       parameter ( PLASMA_ERR_REINITIALIZED   = -102 )
00180       parameter ( PLASMA_ERR_NOT_SUPPORTED   = -103 )
00181       parameter ( PLASMA_ERR_ILLEGAL_VALUE   = -104 )
00182       parameter ( PLASMA_ERR_NOT_FOUND       = -105 )
00183       parameter ( PLASMA_ERR_OUT_OF_MEMORY   = -106 )
00184       parameter ( PLASMA_ERR_INTERNAL_LIMIT  = -107 )
00185       parameter ( PLASMA_ERR_UNALLOCATED     = -108 )
00186       parameter ( PLASMA_ERR_FILESYSTEM      = -109 )
00187       parameter ( PLASMA_ERR_UNEXPECTED      = -110 )
00188       parameter ( PLASMA_ERR_SEQUENCE_FLUSHED= -111 )
 All Data Structures