octave:2> N=10 N = 10 octave:3> a=0 a = 0 octave:4> b=1 b = 1 octave:5> h=(b-a)/(N-1) h = 0.11111 octave:6> ya=2 ya = 2 octave:7> yb=5 yb = 5 octave:8> disp('Incognite interne') Incognite interne octave:9> A=toeplitz([-2,1,zeros(1,N-4)]) A = -2 1 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 1 -2 1 0 0 0 0 0 0 1 -2 octave:10> A=A/h^2 A = -162 81 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 81 -162 octave:11> b=zeros(N-2,1); octave:12> b(1)=-ya/h^2; octave:13> b(N-2)=-yb/h^2; octave:14> y=A\b y = 2.3333 2.6667 3.0000 3.3333 3.6667 4.0000 4.3333 4.6667 octave:15> x=linspace(a,b,N)'; warning: implicit conversion from real matrix to real scalar octave:16> x=linspace(0,1,N)'; octave:17> plot(x,[ya;y:yb]) error: number of columns must match (3 != 1) error: evaluating argument list element number 2 octave:17> plot(x,[ya;y;yb]) octave:18> plot(x,[ya;y;yb],'*') octave:19> disp('Con incognite al bordo') Con incognite al bordo octave:20> A=toeplitz([-2,1,zeros(1,N-2)])/h^2 A = -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 octave:21> A(1,:)=[1,zeros(1,N-1)]; octave:22> A(N,:)=[1,zeros(1,N-1)]; octave:23> A A = 1 0 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 1 0 0 0 0 0 0 0 0 0 octave:24> A(N,:)=[zeros(1,N-1),1] A = 1 0 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 81 -162 81 0 0 0 0 0 0 0 0 0 1 octave:25> b=zeros(N,1); octave:26> b(1)=ya; octave:27> b(N)=yb; octave:28> yy=A\b yy = 2.0000 2.3333 2.6667 3.0000 3.3333 3.6667 4.0000 4.3333 4.6667 5.0000 octave:29> plot(x,[ya;y;yb],'*',x,yy,'o') octave:30> diary off