    001    /*
    002     * Licensed to the Apache Software Foundation (ASF) under one or more
    003     * contributor license agreements.  See the NOTICE file distributed with
    004     * this work for additional information regarding copyright ownership.
    005     * The ASF licenses this file to You under the Apache License, Version 2.0
    006     * (the "License"); you may not use this file except in compliance with
    007     * the License.  You may obtain a copy of the License at
    008     *
    009     *      http://www.apache.org/licenses/LICENSE-2.0
    010     *
    011     * Unless required by applicable law or agreed to in writing, software
    012     * distributed under the License is distributed on an "AS IS" BASIS,
    013     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    014     * See the License for the specific language governing permissions and
    015     * limitations under the License.
    016     */
    017    package org.apache.commons.math.stat.descriptive;
    018
    019    /**
    020     *  Reporting interface for basic univariate statistics.
    021     *
    022      * @version $Revision: 811786 $ $Date: 2009-09-06 11:36:08 +0200 (dim. 06 sept. 2009) $
    023     */
    024    public interface StatisticalSummary {
    025
    026        /**
    027         * Returns the <a href="http://www.xycoon.com/arithmetic_mean.htm">
    028         * arithmetic mean </a> of the available values
    029         * @return The mean or Double.NaN if no values have been added.
    030         */
    031        double getMean();
    032        /**
    033         * Returns the variance of the available values.
    034         * @return The variance, Double.NaN if no values have been added
    035         * or 0.0 for a single value set.
    036         */
    037        double getVariance();
    038        /**
    039         * Returns the standard deviation of the available values.
    040         * @return The standard deviation, Double.NaN if no values have been added
    041         * or 0.0 for a single value set.
    042         */
    043        double getStandardDeviation();
    044        /**
    045         * Returns the maximum of the available values
    046         * @return The max or Double.NaN if no values have been added.
    047         */
    048        double getMax();
    049        /**
    050        * Returns the minimum of the available values
    051        * @return The min or Double.NaN if no values have been added.
    052        */
    053        double getMin();
    054        /**
    055         * Returns the number of available values
    056         * @return The number of available values
    057         */
    058        long getN();
    059        /**
    060         * Returns the sum of the values that have been added to Univariate.
    061         * @return The sum or Double.NaN if no values have been added
    062         */
    063        double getSum();
    064
    065    }