PsiOutput() or PsiOutput(cell_or_name, [instance], [PsiSixSigma])

PsiOutput marks cell as an uncertain function, with a distribution of trial values.  You can either reference the cell as an argument of PsiOutput() – for example PsiOutput (B1) – or you can add PsiOutput() to the computed result – for example, if the uncertain function formula in cell B1 is =A1+A2*ABS(A3), edit this formula to read =PsiOutput()+A1+A2*ABC(A3).

PsiOutput() always returns 0, so it will not affect the value of the uncertain function.  Using PsiOutput() is optional – if you reference an uncertain function cell as the first argument of another PSI Statistics function, that cell is implicitly marked as an uncertain function.

You can use a formula such as =PsiOutput (B1:B10) to group contiguous uncertain function cells together in Analytic Solver’s VBA object model, so they appear as one Function object in the Problem’s Functions collection.  For further information, see “PsiOutput() and “Uncertain Function Objects” in the section “Using PSI Functions” earlier in this chapter.

Named Output Signature

In V2019, PsiOutput was extended to use a named output signature which may be referenced in a PsiStatistics function.  To use,

Enter an uncertain variable in a blank cell.

A1 = PsiNormal(0,1)

In a 2nd cell, pass the cell address of the uncertain variable and append "+ PsiOutput("AnyString")", then press Enter. ("AnyString" is the name given to the output from the uncertain variable.) 

A2 = A1 + PsiOutput("Test")

Enter any PsiStatistics function, i.e. PsiMean(), in a blank cell and instead of passing a cell address, pass the name given to PsiOutput.

A3 = PsiMean("Test")

Instance argument

In V2023 Q2, PsiOutput() was extended to include an additional argument, instance, to aid in the conversion of @Risk functions to Psi functions.  With this new argument, two outputs may be given identical names.  In this case, the instance argument is used to distinguish each occurrence.   For example:

= A1 + PsiOutput(“myname”, 1)

= B1 + PsiOutput(“myname”, 2)

Note:  Internally, the name and instance are concatenated to “myname1” and “myname2”. 

PsiSixSigma() argument

Analytic Solver V2023 Q2 includes the ability to convert an @Risk model to a model solvable by Analytic Solver. 

For more information on this new feature, see the section “Using the Distribution Galleries” that appears earlier in this guide.

In order to comply with @Risk functionality pertaining to Six Sigma functions, PsiOutput() was extended to accept a third argument, the new property function PsiSixSigma(). This new property can be used to supply the arguments to one or more Psi Six Sigma functions. 

Note:  This extension applies only to Psi Six Sigma functions, which are listed below.  See the section “Psi Six Sigma Functions” for signatures and definitions for all Psi Six Sigma Functions.  

Note:  This property may only be used with the following Psi Six Sigma functions:  PsiSigmaCP, PsiSigmaCPK, PsiSigmaCPKLower, PsiSigmaCPKUpper, PsiSigmaCPM, PsiSigmaDefectPPM, PsiSigmaDefectShiftPPM, PsiSigmaDefectShiftPPMLower, PsiSigmaDefectShiftPPMUpper, PsiSigmaK, PsiSigmaLowerBound, PsiSigmaProbDefectShift, PsiSigmaProbDefectShiftLower, PsiSigmaProbDefectShiftUpper, PsiSigmaSigmaLevel, PsiSigmaUpperBound, PsiSigmaYield, PsiSigmaZLower, PsiSigmaZMin and PsiSigmaZUpper.  

The expanded signature for PsiOutput() uses the PsiSixSigma property to pass arguments to any Psi Six Sigma function that references the cell containing this function. 

PsiOutput(cell_or_name, [instance], [PsiSixSigma(p1, p2, …)])

Note that in the example below, only the first two arguments to PsiSixSigma are utilized since PsiSigmaCP accepts just two arguments, lower_limit and upper_limit.