On Tue, Jan 06, 2009 at 05:13:25PM -0300, Ola Skavhaug wrote: > On Tue, Jan 6, 2009 at 4:46 PM, Anders Logg <[email protected]> wrote: > > On Tue, Jan 06, 2009 at 11:45:46AM -0300, Ola Skavhaug wrote: > >> On Mon, Jan 5, 2009 at 5:09 AM, Anders Logg <[email protected]> wrote: > >> > On Sat, Jan 03, 2009 at 09:27:04PM -0300, Ola Skavhaug wrote: > >> >> What's the purpose of dolfin_plot? It just calls viper_plot for all > >> >> types, except when the object is unknown, in which case it tries > >> >> to project something, without knowing what it is. This should be put > >> >> into viper instead of in this almost empty wrapper. What is the type > >> >> of object if project can handle it? > >> > > >> > The type of object is any expression like grad(u), u + u, div(u) etc. > >> > but it can also be anything else (like an int or float) that FFC can > >> > interpret as a Form. The easiest test is probably the one that's there > >> > now in plot.py (try: project). > >> > >> I don't understand. I don't see any tests where project is used. Can > >> you point me to the appropriate test? > >> > >> Ola > > > > I mean the following tests: > > > > # Plot mesh > > if isinstance(object, cpp.Mesh): > > return viper_plot(object, *args, **kwargs) > > > > # Plot mesh function > > if isinstance(object, cpp.MeshFunctionUInt) or \ > > isinstance(object, cpp.MeshFunctionInt) or \ > > isinstance(object, cpp.MeshFunctionReal): > > return viper_plot(object, *args, **kwargs) > > > > # Plot function > > if isinstance(object, cpp.Function): > > return viper_plot(object, *args, **kwargs) > > > > # Try projecting function > > from project import project > > try: > > print "Object cannot be plotted directly, projecting to > > piecewise linears." > > u = project(object) > > return plot(u, *args, **kwargs) > > except: > > raise RuntimeError, ("Don't know how to plot given object and > > projection failed: " + str(object)) > > > > This tests for any object that DOLFIN knows that Viper can handle and > > otherwise tries to project the object to a Function and then calls > > Viper with the Function. > > > > So: first check for everything that Viper knows how to plot and > > otherwise try to project it. > > I know this code, but this is not a test. This is dolfin code. I'm > talking about a test of this functionality. Since object is unknown, > there is no simple way for me to test that I don't break anything when > coding. > > See?
No... What kind of test do you want? -- Anders
signature.asc
Description: Digital signature
_______________________________________________ DOLFIN-dev mailing list [email protected] http://www.fenics.org/mailman/listinfo/dolfin-dev
