pymor.algorithms.error

Module Contents

pymor.algorithms.error.plot_reduction_error_analysis(result, max_basis_size=None, plot_effectivities=True, plot_condition=True, plot_custom_logarithmic=True, plot_custom_with_errors=False)[source]

Plots the results from reduction_error_analysis.

Parameters

result

Dictionary with entries as returned by reduction_error_analysis.

max_basis_size

Only plot results up to this basis size.

plot_effectivities

If True, plot the effectivities of the a posteriori error estimate.

plot_condition

If True, plot the condition of the reduced system matrix.

plot_custom_logarithmic

If True, use a logarithmic y-axis to plot the computed custom values.

plot_custom_with_errors

It True, plot errors and custom values in a single plot (otherwise in separate ones).

pymor.algorithms.error.reduction_error_analysis(rom, fom, reductor, test_mus, basis_sizes=0, error_estimator=True, condition=False, error_norms=(), error_norm_names=None, error_estimator_norm_index=0, custom=(), custom_names=None, plot=False, plot_custom_logarithmic=True, pool=dummy_pool)[source]

Analyze the model reduction error.

The maximum model reduction error is estimated by solving the reduced Model for given random Parameters.

Parameters

rom

The reduced Model.

fom

The high-dimensional Model.

reductor

The reductor which has created rom.

test_mus

List of Parameters to compute the errors for.

basis_sizes

Either a list of reduced basis dimensions to consider, or the number of dimensions (which are then selected equidistantly, always including the maximum reduced space dimension). The dimensions are input for the dim-Parameter of reductor.reduce().

error_estimator

If True evaluate the error estimator of rom on the test Parameters.

condition

If True, compute the condition of the reduced system matrix for the given test Parameters (can only be specified if rom is an instance of StationaryModel and rom.operator is linear).

error_norms

List of norms in which to compute the model reduction error.

error_norm_names

Names of the norms given by error_norms. If None, the name attributes of the given norms are used.

error_estimator_norm_index

When error_estimator is True and error_norms are specified, this is the index of the norm in error_norms w.r.t. which to compute the effectivity of the error estimator.

custom

List of custom functions which are evaluated for each test parameter values and basis size. The functions must have the signature

def custom_value(rom, fom, reductor, mu, dim):
    pass
custom_names

List of names to be used for plotting custom values.

plot

If True, generate a plot of the computed quantities w.r.t. the basis size.

plot_custom_logarithmic

If True, use a logarithmic y-axis to plot the computed custom values.

pool

If not None, the WorkerPool to use for parallelization.

Returns

Dict with the following fields

mus:

The test Parameters which have been considered.

basis_sizes:

The reduced basis dimensions which have been considered.

norms:

NumPy array of the norms of the high-dimensional solutions w.r.t. all given test Parameters and norms in error_norms. (Only present when error_norms has been specified.)

max_norms:

Maxima of norms over the given test Parameters.

max_norm_mus:

Parameters corresponding to max_norms.

errors:

NumPy array of the norms of the model reduction errors w.r.t. all given test Parameters, reduced basis dimensions and norms in error_norms. (Only present when error_norms has been specified.)

max_errors:

Maxima of errors over the given test Parameters.

max_error_mus:

Parameters corresponding to max_errors.

rel_errors:

errors divided by norms. (Only present when error_norms has been specified.)

max_rel_errors:

Maxima of rel_errors over the given test Parameters.

max_rel_error_mus:

Parameters corresponding to max_rel_errors.

error_norm_names:

Names of the given error_norms. (Only present when error_norms has been specified.)

error_estimates:

NumPy array of the model reduction error estimates w.r.t. all given test Parameters and reduced basis dimensions. (Only present when error_estimator is True.)

max_error_estimate:

Maxima of error_estimates over the given test Parameters.

max_error_estimate_mus:

Parameters corresponding to max_error_estimates.

effectivities:

errors divided by error_estimates. (Only present when error_estimator is True and error_norms has been specified.)

min_effectivities:

Minima of effectivities over the given test Parameters.

min_effectivity_mus:

Parameters corresponding to min_effectivities.

max_effectivities:

Maxima of effectivities over the given test Parameters.

max_effectivity_mus:

Parameters corresponding to max_effectivities.

errors:

NumPy array of the reduced system matrix conditions w.r.t. all given test Parameters and reduced basis dimensions. (Only present when conditions is True.)

max_conditions:

Maxima of conditions over the given test Parameters.

max_condition_mus:

Parameters corresponding to max_conditions.

custom_values:

NumPy array of custom function evaluations w.r.t. all given test Parameters, reduced basis dimensions and functions in custom. (Only present when custom has been specified.)

max_custom_values:

Maxima of custom_values over the given test Parameters.

max_custom_values_mus:

Parameters corresponding to max_custom_values.

time:

Time (in seconds) needed for the error analysis.

summary:

String containing a summary of all computed quantities for the largest (last) considered basis size.