public function calculate(FormulasInterface $formula): Calculator
    {
        $formula
            ->using($this->dataSet)
            ->knowing($this->results)
            ->calculate();

        $this->results->save($formula);

        return $this;
    }
public function calculate(FormulasInterface $formula): Calculator
    {
        $formula
            ->using($this->dataSet)
            ->knowing($this->results)
            ->calculate();

        $this->results->save($formula);

        return $this;
    }
public function calculate ( FormulasInterface $ formula ) : Calculator { $ formula -> using ( $ this -> dataSet ) -> knowing ( $ this -> results ) -> calculate ( ) ; $ this -> results -> save ( $ formula ) ; return $ this ; }
Starts a new calculus using the formula sent.
It resets the calculus by emptying the history of calls

@param FormulasInterface $formula
@return Calculator
Starts a new calculus using the formula sent . It resets the calculus by emptying the history of calls