Sunday
Sunday

Reputation: 87

Symbolical mathematical problem (mathematica)

I got given this question in my tutorial for which I could do parts a) and b). Do you have any ideas for part c)?

Question : Symbolically solve the following equation for the quantity r=y/x:

3/y^4==3/x^4+a/(x+2y)^4

(a) Use Map or Thread to perform the substitution y->r x to both sides of the equation.

 ans:    
    3/(r^4 x^4) == 3/x^4 + a/(x + 2 r x)^4

(b) Plot the solutions for a\[Element]{-1,1}. For a\[Element]{-1,1}, how many solutions are real valued? Does this number depend on a ?

 ans: Graph and 4 solutions and no its doesn't depend on `a`. 

enter image description here

(c) Construct numerical solutions by letting a run between -1 and 1 with steps of 0.02 in your solutions obtained above. Use Cases to choose solutions whenever they are real, and using ListPlot, plot all the real solutions occurring in the interval a\[Element]{-1,1}.

Ans : no idea.

Upvotes: 2

Views: 382

Answers (1)

Sasha
Sasha

Reputation: 5954

You can shortcut a) and b) by using Eliminate. You can also ask Mathematica to solve equations over reals. (In v8):

In[538]:= eq = 
 Eliminate[3/y^4 == 3/x^4 + a/(x + 2 y)^4 && r == y/x, {x, y}]

Out[538]= -24 r - 72 r^2 - 96 r^3 + (-45 + a) r^4 + 24 r^5 + 72 r^6 + 
  96 r^7 + 48 r^8 == 3

In[539]:= r /. Solve[eq && -1 < a < 1, r, Reals]

Out[539]= {ConditionalExpression[
  Root[-3 - 24 #1 - 72 #1^2 - 96 #1^3 + (-45 + a) #1^4 + 24 #1^5 + 
     72 #1^6 + 96 #1^7 + 48 #1^8 &, 1], -1 < a < 0 || 
   0 < a < Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 
       110250 #1^3 - 225 #1^4 + #1^5 &, 1] || 
   Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 110250 #1^3 - 
       225 #1^4 + #1^5 &, 1] < a < 1], 
 ConditionalExpression[
  Root[-3 - 24 #1 - 72 #1^2 - 96 #1^3 + (-45 + a) #1^4 + 24 #1^5 + 
     72 #1^6 + 96 #1^7 + 48 #1^8 &, 2], -1 < a < 0 || 
   0 < a < Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 
       110250 #1^3 - 225 #1^4 + #1^5 &, 1] || 
   Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 110250 #1^3 - 
       225 #1^4 + #1^5 &, 1] < a < 1], 
 ConditionalExpression[
  Root[-3 - 24 #1 - 72 #1^2 - 96 #1^3 + (-45 + a) #1^4 + 24 #1^5 + 
     72 #1^6 + 96 #1^7 + 48 #1^8 &, 3], 
  0 < a < Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 
      110250 #1^3 - 225 #1^4 + #1^5 &, 1]], 
 ConditionalExpression[
  Root[-3 - 24 #1 - 72 #1^2 - 96 #1^3 + (-45 + a) #1^4 + 24 #1^5 + 
     72 #1^6 + 96 #1^7 + 48 #1^8 &, 4], 
  0 < a < Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 
      110250 #1^3 - 225 #1^4 + #1^5 &, 1]]}

You can then plot the resulting solution:

enter image description here

The Out[539] gives you exact algebraic solutions along with conditions when they are real. So the maximum number of real solutions is 4 and occurs when a is between zero and Root[-184528125 + 267553125 #1 + 11238750 #1^2 + 110250 #1^3 - 225 #1^4 + #1^5 &, 1]

Now, let's get to part c). You should use NSolve to construct all solutions. Then, as suggested Cases to extract real solutions, and then ListPlot:

Table[Thread[{a, 
    Cases[r /. NSolve[eq, r], r_ /; Im[r] == 0]}], {a, -1, 1, 
   0.02}] // ListPlot

enter image description here

Upvotes: 1

Related Questions