def +(matrix)
    result = @v
    if have_the_same_dimensions matrix
      @lines.times do |x|
        @columns.times do |y|
          result[x][y] += matrix.v[x][y]
        end
      end
    elsif matrix.is_a?Numeric
      @lines.times do |x|
        @columns.times do |y|
          result[x][y] += matrix
        end
      end
    else
      Error.call "Matrix::+ : Impossible de calculer cela", Error::ERR_HIGH
    end
    Matrix.new result
  end
def +(matrix)
    result = @v
    if have_the_same_dimensions matrix
      @lines.times do |x|
        @columns.times do |y|
          result[x][y] += matrix.v[x][y]
        end
      end
    elsif matrix.is_a?Numeric
      @lines.times do |x|
        @columns.times do |y|
          result[x][y] += matrix
        end
      end
    else
      Error.call "Matrix::+ : Impossible de calculer cela", Error::ERR_HIGH
    end
    Matrix.new result
  end
== Parameters:
 matrix::
   This argument is a Matrix or an Integer. If it's a Matrix, it must have the same dimensions than the current Matrix.
   Else, if it's a integer, it will be added to each coeficients of the current Matrix.

 == Returns:
 Matrix