Error in TransformedFieldUsing spherical derivatives with NDSolveIs there an easy way to transform unit...
Is divide-by-zero a security vulnerability?
Why are special aircraft used for the carriers in the United States Navy?
An Undercover Army
Preparing as much as possible of a cake in advance
Are small insurances worth it
Convert an array of objects to array of the objects' values
ESPP--any reason not to go all in?
Does the US political system, in principle, allow for a no-party system?
What is "desert glass" and what does it do to the PCs?
Are angels creatures (Mark 16:15) and can they repent (Rev 2:5 and Rom 8:21)
How to make sure I'm assertive enough in contact with subordinates?
What is the meaning of option 'by' in TikZ Intersections
What does it mean when I add a new variable to my linear model and the R^2 stays the same?
Why won't the strings command stop?
PTiJ: How should animals pray?
When to use the term transposed instead of modulation?
Why aren't there more gauls like Obelix?
What does "rhumatis" mean?
PTIJ: Mouthful of Mitzvos
Learning to quickly identify valid fingering for piano?
Can inspiration allow the Rogue to make a Sneak Attack?
If nine coins are tossed, what is the probability that the number of heads is even?
Align equations with text before one of them
The past tense for the quoting particle って
Error in TransformedField
Using spherical derivatives with NDSolveIs there an easy way to transform unit vectors from spherical to Cartesian coordinates?Why does a transform from polar coordinates using `TransformedField` not agree with by-hand calculation?ListDensityPlot in Polar coordinates with a higher efficiencyChanging from Cartesian to polar coordinates in partial differential equationA little confused about coordinate conversionInverse substitution polar-cartesianIntegration using polar coordinatesPlotting a function $psi(rho,theta,phi)$ in spherical coordinatesTransform a field with derivatives
$begingroup$
I am using TransformedField
to convert a system of ODEs from Cartesian to polar coordinates:
TransformedField[
"Cartesian" -> "Polar",
{μ x1 - x2 - σ x1 (x1^2 + x2^2), x1 + μ x2 - σ x2 (x1^2 + x2^2)},
{x1, x2} -> {r, θ}
] // Simplify
and I get the result
{r μ - r^3 σ, r}
but I am pretty sure that the right answer should be
{r μ - r^3 σ, 1}
Where is the error?
coordinate-transformation
$endgroup$
add a comment |
$begingroup$
I am using TransformedField
to convert a system of ODEs from Cartesian to polar coordinates:
TransformedField[
"Cartesian" -> "Polar",
{μ x1 - x2 - σ x1 (x1^2 + x2^2), x1 + μ x2 - σ x2 (x1^2 + x2^2)},
{x1, x2} -> {r, θ}
] // Simplify
and I get the result
{r μ - r^3 σ, r}
but I am pretty sure that the right answer should be
{r μ - r^3 σ, 1}
Where is the error?
coordinate-transformation
$endgroup$
add a comment |
$begingroup$
I am using TransformedField
to convert a system of ODEs from Cartesian to polar coordinates:
TransformedField[
"Cartesian" -> "Polar",
{μ x1 - x2 - σ x1 (x1^2 + x2^2), x1 + μ x2 - σ x2 (x1^2 + x2^2)},
{x1, x2} -> {r, θ}
] // Simplify
and I get the result
{r μ - r^3 σ, r}
but I am pretty sure that the right answer should be
{r μ - r^3 σ, 1}
Where is the error?
coordinate-transformation
$endgroup$
I am using TransformedField
to convert a system of ODEs from Cartesian to polar coordinates:
TransformedField[
"Cartesian" -> "Polar",
{μ x1 - x2 - σ x1 (x1^2 + x2^2), x1 + μ x2 - σ x2 (x1^2 + x2^2)},
{x1, x2} -> {r, θ}
] // Simplify
and I get the result
{r μ - r^3 σ, r}
but I am pretty sure that the right answer should be
{r μ - r^3 σ, 1}
Where is the error?
coordinate-transformation
coordinate-transformation
edited 6 hours ago
MarcoB
36.9k556113
36.9k556113
asked 6 hours ago
rparpa
856
856
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
$begingroup$
We can test the built-in TransformedField
by defining our own functions.
From $x',y'$ to $r',theta'$, we derive:
$$
r' = left(sqrt{x^2 +y^2} right)'
= frac{(x^2 +y^2)'}{2
sqrt{x^2 +y^2}}=frac{xx' +yy'}{r}
$$
and
$$
theta' = left(arctan frac{y}{x} right)'
= frac{(y/x)'}{1+(y/x)^2} = frac{y' x -x' y}{r^2}.
$$
First, we define
rdot[x1_, x2_] := (x1 (μ x1 - x2 - σ x1 (x1^2 + x2^2)) + x2 (x1 + μ x2 - σ x2 (x1^2 + x2^2)))/r
We now make the substitution and simplify
rdot[r Cos[t], r Sin[t]] // FullSimplify
This yields (matches Mathematica)
$$r' = mu r-r^3 sigma$$
We now do the same for the other
thetadot[x1_,x2_]:=(x1 (x1+μ x2-σ x2 (x1^2+x2^2)) - x2(μ x1-x2-σ x1 (x1^2+x2^2)))/r^2
We now make the substitution and simplify
thetadot[r Cos[t], r Sin[t]] // FullSimplify
This yields (does not match Mathematica - it is as though they are forgetting to divide by $r$)
$$theta'= 1$$
I have asked this question before on this site in two different ways and have never gotten an answer that resolves the matter, but that could just be my denseness!
$endgroup$
1
$begingroup$
Have you reported it to the Wolfram tech support?
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I have not. I have had many issues with it when transforming between different methods. These days, I don't trust it and just create my own transformation rules to do it.
$endgroup$
– Moo
2 hours ago
$begingroup$
It is worth to write them about it in order to get it finally fixed. You can even write a short letter to support@wolfram.com with a link to this post.
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I sent them an email per your suggestion.
$endgroup$
– Moo
2 hours ago
add a comment |
$begingroup$
Mathematica's answer is correct and consistent with your expectations, but you are not accounting for the basis of the vector field.
TransformedField
transforms a vector field between two coordinate systems and bases. In this case, it is converting from $f(x,y)hat x+g(x,y)hat y$ to the same geometrical vector field expressed as $u(r,theta)hat r + v(r,theta) hat theta$. Mathematica's answer can therefore be interpreted as saying
$$left(μ x_1 - x_2 - σ x_1 (x_1^2 + x_2^2)right)hat x + left( x_1 + μ x_2 - σ x_2 (x_1^2 + x_2^2)right)hat y = left(r μ - r^3 σright)hat r + r hattheta$$
Notice that the expressions $r'$ and $theta'$ don't appear anyhwere. Those are dynamical quantities, not geometrical ones (unless working in the jet bundle, but let's not go there). Also notice the hats! As stated in the documentation, TransformedField
assumes inputs are in an orthonormal basis, and returns outputs in the same basis. That will be important for later on.
Now, you are dealing with a differential equation, and based on your expected answer I'll assume what you have is a first-order system and you are transforming the associated vector field (AKA the "right-hand side"). Finding solutions means find the integral curves of the vector field. This gives as a nice relationship between the geometric variables the dynamical ones, except that this relationship is of necessity expressed in the so called coordinate basis, written $(r',theta') = a frac{partial}{partial r} + b frac{partial}{partial theta}$. So to get the answer expressed in your desired basis, we need the relationship between the coordinate and orthonormal basis vectors. As is covered in books on vector calculus (and elsewhere), the relationsip is $hat r = frac{partial}{partial r}$ and $hat theta = frac{1}{r}frac{partial}{partial theta}$. Substituting this into the answer Mathematica gave above, we get
$$left(r μ - r^3 σright)hat r + r hattheta = left(r μ - r^3 σright) frac{partial}{partial r} + (1) frac{partial}{partial theta},$$
which is the answer you expected.
$endgroup$
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "387"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f192821%2ferror-in-transformedfield%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
We can test the built-in TransformedField
by defining our own functions.
From $x',y'$ to $r',theta'$, we derive:
$$
r' = left(sqrt{x^2 +y^2} right)'
= frac{(x^2 +y^2)'}{2
sqrt{x^2 +y^2}}=frac{xx' +yy'}{r}
$$
and
$$
theta' = left(arctan frac{y}{x} right)'
= frac{(y/x)'}{1+(y/x)^2} = frac{y' x -x' y}{r^2}.
$$
First, we define
rdot[x1_, x2_] := (x1 (μ x1 - x2 - σ x1 (x1^2 + x2^2)) + x2 (x1 + μ x2 - σ x2 (x1^2 + x2^2)))/r
We now make the substitution and simplify
rdot[r Cos[t], r Sin[t]] // FullSimplify
This yields (matches Mathematica)
$$r' = mu r-r^3 sigma$$
We now do the same for the other
thetadot[x1_,x2_]:=(x1 (x1+μ x2-σ x2 (x1^2+x2^2)) - x2(μ x1-x2-σ x1 (x1^2+x2^2)))/r^2
We now make the substitution and simplify
thetadot[r Cos[t], r Sin[t]] // FullSimplify
This yields (does not match Mathematica - it is as though they are forgetting to divide by $r$)
$$theta'= 1$$
I have asked this question before on this site in two different ways and have never gotten an answer that resolves the matter, but that could just be my denseness!
$endgroup$
1
$begingroup$
Have you reported it to the Wolfram tech support?
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I have not. I have had many issues with it when transforming between different methods. These days, I don't trust it and just create my own transformation rules to do it.
$endgroup$
– Moo
2 hours ago
$begingroup$
It is worth to write them about it in order to get it finally fixed. You can even write a short letter to support@wolfram.com with a link to this post.
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I sent them an email per your suggestion.
$endgroup$
– Moo
2 hours ago
add a comment |
$begingroup$
We can test the built-in TransformedField
by defining our own functions.
From $x',y'$ to $r',theta'$, we derive:
$$
r' = left(sqrt{x^2 +y^2} right)'
= frac{(x^2 +y^2)'}{2
sqrt{x^2 +y^2}}=frac{xx' +yy'}{r}
$$
and
$$
theta' = left(arctan frac{y}{x} right)'
= frac{(y/x)'}{1+(y/x)^2} = frac{y' x -x' y}{r^2}.
$$
First, we define
rdot[x1_, x2_] := (x1 (μ x1 - x2 - σ x1 (x1^2 + x2^2)) + x2 (x1 + μ x2 - σ x2 (x1^2 + x2^2)))/r
We now make the substitution and simplify
rdot[r Cos[t], r Sin[t]] // FullSimplify
This yields (matches Mathematica)
$$r' = mu r-r^3 sigma$$
We now do the same for the other
thetadot[x1_,x2_]:=(x1 (x1+μ x2-σ x2 (x1^2+x2^2)) - x2(μ x1-x2-σ x1 (x1^2+x2^2)))/r^2
We now make the substitution and simplify
thetadot[r Cos[t], r Sin[t]] // FullSimplify
This yields (does not match Mathematica - it is as though they are forgetting to divide by $r$)
$$theta'= 1$$
I have asked this question before on this site in two different ways and have never gotten an answer that resolves the matter, but that could just be my denseness!
$endgroup$
1
$begingroup$
Have you reported it to the Wolfram tech support?
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I have not. I have had many issues with it when transforming between different methods. These days, I don't trust it and just create my own transformation rules to do it.
$endgroup$
– Moo
2 hours ago
$begingroup$
It is worth to write them about it in order to get it finally fixed. You can even write a short letter to support@wolfram.com with a link to this post.
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I sent them an email per your suggestion.
$endgroup$
– Moo
2 hours ago
add a comment |
$begingroup$
We can test the built-in TransformedField
by defining our own functions.
From $x',y'$ to $r',theta'$, we derive:
$$
r' = left(sqrt{x^2 +y^2} right)'
= frac{(x^2 +y^2)'}{2
sqrt{x^2 +y^2}}=frac{xx' +yy'}{r}
$$
and
$$
theta' = left(arctan frac{y}{x} right)'
= frac{(y/x)'}{1+(y/x)^2} = frac{y' x -x' y}{r^2}.
$$
First, we define
rdot[x1_, x2_] := (x1 (μ x1 - x2 - σ x1 (x1^2 + x2^2)) + x2 (x1 + μ x2 - σ x2 (x1^2 + x2^2)))/r
We now make the substitution and simplify
rdot[r Cos[t], r Sin[t]] // FullSimplify
This yields (matches Mathematica)
$$r' = mu r-r^3 sigma$$
We now do the same for the other
thetadot[x1_,x2_]:=(x1 (x1+μ x2-σ x2 (x1^2+x2^2)) - x2(μ x1-x2-σ x1 (x1^2+x2^2)))/r^2
We now make the substitution and simplify
thetadot[r Cos[t], r Sin[t]] // FullSimplify
This yields (does not match Mathematica - it is as though they are forgetting to divide by $r$)
$$theta'= 1$$
I have asked this question before on this site in two different ways and have never gotten an answer that resolves the matter, but that could just be my denseness!
$endgroup$
We can test the built-in TransformedField
by defining our own functions.
From $x',y'$ to $r',theta'$, we derive:
$$
r' = left(sqrt{x^2 +y^2} right)'
= frac{(x^2 +y^2)'}{2
sqrt{x^2 +y^2}}=frac{xx' +yy'}{r}
$$
and
$$
theta' = left(arctan frac{y}{x} right)'
= frac{(y/x)'}{1+(y/x)^2} = frac{y' x -x' y}{r^2}.
$$
First, we define
rdot[x1_, x2_] := (x1 (μ x1 - x2 - σ x1 (x1^2 + x2^2)) + x2 (x1 + μ x2 - σ x2 (x1^2 + x2^2)))/r
We now make the substitution and simplify
rdot[r Cos[t], r Sin[t]] // FullSimplify
This yields (matches Mathematica)
$$r' = mu r-r^3 sigma$$
We now do the same for the other
thetadot[x1_,x2_]:=(x1 (x1+μ x2-σ x2 (x1^2+x2^2)) - x2(μ x1-x2-σ x1 (x1^2+x2^2)))/r^2
We now make the substitution and simplify
thetadot[r Cos[t], r Sin[t]] // FullSimplify
This yields (does not match Mathematica - it is as though they are forgetting to divide by $r$)
$$theta'= 1$$
I have asked this question before on this site in two different ways and have never gotten an answer that resolves the matter, but that could just be my denseness!
edited 4 hours ago
answered 4 hours ago
MooMoo
7511515
7511515
1
$begingroup$
Have you reported it to the Wolfram tech support?
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I have not. I have had many issues with it when transforming between different methods. These days, I don't trust it and just create my own transformation rules to do it.
$endgroup$
– Moo
2 hours ago
$begingroup$
It is worth to write them about it in order to get it finally fixed. You can even write a short letter to support@wolfram.com with a link to this post.
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I sent them an email per your suggestion.
$endgroup$
– Moo
2 hours ago
add a comment |
1
$begingroup$
Have you reported it to the Wolfram tech support?
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I have not. I have had many issues with it when transforming between different methods. These days, I don't trust it and just create my own transformation rules to do it.
$endgroup$
– Moo
2 hours ago
$begingroup$
It is worth to write them about it in order to get it finally fixed. You can even write a short letter to support@wolfram.com with a link to this post.
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I sent them an email per your suggestion.
$endgroup$
– Moo
2 hours ago
1
1
$begingroup$
Have you reported it to the Wolfram tech support?
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
Have you reported it to the Wolfram tech support?
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I have not. I have had many issues with it when transforming between different methods. These days, I don't trust it and just create my own transformation rules to do it.
$endgroup$
– Moo
2 hours ago
$begingroup$
@AlexeyPopkov: I have not. I have had many issues with it when transforming between different methods. These days, I don't trust it and just create my own transformation rules to do it.
$endgroup$
– Moo
2 hours ago
$begingroup$
It is worth to write them about it in order to get it finally fixed. You can even write a short letter to support@wolfram.com with a link to this post.
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
It is worth to write them about it in order to get it finally fixed. You can even write a short letter to support@wolfram.com with a link to this post.
$endgroup$
– Alexey Popkov
2 hours ago
$begingroup$
@AlexeyPopkov: I sent them an email per your suggestion.
$endgroup$
– Moo
2 hours ago
$begingroup$
@AlexeyPopkov: I sent them an email per your suggestion.
$endgroup$
– Moo
2 hours ago
add a comment |
$begingroup$
Mathematica's answer is correct and consistent with your expectations, but you are not accounting for the basis of the vector field.
TransformedField
transforms a vector field between two coordinate systems and bases. In this case, it is converting from $f(x,y)hat x+g(x,y)hat y$ to the same geometrical vector field expressed as $u(r,theta)hat r + v(r,theta) hat theta$. Mathematica's answer can therefore be interpreted as saying
$$left(μ x_1 - x_2 - σ x_1 (x_1^2 + x_2^2)right)hat x + left( x_1 + μ x_2 - σ x_2 (x_1^2 + x_2^2)right)hat y = left(r μ - r^3 σright)hat r + r hattheta$$
Notice that the expressions $r'$ and $theta'$ don't appear anyhwere. Those are dynamical quantities, not geometrical ones (unless working in the jet bundle, but let's not go there). Also notice the hats! As stated in the documentation, TransformedField
assumes inputs are in an orthonormal basis, and returns outputs in the same basis. That will be important for later on.
Now, you are dealing with a differential equation, and based on your expected answer I'll assume what you have is a first-order system and you are transforming the associated vector field (AKA the "right-hand side"). Finding solutions means find the integral curves of the vector field. This gives as a nice relationship between the geometric variables the dynamical ones, except that this relationship is of necessity expressed in the so called coordinate basis, written $(r',theta') = a frac{partial}{partial r} + b frac{partial}{partial theta}$. So to get the answer expressed in your desired basis, we need the relationship between the coordinate and orthonormal basis vectors. As is covered in books on vector calculus (and elsewhere), the relationsip is $hat r = frac{partial}{partial r}$ and $hat theta = frac{1}{r}frac{partial}{partial theta}$. Substituting this into the answer Mathematica gave above, we get
$$left(r μ - r^3 σright)hat r + r hattheta = left(r μ - r^3 σright) frac{partial}{partial r} + (1) frac{partial}{partial theta},$$
which is the answer you expected.
$endgroup$
add a comment |
$begingroup$
Mathematica's answer is correct and consistent with your expectations, but you are not accounting for the basis of the vector field.
TransformedField
transforms a vector field between two coordinate systems and bases. In this case, it is converting from $f(x,y)hat x+g(x,y)hat y$ to the same geometrical vector field expressed as $u(r,theta)hat r + v(r,theta) hat theta$. Mathematica's answer can therefore be interpreted as saying
$$left(μ x_1 - x_2 - σ x_1 (x_1^2 + x_2^2)right)hat x + left( x_1 + μ x_2 - σ x_2 (x_1^2 + x_2^2)right)hat y = left(r μ - r^3 σright)hat r + r hattheta$$
Notice that the expressions $r'$ and $theta'$ don't appear anyhwere. Those are dynamical quantities, not geometrical ones (unless working in the jet bundle, but let's not go there). Also notice the hats! As stated in the documentation, TransformedField
assumes inputs are in an orthonormal basis, and returns outputs in the same basis. That will be important for later on.
Now, you are dealing with a differential equation, and based on your expected answer I'll assume what you have is a first-order system and you are transforming the associated vector field (AKA the "right-hand side"). Finding solutions means find the integral curves of the vector field. This gives as a nice relationship between the geometric variables the dynamical ones, except that this relationship is of necessity expressed in the so called coordinate basis, written $(r',theta') = a frac{partial}{partial r} + b frac{partial}{partial theta}$. So to get the answer expressed in your desired basis, we need the relationship between the coordinate and orthonormal basis vectors. As is covered in books on vector calculus (and elsewhere), the relationsip is $hat r = frac{partial}{partial r}$ and $hat theta = frac{1}{r}frac{partial}{partial theta}$. Substituting this into the answer Mathematica gave above, we get
$$left(r μ - r^3 σright)hat r + r hattheta = left(r μ - r^3 σright) frac{partial}{partial r} + (1) frac{partial}{partial theta},$$
which is the answer you expected.
$endgroup$
add a comment |
$begingroup$
Mathematica's answer is correct and consistent with your expectations, but you are not accounting for the basis of the vector field.
TransformedField
transforms a vector field between two coordinate systems and bases. In this case, it is converting from $f(x,y)hat x+g(x,y)hat y$ to the same geometrical vector field expressed as $u(r,theta)hat r + v(r,theta) hat theta$. Mathematica's answer can therefore be interpreted as saying
$$left(μ x_1 - x_2 - σ x_1 (x_1^2 + x_2^2)right)hat x + left( x_1 + μ x_2 - σ x_2 (x_1^2 + x_2^2)right)hat y = left(r μ - r^3 σright)hat r + r hattheta$$
Notice that the expressions $r'$ and $theta'$ don't appear anyhwere. Those are dynamical quantities, not geometrical ones (unless working in the jet bundle, but let's not go there). Also notice the hats! As stated in the documentation, TransformedField
assumes inputs are in an orthonormal basis, and returns outputs in the same basis. That will be important for later on.
Now, you are dealing with a differential equation, and based on your expected answer I'll assume what you have is a first-order system and you are transforming the associated vector field (AKA the "right-hand side"). Finding solutions means find the integral curves of the vector field. This gives as a nice relationship between the geometric variables the dynamical ones, except that this relationship is of necessity expressed in the so called coordinate basis, written $(r',theta') = a frac{partial}{partial r} + b frac{partial}{partial theta}$. So to get the answer expressed in your desired basis, we need the relationship between the coordinate and orthonormal basis vectors. As is covered in books on vector calculus (and elsewhere), the relationsip is $hat r = frac{partial}{partial r}$ and $hat theta = frac{1}{r}frac{partial}{partial theta}$. Substituting this into the answer Mathematica gave above, we get
$$left(r μ - r^3 σright)hat r + r hattheta = left(r μ - r^3 σright) frac{partial}{partial r} + (1) frac{partial}{partial theta},$$
which is the answer you expected.
$endgroup$
Mathematica's answer is correct and consistent with your expectations, but you are not accounting for the basis of the vector field.
TransformedField
transforms a vector field between two coordinate systems and bases. In this case, it is converting from $f(x,y)hat x+g(x,y)hat y$ to the same geometrical vector field expressed as $u(r,theta)hat r + v(r,theta) hat theta$. Mathematica's answer can therefore be interpreted as saying
$$left(μ x_1 - x_2 - σ x_1 (x_1^2 + x_2^2)right)hat x + left( x_1 + μ x_2 - σ x_2 (x_1^2 + x_2^2)right)hat y = left(r μ - r^3 σright)hat r + r hattheta$$
Notice that the expressions $r'$ and $theta'$ don't appear anyhwere. Those are dynamical quantities, not geometrical ones (unless working in the jet bundle, but let's not go there). Also notice the hats! As stated in the documentation, TransformedField
assumes inputs are in an orthonormal basis, and returns outputs in the same basis. That will be important for later on.
Now, you are dealing with a differential equation, and based on your expected answer I'll assume what you have is a first-order system and you are transforming the associated vector field (AKA the "right-hand side"). Finding solutions means find the integral curves of the vector field. This gives as a nice relationship between the geometric variables the dynamical ones, except that this relationship is of necessity expressed in the so called coordinate basis, written $(r',theta') = a frac{partial}{partial r} + b frac{partial}{partial theta}$. So to get the answer expressed in your desired basis, we need the relationship between the coordinate and orthonormal basis vectors. As is covered in books on vector calculus (and elsewhere), the relationsip is $hat r = frac{partial}{partial r}$ and $hat theta = frac{1}{r}frac{partial}{partial theta}$. Substituting this into the answer Mathematica gave above, we get
$$left(r μ - r^3 σright)hat r + r hattheta = left(r μ - r^3 σright) frac{partial}{partial r} + (1) frac{partial}{partial theta},$$
which is the answer you expected.
answered 36 mins ago
Itai SeggevItai Seggev
9,6883964
9,6883964
add a comment |
add a comment |
Thanks for contributing an answer to Mathematica Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f192821%2ferror-in-transformedfield%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown