Matlab - Runge-Kutta de ordinul 5
Last Updated: Apr 02 2014 13:58, Started by
lupulalbastru1
, Mar 31 2014 16:27
·
0
#1
Posted 31 March 2014 - 16:27
Buna!
Am o intrebare, la o problema in Matlab, daca poate cineva sa ma ajute, va rog. Să se rezolve următoarea problemă Cauchy, folosind funcția Matlab care se bazează și pe metoda Runge-Kutta de ordinul 5: 2⋅y "'+3⋅y = t2⋅et, y(2)=y '(2)=y "(2)=-1, t∈[2,4] Codul l-am scris asa: function dy=ecdif(t,y) dy=(t.^2.*exp(t)-3*y)./2; %conditia initiala y0=-1; %domeniul dom=[2,4]; %rezolvarea ecuatiei diferentiale [xval,yval]=ode45('ecdif',dom,y0) %reprezentarea grafica a solutiei plot(xval,yval) Dar cand ii dau RUN imi da eroarea: ??? Input argument "t" is undefined. Error in ==> ecdif at 2 dy=(t.^2.*exp(t)-3*y)./2; Nu stiu de ce da eroarea asta si cum sa o rezolv. |
#2
Posted 31 March 2014 - 17:27
Pai nu ai definit t-ul. Cel putin, asa suna mesajul de eroare. Si nici nu il vad in codul tau.
|
#3
Posted 31 March 2014 - 19:33
Nu a definit nici y. Din câte știu nu e nevoie să dai run la o funcție. Ci o apelezi direct (eventual te asiguri că fișierul este adăugat în calea în care caută MATLAB funcțiile).
|
#4
Posted 01 April 2014 - 21:44
Functia o definesti intr-un fisier separat, apoi o chemi co ode45. Uitate pe exemplele din matlab, in fereastra de comezi ii dai "help ode45".
|
Anunturi
Bun venit pe Forumul Softpedia!
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users