# solar-scores

  [![build status][travis-image]][travis-url]
  [![David deps][david-image]][david-url]

Compute scores for solar decathlon competition - Cali 2015

## Test

```
$ npm install
$ npm test
```

## Scores

### temperature
* `getScoreAsFraction(values, field)`: Function that calculates the score.
    * __values__: An array of objects.
    * __field__: The name of the object property.
* `addInternal(values, field)`: Function that sets another temperature value.
    * __values__: An array of objects.
    * __field__: The name of the object property.

### humidity
* `getScoreAsFraction(values, field)`: Function that calculates the score.
    * __values__: An array of objects.
    * __field__: The name of the object property.
* `addInternal(values, field)`: Function that sets another humidity value.
    * __values__: An array of objects.
    * __field__: The name of the object property.

### luminosity
* `getScoreAsFraction(values, field)`: Function that calculates the score.
    * __values__: An array of objects.
    * __field__: The name of the object property.
* `setExternal(values, field)`: Function that sets the external luminosity value.
    * __values__: An array of objects.
    * __field__: The name of the object property.

### energyConsumption
* `getScoreAsFraction(values, field)`: Function that calculates the score.
    * __values__: An array of objects.
    * __field__: The name of the object property.

### refrigeration
* `getScoreAsFraction(values, field)`: Function that calculates the score.
    * __values__: An array of objects.
    * __field__: The name of the object property.

### freezing
* `getScoreAsFraction(values, field)`: Function that calculates the score.
    * __values__: An array of objects.
    * __field__: The name of the object property.

### eglEl
* `getScoreAsFraction(values, field)`: Function that calculates the score.
    * __values__: An array of objects.
    * __field__: The name of the object property.
* `setProduction(values, field)`: Function that adds the energy production.
    * __values__: An array of objects.
    * __field__: The name of the object property.

### energyBalance
* `getScoreAsFraction(values, field)`: Function that calculates the score.
    * __values__: An array of objects.
    * __field__: The name of the object property.
* `setProduction(values, field)`: Function that adds the energy production.
    * __values__: An array of objects.
    * __field__: The name of the object property.

### powerPeaks
* `getScoreAsFraction(values, field)`: Function that calculates the score.
    * __values__: An array of objects.
    * __field__: The name of the object property.

## JSON
The resulting JSON for this scores will be have this structure

```js
{
  temperature: {
    points: 0,
    projected: 0,
    maxUntilNow: 0,
    max: 50
  },
  humidity: {
    points: 0,
    projected: 0,
    maxUntilNow: 0,
    max: 20
  },
  luminosity: {
    points: 0,
    projected: 0,
    maxUntilNow: 0,
    max: 20
  },
  energyConsumption: {
    points: 0,
    projected: 0,
    maxUntilNow: 0,
    max: 50
  },
  refrigeration: {
    points: 0,
    projected: 0,
    maxUntilNow: 0,
    max: 8
  },
  freezing: {
    points: 0,
    projected: 0,
    maxUntilNow: 0,
    max: 8
  },
  eglEl: {
    points: 0,
    projected: 0,
    maxUntilNow: 0,
    max: 50
  },
  energyBalance: {
    points: 0,
    projected: 0,
    maxUntilNow: 0,
    max: 60
  },
  powerPeaks: {
    points: 0,
    projected: 0,
    maxUntilNow: 0,
    max: 40
  }
}
```
* `score` it's the points earned.
* `over` it's the total possible amount of points to earn.
* `of` it's how was in play, for example if the score is over 50 points the first day you could win 10, the next day will be 20 and so.


## Authors
- [Daniel Kostro](https://github.com/stropitek)
- [Miguel Asencio](https://github.com/maasencioh)

## License

  [MIT](./LICENSE)

[travis-image]: https://img.shields.io/travis/Bioreactor/solar-scores/master.svg?style=flat-square
[travis-url]: https://travis-ci.org/Bioreactor/solar-scores
[david-image]: https://img.shields.io/david/Bioreactor/solar-scores.svg?style=flat-square
[david-url]: https://david-dm.org/Bioreactor/solar-scores
