[GRASS-QA] GRASS QA: soeren | ./grass6/lib/gpde/N_solvers.c |2 clones ( N_arrays.c N_gradient.c N_solute_transport.c N_solvers.c )| 0 monsters | 2 warnings

grass-qa at proxy.soccerlab.polymtl.ca grass-qa at proxy.soccerlab.polymtl.ca
Fri Apr 6 13:29:51 EDT 2007



Hello soeren,

here a report on your recent GRASS-CVS change:

ANALYSIS

your changes to files/functions:


lib/gpde/N_solvers.c functions


N_solver_jacobi (Begins at: 79 Ends at: 107)
--------------+---------+-------+---------+
Complexity:   |       2 |       |      OK |
ParamNBR:     |       4 |       |      OK |
CalledNBR:    |       2 |       |      OK |
LOC:          |      29 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

N_solver_SOR (Begins at: 109 Ends at: 134)
--------------+---------+-------+---------+
Complexity:   |       2 |       |      OK |
ParamNBR:     |       4 |       |      OK |
CalledNBR:    |       2 |       |      OK |
LOC:          |      26 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

N_solver_cg (Begins at: 136 Ends at: 261)
--------------+---------+-------+---------+
Complexity:   |       5 |       |      OK |
ParamNBR:     |       3 |       |      OK |
CalledNBR:    |      19 |       |      OK |
LOC:          |     126 |     * |         |
--------------+---------+-------+---------+
metrics are OK

N_solver_bicgstab (Begins at: 263 Ends at: 400)
--------------+---------+-------+---------+
Complexity:   |       6 |       |      OK |
ParamNBR:     |       3 |       |      OK |
CalledNBR:    |      31 |       |      OK |
LOC:          |     138 |     * |         |
--------------+---------+-------+---------+
metrics are OK

N_solver_gauss (Begins at: 402 Ends at: 428)
--------------+---------+-------+---------+
Complexity:   |       2 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       6 |       |      OK |
LOC:          |      27 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

N_solver_lu (Begins at: 430 Ends at: 491)
--------------+---------+-------+---------+
Complexity:   |       2 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |      11 |       |      OK |
LOC:          |      62 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

scalar_product (Begins at: 493 Ends at: 520)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       4 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      28 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

matrix_vector_product (Begins at: 522 Ends at: 551)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       3 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      30 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

sparse_matrix_vector_product (Begins at: 553 Ends at: 584)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       3 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      32 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

add_vectors_scalar2 (Begins at: 587 Ends at: 614)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       6 |     * |         |
CalledNBR:    |       0 |       |      OK |
LOC:          |      28 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

add_vectors_scalar (Begins at: 617 Ends at: 644)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       5 |     * |         |
CalledNBR:    |       0 |       |      OK |
LOC:          |      28 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

sub_vectors_scalar (Begins at: 647 Ends at: 673)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       5 |     * |         |
CalledNBR:    |       0 |       |      OK |
LOC:          |      27 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

add_vectors (Begins at: 675 Ends at: 703)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       4 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      29 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

sub_vectors (Begins at: 705 Ends at: 730)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       4 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      26 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

scalar_vector_product (Begins at: 732 Ends at: 753)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       4 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      22 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

sync_vectors (Begins at: 755 Ends at: 775)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       3 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      21 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

vectmem (Begins at: 777 Ends at: 795)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       1 |       |      OK |
CalledNBR:    |       1 |       |      OK |
LOC:          |      19 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

gauss_elimination (Begins at: 797 Ends at: 825)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       3 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      29 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

lu_decomposition (Begins at: 827 Ends at: 861)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       2 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      35 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

backward_solving (Begins at: 863 Ends at: 891)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       4 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      29 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

forward_solving (Begins at: 893 Ends at: 907)
--------------+---------+-------+---------+
Complexity:   |       1 |       |      OK |
ParamNBR:     |       4 |       |      OK |
CalledNBR:    |       0 |       |      OK |
LOC:          |      15 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

thomalg (Begins at: 913 Ends at: 944)
--------------+---------+-------+---------+
Complexity:   |       3 |       |      OK |
ParamNBR:     |       3 |       |      OK |
CalledNBR:    |       4 |       |      OK |
LOC:          |      32 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

sparse_jacobi_gauss (Begins at: 951 Ends at: 1007)
--------------+---------+-------+---------+
Complexity:   |       6 |       |      OK |
ParamNBR:     |       5 |     * |         |
CalledNBR:    |       9 |       |      OK |
LOC:          |      57 |       |      OK |
--------------+---------+-------+---------+
metrics are OK

jacobi (Begins at: 1012 Ends at: 1045)
--------------+---------+-------+---------+
Complexity:   |       2 |       |      OK |
ParamNBR:     |       7 |    ** | Warning |
CalledNBR:    |       3 |       |      OK |
LOC:          |      34 |       |      OK |
--------------+---------+-------+---------+
at least 1 values are close to an outlier please consider revising code

gauss_seidel (Begins at: 1050 Ends at: 1083)
--------------+---------+-------+---------+
Complexity:   |       2 |       |      OK |
ParamNBR:     |       7 |    ** | Warning |
CalledNBR:    |       3 |       |      OK |
LOC:          |      34 |       |      OK |
--------------+---------+-------+---------+
at least 1 values are close to an outlier please consider revising code

Clone analysis:

This file has 2 potentially cloned functions:
  gauss_seidel  jacobi

In lib/gpde/N_solvers.c clones of  jacobi are:
	lib/gpde/N_solvers.c  gauss_seidel

In lib/gpde/N_solvers.c clones of  gauss_seidel are:
	lib/gpde/N_solvers.c  jacobi


__________________________________________

Threshold GRASS6 key metrics values at 2007-04-06 are:
---------------------------+-----------+---------+
                    median | upper     | outlier |
                           | quartile  | limit   |
---------------------------+-----------+---------+
Complexity (Cyclo):      5 |        25 |      37 |
ParamNBR:                2 |         6 |       8 |
CalledNBR:              10 |        60 |      87 |
LOC:                    43 |       195 |     272 |
---------------------------+-----------+---------+

Measures (see below Web page for details):
 Complexity (Cyclo): a complexity index
 ParamNBR: number of passed parameters
 CalledNBR: number of called functions
 LOC: Lines Of Code

Message interpretation:
 OK : Nothing to say at all
 *  : above 75 % of value warning
 ** : this is getting close to be out of range, consider revising the code
 ***: this is a monster, definitely you should revise this function


__________________________________________
Brought to you by:
SOftware Cost-effective Change and Evolution Research (SOCCER) laboratory
http://web.soccerlab.polymtl.ca/grass-evolution/grass-browsers/grass-index-en.html




More information about the grass-qa mailing list