Mathematica Solving equation using mathematica

  • Thread starter Thread starter 76Ahmad
  • Start date Start date
  • Tags Tags
    Mathematica
AI Thread Summary
The discussion centers on using Mathematica to solve the equation y^4 + 2y^2x^2 - 15x = 0 for integer values of x from 0 to 10,000 and y from 0 to 100. A user seeks guidance on implementing loops to systematically check each combination of x and y, starting with x=0 and iterating through all values of y before moving to the next x. Suggestions include using nested For loops to evaluate the equation and print results whenever a solution is found. Additionally, a method to print diagnostic messages at intervals (e.g., every 50 values of x and y) is proposed to track progress and the number of solutions found. The conversation highlights the importance of ensuring that all values are checked correctly and provides examples of output from the implemented code.
76Ahmad
Messages
46
Reaction score
0
Hello every one, I need help please...

How to write in mathematica to solve an equation of x and y that is equal to 0,
(i.e. y^4+2y^2x^2-15x=0)
and let the program try all the value of x=0,1,2,3,...,10000.
and all the value of y=0,1,2,3,...,100.

The program should start with x=0 and try all the 100 value of y,
and then go to the next x.

Please help..thanks
 
Physics news on Phys.org
How about just some For loops:

Code:
For[y = 0, y <= 10000, y++,
 For[x = 0, x <= 100, x++,
  If[y^4 + 2 y^2 x^2 - 15 x == 0,
    Print["My x: ", x, " my y: ", y];
    ];
  ]
 ]

or FindInstance does this but I'm not sure if we can assume the function is attempting the solutions in the order you wish.

Code:
FindInstance[
 y^4 + 2 y^2 x^2 - 15 x == 0 && 0 <= x <= 10000 && 0 <= y <= 100, {x, 
  y}, Integers]
 
I tried the the first one and the out put was:

My x: 0 my y: 0

I do not know if its checked all the values correctly?
how to make it print for example on each 50x

x=50 no solutions
x=100 no solutions
x=150 no solutions
.
.
.
 
Perhaps you can learn how to use If and Mod to print diagnostic messages.

In[1]:= numsolutions=0;
For[y=0,y<=10000,y++,
For[x=0,x<=100,x++,
If[y^4+2 y^2 x^2-15 x==0,numsolutions++;Print["My x: ",x," my y: ",y];];
If[Mod[y,50]==0&&Mod[x,50]==0, Print["y=",y," x=",x, " ", numsolutions," solutions"]];
]
]

From In[1]:= My x: 0 my y: 0
From In[1]:= y=0 x=0 1 solutions
From In[1]:= y=0 x=50 1 solutions
From In[1]:= y=0 x=100 1 solutions
From In[1]:= y=50 x=0 1 solutions
From In[1]:= y=50 x=50 1 solutions
From In[1]:= y=50 x=100 1 solutions
From In[1]:= y=100 x=0 1 solutions
 

Similar threads

Replies
1
Views
2K
Replies
4
Views
2K
Replies
3
Views
2K
Replies
5
Views
2K
Replies
4
Views
3K
Replies
9
Views
3K
Back
Top