예제 #1
0
파일: cache.py 프로젝트: meretp/pymor
def test_memory_region_safety():

    op = NumpyMatrixOperator(np.eye(1))
    rhs = op.range.make_array(np.array([1]))
    m = StationaryModel(op, rhs)
    m.enable_caching('memory')

    U = m.solve()
    del U[:]
    U = m.solve()
    assert len(U) == 1
    del U[:]
    U = m.solve()
    assert len(U) == 1
예제 #2
0
def reconstruct_solution(gq, lq, bases, silent=True):
    # Berechne reduzierte Loesung anhand gegebener Basis
    if not silent:
        print("reconstructing solution")
    op = gq["op"]
    rhs = gq["rhs"]
    localizer = gq["localizer"]
    spaces = gq["spaces"]
    operator_reductor = LRBOperatorProjection(op, rhs, localizer, spaces, bases, spaces, bases)
    rop = operator_reductor.get_reduced_operator()
    rrhs = operator_reductor.get_reduced_rhs()
    rd = StationaryModel(rop, rrhs, cache_region=None)
    ru = operator_reductor.reconstruct_source(rd.solve())
    return ru