Filter löschen
Filter löschen

dsolve gives wrong equations?

1 Ansicht (letzte 30 Tage)
daniel slama
daniel slama am 18 Jun. 2022
Kommentiert: daniel slama am 19 Jun. 2022
hey all!
so i'm trying to learn how dsolve and I know i'm doing something incorrectly but i don't know exactly what.
it could just be that everything is in order but i am just bad at math lol.
anyway, examples are below/ would love some help.
>> syms y(x)
>> dsolve(diff(y)==y+sin(x))
ans =
C1*exp(x) - (2^(1/2)*cos(x - pi/4))/2 %should'nt the correct answer be -1/2*cos(t)-1/2*sin(t)+exp(t)*C1?
e.g 2:
syms y(x)
>> dsolve((diff(y))^2+y^2==1)
ans =
(exp(C1*1i - x*1i)*(exp(- C1*2i + x*2i) + 1))/2 %shoud'nt these two be sin(s-C1) and -sin(s-C1)?
(exp(C2*1i + x*1i)*(exp(- C2*2i - x*2i) + 1))/2
1 %legit
-1 %legit

Akzeptierte Antwort

Torsten
Torsten am 18 Jun. 2022
Bearbeitet: Torsten am 18 Jun. 2022
There are often several ways to write a function. But it seems to me that your S2 solutions are not independent.
syms y(x) C1
S1 = dsolve(diff(y)==y+sin(x))
S1 = 
S2 = -1/2*cos(x)-1/2*sin(x)+exp(x)*C1
S2 = 
res1 = simplify(diff(S1,x)-S1-sin(x))
res1 = 
0
res2 = simplify(diff(S2,x)-S2-sin(x))
res2 = 
0
S1 = dsolve((diff(y))^2+y^2==1)
S1 = 
S2 = [sin(x-C1) ;-sin(x-C1)]
S2 = 
res1 = simplify(diff(S1,x).^2+S1.^2-1)
res1 = 
res2 = simplify(diff(S2,x).^2+S2.^2-1)
res2 = 
  1 Kommentar
daniel slama
daniel slama am 19 Jun. 2022
damn, TYSM.
i never would have figured this out on my own

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Symbolic Math Toolbox finden Sie in Help Center und File Exchange

Produkte


Version

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by