예제 #1
0
파일: Utils.cs 프로젝트: rohitvuppala/BoSSS
        public static void SetDefaultSplitSelection(this SubBlockSelector sbs, MatrixShape shape, bool upper, bool islocal = true)
        {
            switch (shape)
            {
            case MatrixShape.diagonal:
            case MatrixShape.full:
                sbs.DefaultCellSplit(upper, islocal);
                break;

            case MatrixShape.diagonal_var:
            case MatrixShape.full_var:
                sbs.DefaultSpeciesSplit(upper);
                if (!islocal)
                {
                    sbs.AllExternalCellsSelection();
                }
                break;

            case MatrixShape.diagonal_spec:
            case MatrixShape.full_spec:
                sbs.DefaultVarSplit(upper);
                if (!islocal)
                {
                    sbs.AllExternalCellsSelection();
                }
                break;

            case MatrixShape.diagonal_var_spec:
            case MatrixShape.full_var_spec:
                sbs.DefaultCellSplit(upper, islocal);
                break;

            default:
                throw new NotSupportedException(String.Format("{0} is not supported by this test", shape));
            }
        }