Euclidean.php 505 Bytes
Newer Older
1
2
<?php

Arkadiusz Kondas's avatar
Arkadiusz Kondas committed
3
declare(strict_types=1);
4

Arkadiusz Kondas's avatar
Arkadiusz Kondas committed
5
namespace Phpml\Math\Distance;
6

7
8
9
10
11
12
/**
 * Class Euclidean
 *
 * L^2 Metric.
 */
class Euclidean extends Distance
13
14
{
    /**
15
     * Euclidean constructor.
16
     */
17
    public function __construct()
18
    {
19
        parent::__construct(2.0);
20
    }
21
22
23

    /**
     * Square of Euclidean distance
24
25
     *
     * @throws \Phpml\Exception\InvalidArgumentException
26
     */
27
    public function sqDistance(array $a, array $b): float
28
29
30
    {
        return $this->distance($a, $b) ** 2;
    }
31
}