% Řešení okrajové úlohy -(p(x)u')' + q(x)u = f(x)
% Příklad 1: -u''+u=x, u(0)=1, u(1)=0
p=@(x)ones(size(x));
q=@(x)ones(size(x));
f=@(x)x;
I=[0,1];
BV=[1,0];
N=20;
[xx,uu]=solveBP_FEM(p,q,f,I,BV,N);  % přibližné řešení
%
% najdeme přesné řešení
syms P(x) Q(x) F(x) U(x)
P(x)=1; Q(x)=1;F(x)=x;
DU(x)=diff(U(x));
U(x)=dsolve(-diff(P*DU)+Q*U==F,U(0)==1,U(1)==0);
u=matlabFunction(U);
% porovnání přesného a přibližného řešení
plot(xx,uu,xx,u(xx),'--')