Questions about Mathematica's rule-based replacement functionality, including functions such as Rule (->), Replace, ReplaceAll (/.) and ReplaceRepeated (//.).
10
votes
6answers
912 views
Replacing composite variables by a single variable
To replace a single variable by another variable, one can simply use the the replace all (/.) operator (e.g., ...
19
votes
2answers
633 views
Mathematica for Computer Scientists
Background
I've coded in C/Scheme for 10 years. I have a BS CS.
I've recently become very interested in pattern-matching (lisp's match macro), and term rewriting systems, which brought me to ...
19
votes
2answers
692 views
Extracting values from nested rules in JSON data
I have been using Mathematica to analyse some data from the StackExchange API. It is conveniently available in JSON form, which Mathematica interprets as replacement rules. However, some of the rules ...
7
votes
6answers
772 views
How do I replace a variable in a polynomial?
How do I substitue z^2->x in the following polynomial z^4+z^2+4?
z^4+z^2+4 /. z^2->x
...
8
votes
3answers
599 views
Replace expressions with symbols
First of all: I'm new to mathematica, so I would appreciate it if the answers are quite complete.
I have the result of calculation that is expressed in $\sin$ and $\cos$. Now, all of these can be ...
10
votes
1answer
180 views
Transform an expression into a graph that can be plotted with TreeGraph (not TreeForm)
I would like to plot an expression (like TreeForm does), but using the new TreeGraph functionality.
...
5
votes
6answers
315 views
How to simplify a complicated Sum in terms of power Sums?
For example, I have:
$a=\sum _{r=1}^n x_r
\left(\left(\sum _{i=1}^n
x_i-x_r\right){}^2-\sum
_{i=1}^n x_i^2\right)$
...
4
votes
2answers
230 views
18
votes
1answer
213 views
replacement rules from a pattern and a matching expression
(This seems to be a very basic necessity in a language having pattern-matching capabilities such as Mathematica, yet I struggled for many hours to find a common solution to this problem.)
Suppose ...
7
votes
1answer
78 views
Performance of Dispatch and lists of Rules
First of all, I have seen the question "Why is this parallel evaluation with Dispatch[] so slow?", but that seems to be a different matter.
My question arose when I tried to answer this question by ...
7
votes
2answers
189 views
Why does the name of a pattern affect the result of a transformation rule?
I was playing a little dirty, trying to get a template for defining a Curl[] operator.
I wrote the following rule, which I knew was going to spit out a few ...
9
votes
2answers
160 views
How to extract a specific element from EXIF photographic metadata?
It's now possible to import photographs into Mathematica and import the EXIF data at the same time:
i = Import["ExampleData/coneflower.jpg", "ImageWithExif"]
...
5
votes
3answers
420 views
How to use results of NDsolve[] for further solving of ODEs?
I have a system of ODEs with 10 eqns. I can solve the first 5 independently. How can I use those results to solve for the remaining 5?
An easy example would be
$\dot{x}=f(x), \quad
\dot{y}=g(x,y)$
...
7
votes
4answers
216 views
“Strange” behavior of Rule
According to the Help
lhs->rhs evaluates rhs immediately.
How to understand the output of the following code?
ClearAll@x;
{1, 3.5} /. x_?IntegerQ -> {x}
...
8
votes
2answers
453 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 ...
7
votes
1answer
160 views
Is it possible to specify a context-sensitive, “depth-agnostic” rewrite rule?
I'm using the term "depth-agnostic" in this post to describe structural patterns featuring a "target" sub-pattern that can occur "at any depth" relative to one or more "context" sub-patterns.
As a ...
7
votes
3answers
144 views
6
votes
3answers
443 views
Arithmetic operation on the value returned by Solve
I want to modify the value that is returned by Solve. Example:
SolC1 = Solve[Sin[ π x / L] == 1, x]
{{x -> L/2}}
I need to add n to x so that x becomes ...
3
votes
3answers
272 views
How to replace all occurrences of an element in a list?
Consider the following:
list={1,2,2,2,3};
I would like to replace all 2 with the string "Test". ...
3
votes
3answers
312 views
Changing variables algebraically
Suppose one has two functions, $y(x)$ and $z(x)$, and one seeks to obtain $y(z)$ by substituting $x(z)$ into $y(x)$. Can this be done in a single step? Or must $z(x)$ first be inverted independently? ...
2
votes
2answers
98 views
0
votes
1answer
151 views
Arbitrary depth patterns/rules
Temporary message: I am now really confused. I am not sure how using Power and Unevaluated together works in the examples below.
While answering this question, I stumbled upon the following.
We ...