Is estimateNewCamera MatrixForUndistortRectify deterministic?

The question is extremely easy… I do not see much about this function in docs. Is estimateNewCameraMatrixForUndistortRectify (from fisheye) deterministic and so guarantees same output always for the given input? Not sure how camera estimation is performed in this case.