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:

data – 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.