Questions about how Mathematica evaluates expressions, tracing evaluation (Trace*), handling expressions in unevaluated form (Hold*, Unevaluated), nonstandard evaluation, etc.
3
votes
1answer
166 views
FunctionInterpolation Errors / Question re Evaluation Order and Options
I have using Mathematica functions that takes a Cartesian coordinate relative to the Earth (xyz) and converts it to a latitude, longitude, and altitude (lla). And here it is:
...
7
votes
4answers
341 views
Force function to make assumptions about its input variables in Mathematica
I'm trying to force a Mathematica function to make an assumption about its input variables. In my case, I'm trying to define a function to return the pdf of a Gaussian. But let's use a simple toy ...
6
votes
2answers
359 views
Expression evaluation inside of FindRoot inside a Compiled Function
I'm trying to get some performance increase out of my own implicit differential equation solver using Compile[]. The uncompiled function is of the following form:
...
5
votes
3answers
229 views
Delayed evaluation of assignment
I have a set of PDE's that depend on parameters. They depend on many parameters, but for simplicity we can here assume that they depend only on one, say a.
I want ...
6
votes
1answer
133 views
Difficulty catching thrown errors in asynchronous tasks
In this Question, Leonid explained that module variables can get garbage collected from a chain of asynchronous tasks unless their Temporary attribute is cleared ...
6
votes
1answer
174 views
Module variable scoping in Scheduled Tasks?
I ran across a scoping puzzle while experimenting with ScheduledTasks, and I'd be grateful for an explanation from the sages here. I found a workaround by intuitive horse sense, but was unable to ...
5
votes
1answer
113 views
Changes in Handling of Real Zeros
I recently upgraded from Mathematica 5 to Mathematica 8 and I have a number of notebooks that no longer work correctly. The problems relate to the use of units. I don't need complicated unit ...
7
votes
1answer
176 views
How do I write a ValueQ function that only returns True if there exists an OwnValue?
Reading the comments in this answer has motivated me to request a full solution to part of this problem.
What I'd like is an efficient solution that returns True ...
10
votes
3answers
189 views
Arguments to If[] are not evaluated
I got bitten by the following:
f[x_] := 3*x;
g[x_] := If[Log[f[x]] < 0, f[x], 0];
g[x]
Out[11]= If[Log[3 x] < 0, f[x], 0]
where I thought the call to ...
8
votes
1answer
269 views
How to properly DumpSave & Get Global`s symbols inside packages while not touching Global context?
For efficiency reasons I prefer to use DumpSave instead of Save.
For ease of access I prefer to save symbols in ...
10
votes
1answer
144 views
Old values are not freed/garbage collected when you re-evaluate an assignment
For this code:
(* Cell 1 *)
generate := Module[{x}, x = Range[100 * 1000 * 1000]; x];
(* Cell 2 *)
g = generate[];
MemoryInUse[]
If I evaluate cell 2 ...
5
votes
2answers
197 views
Manipulate Evaluation Order Problem
I seem to be getting some unintended results from a nested Manipulate that I have not been able to resolve. I boiled down the problem I'm having to a simplified ...
6
votes
1answer
152 views
Changing the plot variable inside Plot [duplicate]
Possible Duplicate:
Difference in Plot when using Evaluate vs when not using Evaluate
Assume one has vector of functions (e.g., vec={x,x^2}).
The ...
23
votes
2answers
681 views
Block attributes of Equal
I answered “Equating matrices (or higher order tensors) element-wise” with:
...
5
votes
1answer
112 views
Impossible to bypass evaluation on returned values?
Following all the great advice on this other question, I'm now fluent with HoldAllComplete and Unevaluated on the input side of ...
10
votes
2answers
128 views
Subtle difference in conditional rules placement
I had gotten used to thinking of the placement of a condition in a rule definition as logically immaterial. In my specific example, namely
...
12
votes
4answers
431 views
Making a symbol's new definitions be tried before all previously defined ones
Is there any way to "close" a package (or a symbol, or a context) in that if a user of the package adds definitions to the symbol they will be tried before the package defined ones, just like what ...
3
votes
2answers
199 views
Efficiently evaluating a held expression directly from a list
I am able to evaluate a held expression that I have put on a list by:
ReleaseHold[expressionList[[1]]]
and
...
13
votes
2answers
302 views
How to REALLY Hold arguments and capture FullForm?
I'm trying to write an expression deconstructor or FullForm-capturer; might even call it a parser, maybe, but that might be too glorious a word.
I got some great ...
11
votes
5answers
624 views
How to pass a symbolname to a function with any of the Hold attributes?
Given a function with the attribute HoldFirst, HoldAll or similar, and a variable, list, how ...
8
votes
2answers
219 views
Exporting held expressions through JSON
Trying to round-trip expressions through JSON, I'm getting unexpected errors for held expressions, and would be grateful for advice or clues. Consider, first, something that works well
...
8
votes
2answers
454 views
Mathematica rule substitution memory
First I present the specific programming question, and then I provide further background details.
Given an expression in Mathematica, say f=3x+7y, there are two ...
8
votes
2answers
308 views
How to make Mathematica re-evaluate a cell after some event?
I am doing a little project to demonstrate something:
...
9
votes
2answers
239 views
Defining a ForEach function
Consider the following function definition:
ForEach[iterators__] := Table[#, iterators] &;
Two questions about it:
I. It works perfectly if you call it like ...
10
votes
3answers
264 views
Why does ++++x return an increment of 2 when the value of x is only incremented by 1?
This line returns 3:
x = 1; ++++x
However, the value of x after the increment is only ...
1
vote
0answers
78 views
is there an equivalent of “show” steps? [duplicate]
Possible Duplicate:
Get a “step by step” evaluation in Mathematica
In wolfram alpha, when preforming for complicated integrals there's a 'show steps' option that explains how ...
8
votes
3answers
217 views
How to write a function-defining function which stores the function arguments in a stack?
I have a function-defining function
SetAttributes[DefFn, HoldAll];
DefFn[f_[args___], body_] :=
f[args] := body;
I am trying to modify this function to record ...
2
votes
1answer
247 views
23
votes
9answers
755 views
Injecting a sequence of expressions into a held expression
Consider the following toy example:
Hold[{1, 2, x}] /. x -> Sequence[3, 4]
It will give
Hold[{1, 2, Sequence[3, 4]}]
...
8
votes
3answers
144 views
With/Function(/etc) replacement behaviour
Can anyone explain to me this behaviour? I've been having more than a couple of similar doubts these last weeks.
For example
f[_?NumericQ] := 8;
Now, if I do
...
21
votes
3answers
677 views
Difference in Plot when using Evaluate vs when not using Evaluate
This example comes from
the Mathematica documentation for Plot
under Basic Examples.
Can someone please explain why these are each plotted as a different color in ...
11
votes
3answers
218 views
Does AbsoluteTiming slow the evaluation time?
I've started using AbsoluteTiming to discriminate between similar function constructs, but I sometimes feel like it takes substantially more time to evaluate a ...
4
votes
2answers
158 views
Setting a lower limit on calculation time
Sometimes it can come in handy to set a lower limit for a calculation. Consider for example an animation that is generated by some infinite loop, which would run way too fast to display properly for ...
11
votes
5answers
442 views
How to determine how much of a table is generated?
If I'm generating a table from a slow function, like this:
foo = Table[SuperSlowExpression, {1000}]
is there a way to determine after submission (so it is too ...
15
votes
2answers
305 views
Implementing a safe ValueQ that does not evaluate its argument
Mathematica has a built-in function ValueQ. Quoting the docs,
ValueQ[expr] gives True ...
7
votes
3answers
931 views
General::ivar is not a valid variable when plotting - what actually causes this and how to avoid it?
I was just evaluating a couple of expressions and started to get errors like this:
...
9
votes
2answers
174 views
Bags and non-standard evaluation
What can internally be happening here? Is the evaluator just messing with us and going non-standard because it's a Bag? Or am I just not seeing how something like ...
10
votes
2answers
330 views
How do you programatically load data into symbols?
I am trying to convert a list of string names into symbols, which will then be used to store data. I have 24 files (where the name of each file is a member of the list mentioned above) that I need to ...
15
votes
4answers
271 views
Function that caches when it returns unevaluated
How would you go about implementing a function that caches not the result but the fact that it didn't match a pattern? So that it doesn't waste time recomputing a complex time-consuming pattern ...
16
votes
1answer
345 views
How do you set attributes on SubValues?
SubValues, as discussed in a previous question, are declared as follows
...
16
votes
2answers
279 views
Context unique to each group at a specified level
Recent versions of Mathematica provide the option of having a unique $Context for each cell group, via:
Evaluation > Notebook's Default Context > Unique to Each ...
23
votes
4answers
841 views
How do I evaluate only one step of an expression?
I am looking for a simple, robust way to evaluate an expression only one step, and return the result in a held form.
The definition of a single step is ambiguous, and this itself is probably worthy ...
14
votes
5answers
276 views
5
votes
1answer
132 views
How to simplify expression and use HoldForm at the same time?
Hopefully a simple problem for the experts here.
I have a need many times to build a symbolic expression for an equation (say a PDE) to use for plot labels in a low level function inside Manipulate, ...
16
votes
3answers
425 views
Asynchronous evaluation: Is it possible?
Currently we have a limited number of ways to perform asynchronous evaluation.
The most common is through Dynamic and ...
8
votes
3answers
153 views
How can I test properties of a symbol from the string name without the symbol completely evaluating
Suppose I have a few symbols, one of which has a value:
{abc1, abc2 = 5, abc3};
I can use Names to get the list of names, as ...
31
votes
3answers
9k views
Get a “step by step” evaluation in Mathematica
Is it possible in Mathematica to get a step-by-step evaluation of some functions; that's to say, outputting not only the result but all the stages that have led to it?
Example : Let's say I want to ...
10
votes
1answer
259 views
Manipulate evaluation sequence
Manipulate doesn't always evaluate in the order I expect it to. What is the evaluation sequence for Manipulate and other ...


