Questions about Mathematica's rule-based replacement functionality, including functions such as Rule (->), Replace, ReplaceAll (/.) and ReplaceRepeated (//.).
2
votes
1answer
91 views
Confused behavior using Dispatch to sort one list relative to another
I have a need to sort the entries of one list into the same sequence as the entries in a reference list. Because I have rather large lists involving strings, I'm trying to use Dispatch to accomplish ...
18
votes
1answer
223 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 ...
2
votes
2answers
92 views
Modify a sub-part of a sub-list only
I have this list:
a = {{{0, 0}, {1, 7}, {2, 0}, {3, 2}, {4, 7}}, {{0, 0}, {1, 0}, {2, 1}, {3, 2}, {4, 7}}}
and I'd like to transform it to this:
...
8
votes
1answer
142 views
error when defining a compiled function with ReplacePart
I always have difficulty in writing a non-trivial compiled function. I'm using Mathematica 9. Please see the following code
...
0
votes
2answers
85 views
How to use Solve rules as a function body?
Solve gives me an expression which I want to use as the body of a function. Rather than run Solve every time inside my function ...
9
votes
2answers
162 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"]
...
8
votes
2answers
117 views
Replacing product expressions - named vs. unnamed pattern?
Suppose I have an expression of the form
a b c d + x y z
The FullForm of this is
...
7
votes
4answers
170 views
Generating all matrices with 1 (possibly) replaced by -1
I have a matrix $M$, whose dimension I am unsure of, which has only $\lbrace0,1\rbrace$ entries. I would like to generate all the possible matrices that result from changing (some subset) of the $1$'s ...
0
votes
1answer
99 views
Extract a value from a list of InterpolatingFunction
By running the code
n = 5;
U[t_] := Table[Subscript[u, i][t], {i, 0, n}];
lines = NDSolve[{eqns, initc}, U[t], {t, 0, T}]
I get the output
...
0
votes
2answers
71 views
Extract a List of Co-ordinates from a List of Complex Solutions
Let's say I have this list of solutions from a previous computation:
...
0
votes
0answers
105 views
How to apply rules to the elements of a sparse array? [closed]
I have two text files that I am importing, one is a sparse array of format {large row index,column,value1} and the other is {large row index,value2}. The row values are a small subset of a much larger ...
2
votes
1answer
119 views
#[[1]]//FullForm = 1?
I have a set of symbolic algebraic expressions that I'm trying to get some speed into. To illustrate the issue, I'll use a simple form like { k0 X, k1 Y, k1 Z}, ...
1
vote
4answers
144 views
Extracting RHS from Rule
In an example from another question, the rhs of a list of rules can be simply extracted:
...
3
votes
1answer
97 views
$Post with ReplaceAll [closed]
I'd like to have a ReplaceAll applied to every output in my notebook. When I try this using $Post, e.g. by writing
...
0
votes
1answer
70 views
What exactly happens when adding a Blank after a built-in function used in the rules of ReplaceAll?
Well, this question is just for curiosity, personally I never use ReplaceAll like this:
...
7
votes
2answers
186 views
Using ReplaceAll on SparseArray
I'm using SparseArrays in a notebook in which I am doing complex conjugation manually, i.e. writing $\sqrt{-1}$ as i and ...
4
votes
2answers
108 views
Confusing ReplaceRepeated & Hold
I've been bootstrapping myself to the very alien world of Mathematica and there came my first WTF moment:
...
10
votes
1answer
190 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.
...
1
vote
1answer
779 views
Converting polar coordinate expression to cartesian coordinates
An intermediate step in my analysis requires me to work in polar coordinates, but I would like to convert the results back into cartesian coordinates. The conversion is very simple but tedious for ...
7
votes
1answer
162 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 ...
8
votes
7answers
222 views
Indexed replacement
Is there some equivalence of MapIndexed for rules?
Consider a substitution on
3 a + 4 b + 21 c + ....
The first integer I want to replace by 1, the second ...
6
votes
2answers
195 views
7
votes
2answers
193 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 ...
1
vote
2answers
125 views
Using patterns in ReplaceAll to extract elements from tuples at arbitrary depths
Please consider the following:
I need to extract from MyList all last parts of each 3-tuple.
...
3
votes
2answers
171 views
Creating a Nearest function programmatically
I've been trying to work out how to create a Nearest function programmatically. My goal is to produce something similar to this, a hand-assembled function:
...
5
votes
3answers
457 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)$
...
1
vote
3answers
256 views
How to manipulate nested expressions?
I have the following expression, only slightly complicated, and I'd like to do two things:
Plot the elements of the lists (though messy, all are in the same
...
3
votes
1answer
108 views
Pattern matching a multivariate derivative
I can extract the parameters of a single variable derivative with the rule
D[f[x], x] /. Derivative[order_][fcn_][variable_] ->
{order, fcn, variable}
...
19
votes
2answers
646 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 ...
4
votes
2answers
156 views
Returning Replacement Rules in a function and using it later on
I would like a function which returns replacement rules as some internal mathematica functions are doing and use the results in other functions.
I could not find any information on that and I'm ...
2
votes
2answers
192 views
How to do substitution of variable with power in Mathematica?
I want to replace $x^{i+1}$ with $z_i$.
EDIT:
I have some latex equations, and wish to import them to MMa.
How to replace x_i (NOT $x_i$) with $x[i]$
But it seems the underscore "_" has a special ...
7
votes
3answers
146 views
3
votes
1answer
110 views
Set promotes Rule to RuleDelayed?
In mentally building a model of how Mathematica works, I naively expected Set to create a Rule in a symbol's ...
9
votes
4answers
172 views
Leave expression tree formatting the same when a replacement rule is applied
If I type e1 := 3 x + 2 (1 + y) z // TreeForm, I get an expression tree. If I then type e1 /. x -> 3, I get another ...
4
votes
3answers
248 views
Replace function and its derivatives found with Solve
If I have an equation
eq = f[x] + g[x] == 0
and I solve for f[x]
sol = Solve[eq,f[x]]
...
0
votes
1answer
91 views
Numerical rule evaluation -> {True, False} to deviation of target equation
I solve some equations numerically with FindRoot[] returning a quadruple {1,2,3,4}.
Because the solver sometimes do not find any roots depending on parameterization of these equations I select only ...
0
votes
1answer
470 views
Plot is not showing [closed]
I've used Wolfram Mathematica 8 Trial version for two days. Any pointers are appreciated. Thanks in advance!
EDIT: There are supposed to be 4 plots, but only 3 are showing. Everything works except ...
8
votes
2answers
139 views
Representing a value in an output as a self defined variable
I'm trying to find a way to have Mathematica always represent a numerical value as a self defined variable that I define using lhs=rhs. For example, if I execute
...
4
votes
2answers
238 views
6
votes
2answers
427 views
Speeding up mathematica by subsitituting numerical values
According to this Wolfram Blog post, one can speed up Mathematica code by substituting numerical values as soon as possible.
How does one substitute before the main expression is evaluated? The ...
6
votes
1answer
142 views
ReplaceAll inside an Iterator
I'd like to apply a set of rules to an expression defining the iterators of the table, like this:
...
3
votes
3answers
293 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". ...
12
votes
6answers
955 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
750 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 ...
8
votes
3answers
373 views
How to implement a regular grammar?
What is the most simple, elegant way of implementing a rewrite-system defined as:
$$
\begin{aligned}
\Sigma &= \{a_1, a_2, a_3, ...\} \\
N &= \{A_1, A_2, A_3, ...\} \\
\{\alpha_1 , ...
8
votes
2answers
473 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 ...
3
votes
3answers
328 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? ...
6
votes
3answers
453 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 ...
15
votes
3answers
389 views
Using results of Reduce
Suppose I have function f:
f[x_, y_] := 50000 + x 30000 + y 35000;
Now I want to find the x and y when f[]<=200000.
I use Reduce:
...
6
votes
3answers
237 views
Replacement rule only matches part of expression
I have the result of a calculation (which is too long to mention here) and it gives
...