예제 #1
0
파일: ml_sdc.py 프로젝트: DiMoser/PyPinT
    def __init__(self, **kwargs):
        super(MlSdc, self).__init__(**kwargs)
        IParallelSolver.__init__(self, **kwargs)
        del self._state
        del self._integrator

        self.threshold = ThresholdCheck(min_threshold=1e-7, max_threshold=10, conditions=("residual", "iterations"))
        self.timer = TimerBase()

        self._dt = 0.0
        self._ml_provider = None

        self.__nodes_type = GaussLobattoNodes
        self.__weights_type = PolynomialWeightFunction
        self.__exact = np.zeros(0)
        self.__deltas = None  # deltas between nodes as array; for each level (0: coarsest)
        self.__time_points = None  # time points of nodes as array; for each level
예제 #2
0
    def __init__(self, **kwargs):
        super(ParallelSdc, self).__init__(**kwargs)
        IParallelSolver.__init__(self, **kwargs)
        del self._state

        self.threshold = ThresholdCheck(min_threshold=1e-7, max_threshold=10, conditions=("residual", "iterations"))
        self.timer = TimerBase()

        self._num_time_steps = 1
        self._dt = 0.0
        self._deltas = {"t": 0.0, "n": np.zeros(0)}
        self._classic = True

        self.__nodes_type = GaussLobattoNodes
        self.__weights_type = PolynomialWeightFunction
        self.__num_nodes = 3
        self.__exact = np.zeros(0)
        self.__time_points = {"steps": np.zeros(0), "nodes": np.zeros(0)}