/**
  * @param array $options Options that override defaults on [[Yii::createObject()]]
  * @throws \yii\base\InvalidConfigException
  * @return Calculation
  */
 public function getCalculationModel($options = [])
 {
     if (!$this->_calculationModel instanceof Calculation) {
         $config = ['position' => $this];
         if (is_string($this->_calculationModel)) {
             $config['class'] = $this->_calculationModel;
         }
         $this->_calculationModel = Yii::createObject(array_merge($config, $options));
     } else {
         $this->_calculationModel->synchronize();
     }
     return $this->_calculationModel;
 }
 /**
  * @param $rows
  * @return \hipanel\modules\finance\models\Calculation[]
  */
 private function createCalculations($rows)
 {
     $query = Calculation::find()->joinWith(['value'])->indexBy('calculation_id');
     $query->prepare();
     return $query->populate($rows);
 }