I want to do something like this:
expr := x^e;
Manipulate[Plot[expr, {x, 0, 4}], {e, 1, 3}]
But the plot shows up empty.
Yes, it works if I do:
expr[x_,e_] := x^e;
Manipulate[Plot[expr[x,e], {x, 0, 4}], {e, 1, 3}]
But I don't want to do that. Why? Because the function I'm actually working with has about a dozen variables. I want to be able define my function just as as expression (that I use in many places throughout my notebook, in addition to this particular Manipulate) so that I don't have to bother with remembering the order in which I defined the dozen or so variables that comprise the function definition. This way I can substitute values into my function using ReplaceAll as I see fit.
My approach has been working fine as I continue to shape this function, but using Manipulate becomes very cumbersome. I want to manipulate several of these variables without having to worry about typing a whole lot of code. Is there a way I can keep the definition of my function as a simple Set or SetDelayed (without the pattern matching) but change something about my Manipulate expression to make the Manipulate function actually manipulate symbols that are not do not explicitly occur within the Manipulate expression? Thanks!