Why Does DSolve Work with s[x] but Not y[x] in Mathematica?

  • Context: Mathematica 
  • Thread starter Thread starter Shinaolord
  • Start date Start date
  • Tags Tags
    Mathematica Strange
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
9 replies · 7K views
Shinaolord
Messages
92
Reaction score
4
So when i use the following command, I get the following error
DSolve[y'[x] - y[x] == 3, y[x], x]
DSolve::deqn: Equation or list of equations expected instead of False in the first argument False. >>

But when i change the variable y[x] and y'[x] to s[x] and s'[x], It works
why is this?
In[185]:= DSolve[s'[x] - s[x] == 3, s[x], x]

Out[185]= {{s[x] -> -3 + E^x C[1]}}
 
Physics news on Phys.org
I tried clearing it with clear all and clear [f,y,x] but it still doesn't work. I think it's strange, maybe y didn clear properly?
 
Clear[y] does remove function definitions and Clear[y[x]] fails.

Code:
In[1]:= y[x_] := 3 x

In[2]:= ?y

Out[2]= Global`y
Out[2]= y[x_]:=3 x

In[3]:= Clear[y]

In[4]:= ?y

Out[4]= Global`y

In[5]:= y[x] := 3 x

In[6]:= Clear[y[x]]

Clear::ssym: y[x] is not a symbol or a string. >>

As the IT Guy says, "Have you tried turning it off and turning it back on again" (possibly trying a ?y before anything else and then just entering that DSolve line and nothing else)?
 
Bill Simpson said:
Clear[y] does remove function definitions and Clear[y[x]] fails.

You're right, I'm wrong. Apologies for the mis-information.
 
Code:
In[1]:= y[x_] := E^x

In[2]:= DSolve[y'[x] == y[x], y[x], x]

Out[2]= During evaluation of In[2]:= DSolve::dsfun: E^x cannot be used as a function. >>
Out[2]= DSolve[True, E^x, x]

In[3]:= Clear[y]

In[4]:= DSolve[y'[x] == y[x], y[x], x]

Out[4]= {{y[x] -> E^x C[1]}}
 
I've always wanted to see a great example where Clear wasn't enough and Remove was necessary, not just some weird trick, but really interesting use that could be learned from and applied in useful ways in the future.
 
Ah, I didn't know there was a remove function! Hopefully that works, I'll try it momentarily. And yes, I restarted Mathematica several times and it persisted.

I tried it in the document where it wasn't working, and it didn't work. However i downlaoded another copy of the assignment and it worked with y[x]! Strange.
 
Last edited: