MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Interesting problem looking for a solution.

  • To: mathgroup at
  • Subject: [mg122053] Re: Interesting problem looking for a solution.
  • From: Murray Eisenberg <murray at>
  • Date: Tue, 11 Oct 2011 04:22:59 -0400 (EDT)
  • Delivered-to:
  • References: <3419157.43225.1318144358445.JavaMail.root@m06> <>
  • Reply-to: murray at

Back when I was doing such things with student projects in Mathematica, 
I sure wish I had had use of David Park's HiddenNotebookData function 
from his Presentations application: it would have simplified doing a lot 
of things.

(But not all, probably: if you want to test a students definition of a 
function on-the-fly against randomized input data, you need to hide a 
"correct" definition of that function as well as generation of the test 
data. At that point it may be just simpler to use a separate encoded 
package of the sort I described in another post on this topic. Doing 
this with a whole suite of student functions, each tested against a 
series of test data, would likely create so many strings from 
HiddenNotebokData that one would want to keep all that separate from the 
student's own notebook where she was developing and testing the functions.)

On 10/10/11 4:26 AM, David Park wrote:
> Gary,
> You will probably have to create your own array of functions from which you
> can randomly pick. Also I am not going to go into generating the worksheets,
> which I presume are Mathematica notebooks, because it is a bunch of fiddly
> work in programmed writing of notebooks.
> However, the Presentations application has a routine that allows you to
> generate graphs of functions, sometimes as a series of points but you can
> also force them to be compressed into a gibberish looking string.
> For example:
> <<  Presentations`
> Clear[testplot1];
> HiddenNotebookData[testplot1, "function 1",
>   Compress@Draw[x Sqrt[x], {x, 0, 1}]]
> This generates the following Input cell in the notebook:
> testplot1 =<<function 1>>;
> This could be sent to the worksheet as an initialization cell.
> If the student looks at testplot he will only see the compressed string
> form, or a Line with points in uncompressed form.
> Then the worksheet could contain the following statement, which might be
> built-in with perhaps the matching Draw statement initially missing.
> Draw2D[
>   {(* Graph of test function to match *)
>    {Red, Uncompress@testplot1},
>    (* Matching function graph generated by student *)
>    {Draw[x^2, {x, 0, 1}]}},
>   Frame ->  True]
> The student can then experiment with the matching function to attempt a
> match.
> The HiddenNotebookData command is in the Writing/Manipulations/Other group
> on the PresentationsPalette.
> David Park
> djmpark at
> From: Church, Gary [mailto:churchg at]
> Hello,
> I have an (I think) interesting problem for you Mathematica gurus.
> I'm trying to create a worksheet for my students and want to be able to
> display the plot of a randomly generated function f[x], without them being
> able to access the expression which defines f; In other words, I don't want
> them to be able to evaluate f[x].
> The idea is that each student will get a different function f[x] and will
> see a different graph and they have to determine the expression which
> defines f. They then have to plot the function they think is f against the
> actual function f[x] and turn in the two plots (or the one plot with the two
> graphs.)
> Is this possible?
> Thanks much,
> Gary

Murray Eisenberg                     murray at
Mathematics & Statistics Dept.
Lederle Graduate Research Tower      phone 413 549-1020 (H)
University of Massachusetts                413 545-2859 (W)
710 North Pleasant Street            fax   413 545-1801
Amherst, MA 01003-9305

  • Prev by Date: Re: Schroedinger EQ
  • Next by Date: Re: Suppressing quotes around strings in Input style.
  • Previous by thread: Re: Interesting problem looking for a solution.
  • Next by thread: Re: Interesting problem looking for a solution.