- Timestamp:
- 06/23/2008 11:23:05 AM (7 months ago)
- Location:
- trunk/fipy/viewers
- Files:
-
- 11 modified
-
gistViewer/gist1DViewer.py (modified) (2 diffs)
-
gistViewer/gist2DViewer.py (modified) (2 diffs)
-
gnuplotViewer/gnuplot1DViewer.py (modified) (2 diffs)
-
gnuplotViewer/gnuplot2DViewer.py (modified) (3 diffs)
-
matplotlibViewer/matplotlib1DViewer.py (modified) (2 diffs)
-
matplotlibViewer/matplotlib2DGridContourViewer.py (modified) (3 diffs)
-
matplotlibViewer/matplotlib2DGridViewer.py (modified) (4 diffs)
-
matplotlibViewer/matplotlib2DViewer.py (modified) (1 diff)
-
matplotlibViewer/test.py (modified) (2 diffs)
-
mayaviViewer/mayaviViewer.py (modified) (3 diffs)
-
viewer.py (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/fipy/viewers/gistViewer/gist1DViewer.py
r2286 r2608 6 6 # 7 7 # FILE: "gist1DViewer.py" 8 # created: 11/10/03 {2:48:25 PM} 9 # last update: 7/5/07 {9:30:22 AM} 8 # 10 9 # Author: Jonathan Guyer <guyer@nist.gov> 11 10 # Author: Daniel Wheeler <daniel.wheeler@nist.gov> … … 50 49 51 50 class Gist1DViewer(GistViewer): 52 """ 53 Displays a y vs. x plot of one or more 1D `CellVariable` objects. 54 55 >>> from fipy import * 56 >>> mesh = Grid1D(nx=100) 57 >>> x = mesh.getCellCenters()[0] 58 >>> var1 = CellVariable(mesh=mesh, name=r"$sin(x)$", value=numerix.sin(x)) 59 >>> var2 = CellVariable(mesh=mesh, name=r"$cos(x/\pi)$", value=numerix.cos(x / numerix.pi)) 60 >>> viewer = Gist1DViewer(vars=(var1, var2), 61 ... limits={'xmin':10, 'xmax':90, 'datamin':-0.9, 'datamax':2.0}, 62 ... title="Gist1DViewer test") 63 >>> viewer.plot() 64 >>> viewer._promptForOpinion() 65 >>> del viewer 66 51 """Displays a y vs. x plot of one or more 1D `CellVariable` objects. 67 52 """ 68 53 54 __doc__ += GistViewer._test1D(viewer="Gist1DViewer") 55 69 56 def __init__(self, vars, title = None, limits = None, xlog = 0, ylog = 0, style = "work.gs"): 70 57 """ -
trunk/fipy/viewers/gistViewer/gist2DViewer.py
r2292 r2608 6 6 # 7 7 # FILE: "gist2DViewer.py" 8 # created: 11/10/03 {2:48:25 PM} 9 # last update: 7/5/07 {9:43:48 AM} 8 # 10 9 # Author: Jonathan Guyer <guyer@nist.gov> 11 10 # Author: Daniel Wheeler <daniel.wheeler@nist.gov> … … 49 48 50 49 class Gist2DViewer(GistViewer): 51 """ 52 Displays a contour plot of a 2D `CellVariable` object. 53 50 """Displays a contour plot of a 2D `CellVariable` object. 54 51 """ 55 52 53 __doc__ += GistViewer._test2D(viewer="Gist2DViewer") 54 __doc__ += GistViewer._test2Dirregular(viewer="Gist2DViewer") 55 56 56 def __init__(self, vars, limits = None, title = None, palette = 'heat.gp', grid = 1, dpi = 75): 57 """ 58 Creates a `Gist2DViewer`. 57 """Creates a `Gist2DViewer`. 59 58 60 >>> from fipy import *61 >>> mesh = Grid2D(nx=50, ny=100, dx=0.1, dy=0.01)62 >>> x, y = mesh.getCellCenters()63 >>> var = CellVariable(mesh=mesh, name=r"$sin(x y)$", value=numerix.sin(x * y))64 >>> viewer = Gist2DViewer(vars=var,65 ... limits={'ymin':0.1, 'ymax':0.9, 'datamin':-0.9, 'datamax':2.0},66 ... title="Gist2DViewer test")67 >>> viewer.plot()68 >>> viewer._promptForOpinion()69 >>> del viewer70 71 >>> mesh = Tri2D(nx=50, ny=100, dx=0.1, dy=0.01)72 >>> x, y = mesh.getCellCenters()73 >>> var = CellVariable(mesh=mesh, name=r"$sin(x y)$", value=numerix.sin(x * y))74 >>> viewer = Gist2DViewer(vars=var,75 ... limits={'ymin':0.1, 'ymax':0.9, 'datamin':-0.9, 'datamax':2.0},76 ... title="Gist2DViewer test")77 >>> viewer.plot()78 >>> viewer._promptForOpinion()79 >>> del viewer80 81 59 :Parameters: 82 60 - `vars`: A `CellVariable` or tuple of `CellVariable` objects to plot. -
trunk/fipy/viewers/gnuplotViewer/gnuplot1DViewer.py
r2498 r2608 6 6 # 7 7 # FILE: "gnuplot1DViewer.py" 8 # created: 9/14/04 {2:48:25 PM} 9 # last update: 7/5/07 {9:32:26 AM} { 2:45:36 PM} 8 # 10 9 # Author: Jonathan Guyer <guyer@nist.gov> 11 10 # Author: Daniel Wheeler <daniel.wheeler@nist.gov> … … 50 49 51 50 class Gnuplot1DViewer(GnuplotViewer): 52 """ 53 Displays a y vs. x plot of one or more 1D `CellVariable` objects. 51 """Displays a y vs. x plot of one or more 1D `CellVariable` objects. 54 52 55 53 The `Gnuplot1DViewer` plots a 1D `CellVariable` using a front end python 56 54 wrapper available to download (Gnuplot.py_). 57 55 58 >>> from fipy import * 59 >>> mesh = Grid1D(nx=100) 60 >>> x = mesh.getCellCenters()[0] 61 >>> var1 = CellVariable(mesh=mesh, name=r"$sin(x)$", value=numerix.sin(x)) 62 >>> var2 = CellVariable(mesh=mesh, name=r"$cos(x/\pi)$", value=numerix.cos(x / numerix.pi)) 63 >>> viewer = Gnuplot1DViewer(vars=(var1, var2), 64 ... limits={'xmin':10, 'xmax':90, 'datamin':-0.9, 'datamax':2.0}, 65 ... title="Gnuplot1DViewer test") 66 >>> viewer.plot() 67 >>> viewer._promptForOpinion() 68 >>> del viewer 56 .. _Gnuplot.py: http://gnuplot-py.sourceforge.net/ 57 """ 58 59 __doc__ += GnuplotViewer._test1D(viewer="Gnuplot1DViewer") 69 60 70 .. _Gnuplot.py: http://gnuplot-py.sourceforge.net/ 71 61 __doc__ += """ 72 62 Different style script demos_ are available at the Gnuplot_ site. 73 63 -
trunk/fipy/viewers/gnuplotViewer/gnuplot2DViewer.py
r2286 r2608 6 6 # 7 7 # FILE: "gnuplot1DViewer.py" 8 # created: 9/14/04 {2:48:25 PM} 9 # last update: 7/5/07 {9:32:17 AM} { 2:45:36 PM} 8 # 10 9 # Author: Jonathan Guyer <guyer@nist.gov> 11 10 # Author: Daniel Wheeler <daniel.wheeler@nist.gov> … … 58 57 59 58 .. _Gnuplot.py: http://gnuplot-py.sourceforge.net/ 60 59 """ 60 61 __doc__ += GnuplotViewer._test2D(viewer="Gnuplot2DViewer") 62 __doc__ += GnuplotViewer._test2Dirregular(viewer="Gnuplot2DViewer") 63 64 __doc__ += """ 61 65 Different style script demos_ are available at the Gnuplot_ site. 62 66 … … 70 74 """ 71 75 def __init__(self, vars, limits = None, title = None): 72 """ 73 Creates a `Gnuplot2DViewer`. 74 75 >>> from fipy import * 76 >>> mesh = Grid2D(nx=50, ny=100, dx=0.1, dy=0.01) 77 >>> x, y = mesh.getCellCenters() 78 >>> var = CellVariable(mesh=mesh, name=r"$sin(x y)$", value=numerix.sin(x * y)) 79 >>> viewer = Gnuplot2DViewer(vars=var, 80 ... limits={'ymin':0.1, 'ymax':0.9, 'datamin':-0.9, 'datamax':2.0}, 81 ... title="Gnuplot2DViewer test") 82 >>> viewer.plot() 83 >>> viewer._promptForOpinion() 84 >>> del viewer 85 86 >>> mesh = Tri2D(nx=50, ny=100, dx=0.1, dy=0.01) 87 >>> x, y = mesh.getCellCenters() 88 >>> var = CellVariable(mesh=mesh, name=r"$sin(x y)$", value=numerix.sin(x * y)) 89 >>> viewer = Gnuplot2DViewer(vars=var, 90 ... limits={'ymin':0.1, 'ymax':0.9, 'datamin':-0.9, 'datamax':2.0}, 91 ... title="Gnuplot2DViewer test") 92 >>> viewer.plot() 93 >>> viewer._promptForOpinion() 94 >>> del viewer 76 """Creates a `Gnuplot2DViewer`. 95 77 96 78 :Parameters: -
trunk/fipy/viewers/matplotlibViewer/matplotlib1DViewer.py
r2286 r2608 6 6 # 7 7 # FILE: "matplotlib1DViewer.py" 8 # created: 9/14/04 {2:48:25 PM} 9 # last update: 7/4/07 {8:14:53 PM} 8 # 10 9 # Author: Jonathan Guyer <guyer@nist.gov> 11 10 # Author: Daniel Wheeler <daniel.wheeler@nist.gov> … … 52 51 Matplotlib_. 53 52 54 >>> from fipy import *55 >>> from fipy.tools.numerix import *56 >>> mesh = Grid1D(nx=100)57 >>> x = mesh.getCellCenters()[0]58 >>> xVar = CellVariable(mesh=mesh, name="x", value=x)59 >>> k = Variable(name="k")60 >>> viewer = Matplotlib1DViewer(vars=(sin(k * xVar), cos(k * xVar / pi)),61 ... limits={'xmin':10, 'xmax':90, 'datamin':-0.9, 'datamax':2.0},62 ... title="Matplotlib1DViewer test")63 >>> for kval in numerix.arange(0,0.3,0.03):64 ... k.setValue(kval)65 ... viewer.plot()66 >>> viewer._promptForOpinion()67 68 53 .. _Matplotlib: http://matplotlib.sourceforge.net/ 69 70 71 54 """ 55 56 __doc__ += MatplotlibViewer._test1D(viewer="Matplotlib1DViewer") 57 72 58 def __init__(self, vars, limits = None, title = None, xlog=False, ylog=False): 73 59 MatplotlibViewer.__init__(self, vars=vars, limits=limits, title=title) -
trunk/fipy/viewers/matplotlibViewer/matplotlib2DGridContourViewer.py
r2336 r2608 6 6 # 7 7 # FILE: "matplotlib2DViewer.py" 8 # created: 9/14/04 {2:48:25 PM} 9 # last update: 10/5/07 {10:11:32 AM} { 2:45:36 PM} 8 # 10 9 # Author: Jonathan Guyer <guyer@nist.gov> 11 10 # Author: Daniel Wheeler <daniel.wheeler@nist.gov> … … 49 48 50 49 class Matplotlib2DGridContourViewer(MatplotlibViewer): 51 """ 52 Displays a contour plot of a 2D `CellVariable` object. 50 """Displays a contour plot of a 2D `CellVariable` object. 53 51 54 52 The `Matplotlib2DGridContourViewer` plots a 2D `CellVariable` using Matplotlib_. 55 53 56 54 .. _Matplotlib: http://matplotlib.sourceforge.net/ 57 58 59 55 """ 56 57 __doc__ += MatplotlibViewer._test2D(viewer="Matplotlib2DGridContourViewer") 60 58 61 59 62 60 def __init__(self, vars, limits = None, title = None): 63 """ 64 Creates a `Matplotlib2DViewer`. 61 """Creates a `Matplotlib2DViewer`. 65 62 66 >>> from fipy import *67 >>> from fipy.tools.numerix import *68 >>> mesh = Grid2D(nx=50, ny=100, dx=0.1, dy=0.01)69 >>> x, y = mesh.getCellCenters()70 >>> xyVar = CellVariable(mesh=mesh, name="x y", value=x * y)71 >>> k = Variable(name="k")72 >>> viewer = Matplotlib2DGridContourViewer(vars=sin(k * xyVar),73 ... limits={'ymin':0.1, 'ymax':0.9, 'datamin':-0.9, 'datamax':2.0},74 ... title="Matplotlib2DGridContourViewer test")75 >>> for kval in range(10):76 ... k.setValue(kval)77 ... viewer.plot()78 >>> viewer._promptForOpinion()79 >>> del viewer80 81 63 :Parameters: 82 64 - `vars`: A `CellVariable` object. … … 148 130 pylab.ylim(ymin=self._getLimit('ymin'), 149 131 ymax=self._getLimit('ymax')) 132 133 def _test(): 134 from fipy.viewers.viewer import _test2D 135 _test2D(Matplotlib2DGridContourViewer) 150 136 151 137 if __name__ == "__main__": -
trunk/fipy/viewers/matplotlibViewer/matplotlib2DGridViewer.py
r2286 r2608 6 6 # 7 7 # FILE: "matplotlib2DViewer.py" 8 # created: 9/14/04 {2:48:25 PM} 9 # last update: 7/4/07 {8:24:29 PM} { 2:45:36 PM} 8 # 10 9 # Author: Jonathan Guyer <guyer@nist.gov> 11 10 # Author: Daniel Wheeler <daniel.wheeler@nist.gov> … … 53 52 .. _Matplotlib: http://matplotlib.sourceforge.net/ 54 53 """ 55 54 55 __doc__ += MatplotlibViewer._test2D(viewer="Matplotlib2DGridViewer") 56 56 57 57 def __init__(self, vars, limits = None, title = None): … … 59 59 Creates a `Matplotlib2DGridViewer`. 60 60 61 >>> from fipy import *62 >>> from fipy.tools.numerix import *63 >>> mesh = Grid2D(nx=50, ny=100, dx=0.1, dy=0.01)64 >>> x, y = mesh.getCellCenters()65 >>> xyVar = CellVariable(mesh=mesh, name="x y", value=x * y)66 >>> k = Variable(name="k")67 >>> viewer = Matplotlib2DGridViewer(vars=sin(k * xyVar),68 ... limits={'ymin':0.1, 'ymax':0.9, 'datamin':-0.9, 'datamax':2.0},69 ... title="Matplotlib2DGridViewer test")70 >>> for kval in range(10):71 ... k.setValue(kval)72 ... viewer.plot()73 >>> viewer._promptForOpinion()74 >>> del viewer75 76 61 :Parameters: 77 62 - `vars`: A `CellVariable` object. … … 141 126 self.image.set_data(self._getData()) 142 127 143 128 def _test(): 129 from fipy.viewers.viewer import _test2D 130 _test2D(Matplotlib2DGridViewer) 131 144 132 if __name__ == "__main__": 145 133 import fipy.tests.doctestPlus -
trunk/fipy/viewers/matplotlibViewer/matplotlib2DViewer.py
r2606 r2608 54 54 55 55 .. _Matplotlib: http://matplotlib.sourceforge.net/ 56 57 58 """ 59 56 """ 57 58 __doc__ += MatplotlibViewer._test2Dirregular(viewer="Matplotlib2DViewer") 60 59 61 60 def __init__(self, vars, limits = None, title = None): 62 """ 63 Creates a `Matplotlib2DViewer`. 64 65 >>> from fipy import * 66 >>> from fipy.tools.numerix import * 67 >>> ## mesh = Grid2D(nx=25, ny=10, dx=0.1, dy=0.1) + (Tri2D(nx=25, ny=5, dx=0.1, dy=0.1) + ((25*0.1,), (2*0.1,))) 68 >>> mesh = Grid2D(nx=5, ny=10, dx=0.1, dy=0.1) + (Tri2D(nx=5, ny=5, dx=0.1, dy=0.1) + ((5*0.1,), (2*0.1,))) 69 >>> x, y = mesh.getCellCenters() 70 >>> xyVar = CellVariable(mesh=mesh, name="x y", value=x * y) 71 >>> k = Variable(name="k") 72 >>> viewer = Matplotlib2DViewer(vars=sin(k * xyVar), 73 ... limits={'ymin':0.1, 'ymax':0.9, 'datamin':-0.9, 'datamax':2.0}, 74 ... title="Matplotlib2DViewer test") 75 >>> for kval in range(10): 76 ... k.setValue(kval) 77 ... viewer.plot() 78 >>> viewer._promptForOpinion() 79 >>> del viewer 61 """Creates a `Matplotlib2DViewer`. 62 80 63 81 64 :Parameters: -
trunk/fipy/viewers/matplotlibViewer/test.py
r2219 r2608 7 7 # FILE: "test.py" 8 8 # created: 11/10/03 {3:23:47 PM} 9 # last update: 4/1/05 {2:47:09 PM}9 # last update: 6/23/08 {11:46:40 AM} 10 10 # Author: Jonathan Guyer <guyer@nist.gov> 11 11 # Author: Daniel Wheeler <daniel.wheeler@nist.gov> … … 51 51 'matplotlib2DViewer', 52 52 'matplotlib2DGridViewer', 53 'matplotlib2DGridContourViewer', 53 54 'matplotlibVectorViewer', 54 55 ), base = __name__) -
trunk/fipy/viewers/mayaviViewer/mayaviViewer.py
r2498 r2608 6 6 # 7 7 # FILE: "mayaviViewer.py" 8 # created: 9/14/04 {2:48:25 PM} 9 # last update: 7/5/07 {9:33:50 AM} 8 # 10 9 # Author: Jonathan Guyer <guyer@nist.gov> 11 10 # Author: Daniel Wheeler <daniel.wheeler@nist.gov> … … 49 48 50 49 class MayaviViewer(Viewer): 50 """The `MayaviViewer` creates viewers with the Mayavi_ python plotting package. 51 52 .. _Mayavi: http://mayavi.sourceforge.net/ 51 53 """ 52 The `MayaviViewer` creates viewers with the Mayavi_ python 53 plotting package. 54 55 >>> from fipy import * 56 >>> mesh = Grid1D(nx=100) 57 >>> x = mesh.getCellCenters()[0] 58 >>> var1 = CellVariable(mesh=mesh, name=r"$sin(x)$", value=numerix.sin(x)) 59 >>> var2 = CellVariable(mesh=mesh, name=r"$cos(x/\pi)$", value=numerix.cos(x / numerix.pi)) 60 >>> viewer = MayaviViewer(vars=(var1, var2), 61 ... limits={'xmin':10, 'xmax':90, 'datamin':-0.9, 'datamax':2.0}, 62 ... title="MayaviViewer test") 63 >>> viewer.plot() 64 >>> viewer._promptForOpinion() 65 >>> del viewer 66 67 >>> mesh = Grid2D(nx=50, ny=100, dx=0.1, dy=0.01) 68 >>> x, y = mesh.getCellCenters() 69 >>> var = CellVariable(mesh=mesh, name=r"$sin(x y)$", value=numerix.sin(x * y)) 70 >>> viewer = MayaviViewer(vars=var, 71 ... limits={'ymin':0.1, 'ymax':0.9, 'datamin':-0.9, 'datamax':2.0}, 72 ... title="MayaviViewer test") 73 >>> viewer.plot() 74 >>> viewer._promptForOpinion() 75 >>> del viewer 76 77 >>> mesh = Grid3D(nx=50, ny=100, nz=10, dx=0.1, dy=0.01, dz=0.1) 78 >>> x, y, z = mesh.getCellCenters() 79 >>> var = CellVariable(mesh=mesh, name=r"$sin(x y z)$", value=numerix.sin(x * y * z)) 80 >>> viewer = MayaviViewer(vars=var, 81 ... limits={'ymin':0.1, 'ymax':0.9, 'datamin':-0.9, 'datamax':2.0}, 82 ... title="MayaviViewer test") 83 >>> viewer.plot() 84 >>> viewer._promptForOpinion() 85 >>> del viewer 86 87 .. _Mayavi: http://mayavi.sourceforge.net/ 88 54 55 __doc__ += Viewer._test1D(viewer="MayaviViewer") 56 __doc__ += Viewer._test2D(viewer="MayaviViewer") 57 __doc__ += Viewer._test2Dirregular(viewer="MayaviViewer") 58 __doc__ += Viewer._test3D(viewer="MayaviViewer") 59 60 __doc__ += """ 89 61 Issues with the `MayaviViewer` are 90 62 … … 106 78 107 79 def __init__(self, vars, limits = None, title = None): 108 """ 109 Create a `MayaviViewer`. 80 """Create a `MayaviViewer`. 110 81 111 82 :Parameters: -
trunk/fipy/viewers/viewer.py
r2314 r2608 6 6 # 7 7 # FILE: "viewer.py" 8 # created: 11/10/03 {2:48:25 PM} 9 # last update: 7/17/07 {8:26:13 AM} 8 # 10 9 # Author: Jonathan Guyer <guyer@nist.gov> 11 10 # Author: Daniel Wheeler <daniel.wheeler@nist.gov> … … 146 145 def _validFileExtensions(self): 147 146 return [] 148 147 149 148 def _promptForOpinion(self, prompt="Describe any problems with this figure or hit Return: "): 150 149 # This method is usually invoked from a test, which can have a weird … … 154 153 raw_input = inspect.currentframe().f_back.f_globals.get('raw_input', __builtins__['raw_input']) 155 154 156 opinion = raw_input( prompt)155 opinion = raw_input(self.__class__.__name__ + ": " + prompt) 157 156 if len(opinion.strip()) > 0: 158 157 extensions = ", ".join(self._validFileExtensions()) … … 162 161 self.plot(snapshot) 163 162 print opinion 164 163 164 165 def _test1D(**kwargs): 166 return """ 167 >>> from fipy import * 168 >>> mesh = Grid1D(nx=100) 169 >>> x, = mesh.getCellCenters() 170 >>> xVar = CellVariable(mesh=mesh, name="x", value=x) 171 >>> k = Variable(name="k") 172 >>> viewer = %(viewer)s(vars=(sin(k * xVar), cos(k * xVar / pi)), 173 ... limits={'xmin':10, 'xmax':90, 'datamin':-0.9, 'datamax':2.0}, 174 ... title="%(viewer)s test") 175 >>> for kval in numerix.arange(0,0.3,0.03): 176 ... k.setValue(kval) 177 ... viewer.plot() 178 >>> viewer._promptForOpinion() 179 >>> del viewer 180 """ % kwargs 181 _test1D = staticmethod(_test1D) 182 183 def _test2Dbase(**kwargs): 184 return """ 185 >>> from fipy import * 186 >>> mesh = %(mesh)s 187 >>> x, y = mesh.getCellCenters() 188 >>> xyVar = CellVariable(mesh=mesh, name="x y", value=x * y) 189 >>> k = Variable(name="k") 190 >>> viewer = %(viewer)s(vars=sin(k * xyVar), 191 ... limits={'ymin':0.1, 'ymax':0.9, 'datamin':-0.9, 'datamax':2.0}, 192 ... title="%(viewer)s test") 193 >>> for kval in range(10): 194 ... k.setValue(kval) 195 ... viewer.plot() 196 >>> viewer._promptForOpinion() 197 >>> del viewer 198 """ % kwargs 199 _test2Dbase = staticmethod(_test2Dbase) 200 201 def _test2D(**kwargs): 202 return Viewer._test2Dbase(mesh="Grid2D(nx=50, ny=100, dx=0.1, dy=0.01)", 203 **kwargs) 204 _test2D = staticmethod(_test2D) 205 206 def _test2Dirregular(**kwargs): 207 """""" 208 return Viewer._test2Dbase(mesh="""(Grid2D(nx=5, ny=10, dx=0.1, dy=0.1) 209 ... + (Tri2D(nx=5, ny=5, dx=0.1, dy=0.1) 210 ... + ((0.5,), (0.2,))))""", **kwargs) 211 _test2Dirregular = staticmethod(_test2Dirregular) 212 213 214 def _test3D(**kwargs): 215 return """ 216 >>> from fipy import * 217 >>> mesh = Grid3D(nx=50, ny=100, nz=10, dx=0.1, dy=0.01, dz=0.1) 218 >>> x, y, z = mesh.getCellCenters() 219 >>> xyzVar = CellVariable(mesh=mesh, name=r"x y z", value=x * y * z) 220 >>> k = Variable(name="k") 221 >>> viewer = %(viewer)s(vars=sin(k * xyzVar, 222 ... limits={'ymin':0.1, 'ymax':0.9, 'datamin':-0.9, 'datamax':2.0}, 223 ... title="%(viewer)s test") 224 >>> for kval in range(10): 225 ... k.setValue(kval) 226 ... viewer.plot() 227 >>> viewer._promptForOpinion() 228 >>> del viewer 229 """ % kwargs 230 _test3D = staticmethod(_test3D) 231 232 def make(vars, title=None, limits=None): 233 return Viewer(vars=vars, title=title, limits=limits) 234
FiPy: A Finite Volume PDE Solver Using Python