org.apache.poi.ss.formula.functions

## Class Mirr

- java.lang.Object
- - org.apache.poi.ss.formula.functions.MultiOperandNumericFunction
  - - org.apache.poi.ss.formula.functions.Mirr

- All Implemented Interfaces:
    Function

      public class Mirr
      extends MultiOperandNumericFunction

  Calculates Modified internal rate of return. Syntax is MIRR(cash_flow_values, finance_rate, reinvest_rate)

  Returns the modified internal rate of return for a series of periodic cash flows. MIRR considers both the cost of the investment and the interest received on reinvestment of cash.

  Values is an array or a reference to cells that contain numbers. These numbers represent a series of payments (negative values) and income (positive values) occurring at regular periods.
  - Values must contain at least one positive value and one negative value to calculate the modified internal rate of return. Otherwise, MIRR returns the #DIV/0! error value.
  - If an array or reference argument contains text, logical values, or empty cells, those values are ignored; however, cells with the value zero are included.
  Finance_rate is the interest rate you pay on the money used in the cash flows. Reinvest_rate is the interest rate you receive on the cash flows as you reinvest them.
  Author:
    Carlos Delgado (carlos dot del dot est at gmail dot com), Cedric Walter (cedric dot walter at gmail dot com)
  See Also:
    Wikipedia on MIRR, Excel MIRR, `Irr`

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.poi.ss.formula.functions.MultiOperandNumericFunction

      `MultiOperandNumericFunction.Policy`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Mirr()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected double` | `evaluate(double[] values)`
    `protected int` | `getMaxNumOperands()` Maximum number of operands accepted by this function.

    - ### Methods inherited from class org.apache.poi.ss.formula.functions.MultiOperandNumericFunction

      `evaluate, getNumberArray, isHiddenRowCounted, isSubtotalCounted, setBlankEvalPolicy, setMissingArgPolicy`

    - ### Methods inherited from class java.lang.Object

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

- - ### Constructor Detail

    - #### Mirr

          public Mirr()

  - ### Method Detail

    - #### getMaxNumOperands

          protected int getMaxNumOperands()

      Description copied from class: `MultiOperandNumericFunction`
      Maximum number of operands accepted by this function. Subclasses may override to change default value.
      Overrides:
        `getMaxNumOperands` in class `MultiOperandNumericFunction`

    - #### evaluate

          protected double evaluate(double[] values)
                             throws EvaluationException

      Specified by:
        `evaluate` in class `MultiOperandNumericFunction`
      Throws:
        `EvaluationException`

Copyright 2020 The Apache Software Foundation or its licensors, as applicable.