Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[Matlab] - Układ równań różniczkowych

weratyr17 22 Lis 2012 17:38 2010 6
  • #1 22 Lis 2012 17:38
    weratyr17
    Poziom 2  

    Witam

    Chce rozwiązać układ równań różniczkowych przy pomocy Matlaba.
    Jeśli wpiszę do Matlaba:

    >> [x,g,y,z]=dsolve('Dx=x+2*y-z','Dg=x','Dy=x+Dz','Dz=4*x-4*y+5*z+2')

    Otrzymuję rozwiązania:
    x = C12 - (C13*exp(t))/2 + C14/(4*exp(2*t)) + (C15*exp(3*t))/4 + 1/3

    g = (3*C15*exp(3*t))/4 - C14/(2*exp(2*t)) - (C13*exp(t))/2

    y = (C13*exp(t))/2 + (5*C14)/(4*exp(2*t)) + (5*C15*exp(3*t))/4 - 1/3

    z = C13*exp(t) + C14/exp(2*t) + C15*exp(3*t) - 2/3

    Gdzie C to stałe. Jeśli zdefiniuję jakieś warunki początkowe to dostaje pełne rozwiązania.

    Jeśli skomplikuję te równania, Matlab już nie wylicza rozwiązań. Po wpisaniu:

    >> [x,z,y,p]=dsolve('Dx=z','Dz=20-0.0016666666*p-0.00002*z-0,981','Dy=100*p-6*Dz-5886','p=30000/(y-x)')

    Wyskakują mi błędy:

    ??? Error using ==> dsolve>mupadDsolve at 215
    Unable to solve ODE: Illegal equations [ode::new]

    Error in ==> dsolve at 114
    [R,var_list,order] = mupadDsolve(ignoreConstraints,varargin{1:narg});

    Czy ktoś mógłby mi pomóc? Dlaczego tak się dzieje? Czy mógłby ktoś wpisać do swojego Matlaba i czy występuje podobny problem?

    0 6
  • #2 22 Lis 2012 18:58
    greatadrian
    Poziom 14  

    1. Jak zapisujemyw Matlabie symbol dziesiętny?
    2. Czy taka definicja p jest poprawna? Skoro jest nie jest uwikłane, czemu nie wstawić?

    0
  • #3 22 Lis 2012 19:51
    weratyr17
    Poziom 2  

    Poprawiłem i dzieją się dalej dziwne rzeczy. Po wpisaniu:
    >>[x,z,y]=dsolve('Dx=z','Dz=20-(0.0016666666*30000/(y-x))-0.00002*z-0.981','Dy=100*(30000/(y-x))-6*Dz-5886')

    Wyskakuje:
    Warning: Explicit solution could not be found.
    > In dsolve at 120

    x =

    [ empty sym ]


    z =

    []


    y =

    []

    Jak to interpretować?

    0
  • #4 22 Lis 2012 19:58
    stanleysts
    Poziom 27  

    Być może obiekty symboliczne trzeba na początku zdefiniować? Nie pamiętam tego do końca, dawno nie korzystałem.

    0
  • #5 22 Lis 2012 19:59
    greatadrian
    Poziom 14  

    Prosto, równanie nie może być rozwiązane analitycznie.
    Kolej na metody numeryczne.

    0
  • #6 22 Lis 2012 20:22
    weratyr17
    Poziom 2  

    Jak działają te metody? Jak się ich używa? Jakiś przykład?

    0
  Szukaj w 5mln produktów