<< Dominate | index | Effective >>

DECIDE reference

DECIDE__DecisionMatrixFlows

short DECIDE_DecisionMatrixFlows(

    * double * OutputMatrix,
    * const long * OutputMatrixSize,
    * const double * DecisionMatrix,
    * const double * WeightsMatrix,
    * const short * RowsCount,
    * const short * ColumnsCount,
    * const short * Mode)

Compute the "flows" matrix of DecisionMatrix using a variety of algorithms :

    * mode 1 : Binary relation matrix for Condorcet
    * mode 2 : Binary relation antisymetric matrix for Condorcet
    * mode 111 : Concordance matrix for Electre I
    * mode 112 : Discordance matrix for Electre I
    * mode 113 : Concordance matrix for Electre II
    * mode 114 : "equality" matrix for Electre II
    * mode 115 : Discordance matrix for Electre II
    * mode 210 : Promethee preference indices
    * mode 211 : Promethee outgoing, incoming and netto flows ; Promethee III standard deviation by action
    * mode 212 : Promethee I comparability matrix
    * mode 213 : Promethee unicriteria flows
    * mode 250 : GAIA : fill inter-processes memory area for SpatialGAIA
    * mode 2501 : GAIA intermediate value : unicriteria flows (same as 213)
    * mode 2510 : GAIA intermediate value : product of the Promethee criteria flows matrix by its transposed (output is a square matrix criteria * criteria)
    * mode 2511 : GAIA intermediate value : same as 2510, but internaly converted from double to float for jacobi (output is a square matrix criteria * criteria)
    * mode 2512 : GAIA intermediate value : the "a" (input) matrix after it processed by jacobi (output is a square matrix criteria * criteria)
    * mode 2513 : GAIA criteria coordinates : the "v" matrix of eigen vectors returned by jacobi, sorted in descending order of eigen values (output is a square matrix criteria * criteria)
    * mode 2514 : GAIA intermediate value : the "d" vector of eigen values, sorted in descending order of eigen values, "nrot" (jacobi rotations) returned by jacobi, and delta
    * mode 2515 : GAIA intermediate value : the "v" matrix of eigen vectors returned by jacobi, normed (same as 2513, as jacobi output is already normed - output is a square matrix criteria * criteria)
    * mode 2516 : GAIA intermediate value : actions coordinates

Note : For the calculations related to Electre (modes 111, 112, 113, 114, 115), the decision matrix and the weights matrix must be normalized (see DECIDE_Normalize).

return value :

    * 0 : completed successfully
    * 1 : null pointer in first parameter
    * 2 : null pointer in second parameter
    * 3 : null pointer in third parameter
    * 4 : null pointer in fourth parameter
    * 5 : null pointer in fifth parameter
    * 6 : null pointer in sixth parameter
    * 7 : null pointer in seventh parameter
    * 101 : *RowsCount < 1
    * 102 : *ColumnsCount < 1
    * 103 : *OutputMatrixSize too small
    * 104 : invalid Mode
    * 105 : decision matrix contains unacceptable data (needs to be normalized ?)
    * 106 : weights matrix contains unacceptable data for a Promethee min/max parameter
    * 107 : weights matrix contains unacceptable data for a Promethee criterion type
    * 108 : weights matrix contains unacceptable data for Electre (needs to be normalized ?)
    * 900 : malloc() failed
    * 901 : internal call to DECIDE_IsMatrixDataInRange failed
    * 911 : internal call to DECIDE_PrometheePreferenceLevelType1 failed
    * 912 : internal call to DECIDE_PrometheePreferenceLevelType2 failed
    * 913 : internal call to DECIDE_PrometheePreferenceLevelType3 failed
    * 914 : internal call to DECIDE_PrometheePreferenceLevelType4 failed
    * 915 : internal call to DECIDE_PrometheePreferenceLevelType5 failed
    * 916 : internal call to DECIDE_PrometheePreferenceLevelType6 failed
    * 917 : internal call to DECIDE_Rank failed
    * 920 : internal recursive call to DECIDE_DecisionMatrixFlows failed

<< Dominate | index | Effective >>


printer friendly view

Google

 

Web

www.christophedavid.org