# Class Calculator

java.lang.Object
org.apache.jmeter.util.Calculator

public class Calculator extends Object
Class to calculate various items that don't require all previous results to be saved:

- mean = average
- standard deviation
- minimum
- maximum

## Constructor Summary

Constructors
Constructor
Description
`Calculator()`
`Calculator(String label)`

## Method Summary

Modifier and Type
Method
Description
`void`
`addBytes(long newValue)`
`void`
`addSample(SampleResult res)`
Add details for a sample result, which may consist of multiple samples.
`void`
`addValue(long newValue)`
Deprecated.
Use `addSample(SampleResult)` instead
`void`
`clear()`
`double`
`getAvgPageBytes()`
calculates the average page size, which means divide the bytes by number of samples.
`double`
`getBytesPerSecond()`
Throughput in bytes / second
`int`
`getCount()`
`double`
`getErrorPercentage()`
Returns the raw double value of the percentage of samples with errors that were recorded.
`double`
`getKBPerSecond()`
Throughput in kilobytes / second
`String`
`getLabel()`
`long`
`getMax()`
`double`
`getMean()`
`Number`
`getMeanAsNumber()`
`long`
`getMin()`
`double`
`getRate()`
Returns the throughput associated to this sampler in requests per second.
`double`
`getStandardDeviation()`
`long`
`getTotalBytes()`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### Calculator

public Calculator()

### Calculator

public Calculator(String label)

## Method Details

### clear

public void clear()

### addValue

@Deprecated public void addValue(long newValue)
Deprecated.
Use `addSample(SampleResult)` instead
Add the value for a single sample.

Parameters:
  `newValue` - the value for the new sample

### addBytes

public void addBytes(long newValue)

### addSample

public void addSample(SampleResult res)
Add details for a sample result, which may consist of multiple samples. Updates the number of bytes read, error count, startTime and elapsedTime

Parameters:
  `res` - the sample result; might represent multiple values

### getTotalBytes

public long getTotalBytes()

### getMean

public double getMean()

### getMeanAsNumber

public Number getMeanAsNumber()

### getStandardDeviation

public double getStandardDeviation()

### getMin

public long getMin()

### getMax

public long getMax()

### getCount

public int getCount()

### getLabel

public String getLabel()

### getErrorPercentage

public double getErrorPercentage()
Returns the raw double value of the percentage of samples with errors that were recorded. (Between 0.0 and 1.0)

Returns:
  the raw double value of the percentage of samples with errors that were recorded.

### getRate

public double getRate()
Returns the throughput associated to this sampler in requests per second. May be slightly skewed because it takes the timestamps of the first and last samples as the total time passed, and the test may actually have started before that start time and ended after that end time.

Returns:
  throughput associated to this sampler in requests per second

### getAvgPageBytes

public double getAvgPageBytes()
calculates the average page size, which means divide the bytes by number of samples.

Returns:
  average page size in bytes

### getBytesPerSecond

public double getBytesPerSecond()
Throughput in bytes / second

Returns:
  throughput in bytes/second

### getKBPerSecond

public double getKBPerSecond()
Throughput in kilobytes / second

Returns:
  Throughput in kilobytes / second