pymor.gui package

Submodules

fenics module

gl module

This module provides a widget for displaying patch plots of scalar data assigned to 2D-grids using OpenGL. This widget is not intended to be used directly. Instead, use visualize_patch or PatchVisualizer.


class pymor.gui.gl.ColorBarWidget(parent, U=None, vmin=None, vmax=None)[source]

Bases: QGLWidget

Methods

ColorBarWidget initializeGL, paintEvent, resizeGL, set

class pymor.gui.gl.GLPatchWidget(parent, grid, vmin=None, vmax=None, bounding_box=([0, 0], [1, 1]), codim=2)[source]

Bases: QGLWidget

Methods

GLPatchWidget initializeGL, paintGL, resizeGL, set, set_coordinates

pymor.gui.gl.compile_vertex_shader(source)[source]

Compile a vertex shader from source.


Create a shader program with from compiled shaders.

matplotlib module

This module provides a widgets for displaying plots of scalar data assigned to one- and two-dimensional grids using matplotlib. This widget is not intended to be used directly. Instead, use visualize_matplotlib_1d or Matplotlib1DVisualizer.


class pymor.gui.matplotlib.Matplotlib1DWidget(parent, grid, count, vmin=None, vmax=None, legend=None, codim=1, separate_plots=False, dpi=100)[source]

Bases: FigureCanvasQTAgg

Methods

Matplotlib1DWidget set

class pymor.gui.matplotlib.MatplotlibPatchWidget(parent, grid, bounding_box=None, vmin=None, vmax=None, codim=2, dpi=100)[source]

Bases: FigureCanvasQTAgg

Methods

MatplotlibPatchWidget set

qt module

This module provides a few methods and classes for visualizing data associated to grids. We use the PySide bindings for the Qt widget toolkit for the GUI.


class pymor.gui.qt.Matplotlib1DVisualizer(grid, codim=1, block=False)[source]

Bases: pymor.core.interfaces.BasicInterface

Visualize scalar data associated to a one-dimensional Grid as a plot.

The grid’s ReferenceElement must be the line. The data can either be attached to the subintervals or vertices of the grid.

Parameters

grid
The underlying Grid.
codim
The codimension of the entities the data in U is attached to (either 0 or 1).
block
If True, block execution until the plot window is closed.
visualize(U, discretization, title=None, legend=None, block=None)[source]

Visualize the provided data.

Parameters

U
VectorArray of the data to visualize. If len(U) > 1, the data is visualized as a time series of plots. Alternatively, a tuple of VectorArrays can be provided, in which case several plots are made into the same axes. The lengths of all arrays have to agree.
discretization
Filled in by pymor.discretizations.DiscretizationBase.visualize (ignored).
title
Title of the plot.
legend
Description of the data that is plotted. Most useful if U is a tuple in which case legend has to be a tuple of strings of the same length.
block
If True, block execution until the plot window is closed. If None, use the default provided during instantiation.

class pymor.gui.qt.PatchVisualizer(grid, bounding_box=([0, 0], [1, 1]), codim=2, backend=None, block=False)[source]

Bases: pymor.core.interfaces.BasicInterface

Visualize scalar data associated to a two-dimensional Grid as a patch plot.

The grid’s ReferenceElement must be the triangle or square. The data can either be attached to the faces or vertices of the grid.

Parameters

grid
The underlying Grid.
bounding_box
A bounding box in which the grid is contained.
codim
The codimension of the entities the data in U is attached to (either 0 or 2).
backend
Plot backend to use (‘gl’ or ‘matplotlib’).
block
If True, block execution until the plot window is closed.
visualize(U, discretization, title=None, legend=None, separate_colorbars=False, rescale_colorbars=False, block=None, filename=None, columns=2)[source]

Visualize the provided data.

Parameters

U
VectorArray of the data to visualize. If len(U) > 1, the data is visualized as a time series of plots. Alternatively, a tuple of VectorArrays can be provided, in which case a subplot is created for each entry of the tuple. The lengths of all arrays have to agree.
discretization
Filled in pymor.discretizations.DiscretizationBase.visualize (ignored).
title
Title of the plot.
legend
Description of the data that is plotted. Most useful if U is a tuple in which case legend has to be a tuple of strings of the same length.
separate_colorbars
If True, use separate colorbars for each subplot.
rescale_colorbars
If True, rescale colorbars to data in each frame.
block
If True, block execution until the plot window is closed. If None, use the default provided during instantiation.
filename
If specified, write the data to a VTK-file using pymor.tools.vtkio.write_vtk instead of displaying it.
columns
The number of columns in the visualizer GUI in case multiple plots are displayed at the same time.

class pymor.gui.qt.PlotMainWindow(U, plot, length=1, title=None)[source]

Bases: object

Base class for plot main windows.

Methods

PlotMainWindow rewind, slider_changed, speed_changed, step_backward, step_forward, to_end, toggle_play, update_solution

pymor.gui.qt._launch_qt_app(main_window_factory, block)[source]

Wrapper to display plot in a separate process.


pymor.gui.qt.stop_gui_processes()[source]

pymor.gui.qt.visualize_matplotlib_1d(grid, U, codim=1, title=None, legend=None, separate_plots=False, block=False)[source]

Visualize scalar data associated to a one-dimensional Grid as a plot.

The grid’s ReferenceElement must be the line. The data can either be attached to the subintervals or vertices of the grid.

Parameters

grid
The underlying Grid.
U
VectorArray of the data to visualize. If len(U) > 1, the data is visualized as a time series of plots. Alternatively, a tuple of VectorArrays can be provided, in which case several plots are made into the same axes. The lengths of all arrays have to agree.
codim
The codimension of the entities the data in U is attached to (either 0 or 1).
title
Title of the plot.
legend
Description of the data that is plotted. Most useful if U is a tuple in which case legend has to be a tuple of strings of the same length.
separate_plots
If True, use subplots to visualize multiple VectorArrays.
block
If True, block execution until the plot window is closed.

pymor.gui.qt.visualize_patch(grid, U, bounding_box=([0, 0], [1, 1]), codim=2, title=None, legend=None, separate_colorbars=False, rescale_colorbars=False, backend='gl', block=False, columns=2)[source]

Visualize scalar data associated to a two-dimensional Grid as a patch plot.

The grid’s ReferenceElement must be the triangle or square. The data can either be attached to the faces or vertices of the grid.

Parameters

grid
The underlying Grid.
U
VectorArray of the data to visualize. If len(U) > 1, the data is visualized as a time series of plots. Alternatively, a tuple of VectorArrays can be provided, in which case a subplot is created for each entry of the tuple. The lengths of all arrays have to agree.
bounding_box
A bounding box in which the grid is contained.
codim
The codimension of the entities the data in U is attached to (either 0 or 2).
title
Title of the plot.
legend
Description of the data that is plotted. Most useful if U is a tuple in which case legend has to be a tuple of strings of the same length.
separate_colorbars
If True, use separate colorbars for each subplot.
rescale_colorbars
If True, rescale colorbars to data in each frame.
backend
Plot backend to use (‘gl’ or ‘matplotlib’).
block
If True, block execution until the plot window is closed.
columns
The number of columns in the visualizer GUI in case multiple plots are displayed at the same time.

Defaults

backend (see pymor.core.defaults)