Matematické Fórum

Archiv diskusního fóra o matematice, 2006–2026

Toto je archiv Matematického Fóra. Fórum je dostupné jen ke čtení. Můžete se ale zaregistrovat na náš Discord server.

#1 20. 05. 2015 19:29

Seidloza
Zelenáč
Příspěvky: 1
Škola: Technická univerzita v Liberci
Pozice: student
Reputace:   0 
 

Řešení diferecniální rovnice metodou sítí v matlabu

Dobrý den,

potřeboval bych poradit s řešením rovnice u′′ + xu - u = -x^2 - 2 na  intervalu (0; 1) , kde u (0) = u (1) = 0, pomocí metody sítí v matlabu. V matlabu jsem úplný začátečník

Zatím jsem byl schopen dát dohromady toto:

function [ x,u] = Metoda_siti( h )

syms x y
n=round(1/h);
x=0:h:1;
u(0)=0;
u(1)=0;
u=zeros(1,n-1);
b=zeros(n-1,1);
A=eye(n-1);

for i=1:n-1
   
    x(i)=h*i;
   
    A(i,i+1)=(u(i+1)/h^2)+u(i)*((-2/(h^2))+x(i)-1)+u(i-1)/(h^2);
    A(i+1,i)=(u(i+1)/h^2)+u(i)*((-2/(h^2))+x(i)-1)+u(i-1)/(h^2);
   
    b(i)=(-(x(i)^2))-2;
   
end

y=A\b;
u=[0,y',0];
plot(x,u)

end

takto napsané mi to píše chybu: Attempted to access u(0); index must be a positive integer or logical.

Zde jsem se zasekl a nevím co s tí dál. Prosím o radu.

Děkuji

Offline

  • (téma jako vyřešené označil(a) Seidloza)

Archiv Matematického Fóra · stav k 30. 8. 2026 · 633 258 příspěvků v 108 818 tématech