public static Tuple <double, double, double[]> GetQuality
                    (string pathbase
                    , Universe univ
                    , Universe univ_scrn
                    , string hesstype
                    , double GetHessCoarseResiIter_thres_zeroblk
                    )
                {
                    Universe             luniv;
                    Func <Hess.HessInfo> GetHessInfo;

                    switch (hesstype)
                    {
                    case "NMA": luniv = univ;      GetHessInfo = delegate() { return(Hess.GetHessNMA(luniv, luniv.GetCoords(), tempbase, 16)); }; break;

                    case "scrnNMA": luniv = univ_scrn; GetHessInfo = delegate() { return(Hess.GetHessNMA(luniv, luniv.GetCoords(), tempbase, 16, "CUTOFF 9", "TAPER")); }; break;

                    case "sbNMA": luniv = univ;      GetHessInfo = delegate() { return(Hess.GetHessSbNMA(luniv, luniv.GetCoords(), double.PositiveInfinity)); }; break;

                    case "ssNMA": luniv = univ;      GetHessInfo = delegate() { return(Hess.GetHessSsNMA(luniv, luniv.GetCoords(), double.PositiveInfinity)); }; break;

                    case "eANM": luniv = univ;      GetHessInfo = delegate() { return(Hess.GetHessEAnm(luniv, luniv.GetCoords())); }; break;

                    case "AA-ANM": luniv = univ;      GetHessInfo = delegate() { return(Hess.GetHessAnm(luniv, luniv.GetCoords(), 4.5)); }; break;

                    default:
                        throw new HException();
                    }

                    string pathcache = pathbase + string.Format("{0}.{1}.txt", hesstype, GetHessCoarseResiIter_thres_zeroblk);

                    Tuple <double, double, double[]> corr_wovlp_ovlps;

                    try
                    {
                        corr_wovlp_ovlps = GetQuality(pathcache, luniv, GetHessInfo, GetHessCoarseResiIter_thres_zeroblk);
                        return(corr_wovlp_ovlps);
                    }
                    catch
                    {
                        return(null);
                    }
                }