MathPHP\Functions\Map\Multi::add PHP Метод

add() публичный статический Метод

[x₁ + y₁, x₂ + y₂, ... ]
public static add ( variadic $arrays ) : array
$arrays variadic Two or more arrays of numbers
Результат array
    public static function add(array ...$arrays) : array
    {
        self::checkArrayLengths($arrays);
        $number_of_arrays = count($arrays);
        $length_of_arrays = count($arrays[0]);
        $sums = array_fill(0, $length_of_arrays, 0);
        for ($i = 0; $i < $length_of_arrays; $i++) {
            for ($j = 0; $j < $number_of_arrays; $j++) {
                $sums[$i] += $arrays[$j][$i];
            }
        }
        return $sums;
    }

Usage Example

Пример #1
0
 /**
  * Add (A + B)
  *
  * A = [a₁, a₂, a₃]
  * B = [b₁, b₂, b₃]
  * A + B = [a₁ + b₁, a₂ + b₂, a₃ + b₃]
  *
  * @param Vector $B
  *
  * @return Vector
  */
 public function add(Vector $B) : Vector
 {
     if ($B->getN() !== $this->n) {
         throw new Exception\VectorException('Vectors must be the same length for addition');
     }
     $R = Map\Multi::add($this->A, $B->getVector());
     return new Vector($R);
 }