%
% Numerische Loesung des Problems -u''=f in (0, 1), u(0) = u(1) = 0
% mittels stueckweise LINEAREN Finiten-Elemente (zur Serie 5, Aufgabe 5).
%
% T. Mitkova, Oktober 2009
%

% Testproblem
f = inline(..); % die rechte Seite
u = inline(..); % die exakte Loesung

h = ..; % Maschenweite
x = ..; % aequidistantes Gitter auf [0, 1]

N = ..; % Anzahl der Gitterpunkte

Ae = ..; % Elementsteifigkeitsmatrix

A = sparse(N, N); % Steifigkeitsmatrix
b = zeros(N, 1); % Lastvektor

for el = 1 : .. % Assemblierung loop "uber alle Elemente (elementweises Vorgehen)
    
    A(..) = ..;
    
    % Auswertung der rechten Seite in den Quadraturpunkten
    fe = ..;
    
    % Elementlastvektor (berechnet mit der Simpson-Regel)
    be = ..;
    
    b(..) = ..;
end

% Beruecksichtugung der Dirichlet-Randbedingungen
% (Zeilen fuer die Randelemente aendern)
A(..) = ..; b(..) = ..; % Randpunkt x = 0
A(..) = ..; b(..) = ..; % Randpunkt x = 1

uh = ..; % Loese das lineare Gleichungssystem

% Graphische Darstellung
figure
x_plot = 0 : 0.001 : 1; 
plot(x', uh, '-*', x_plot, feval(u, x_plot), 'k-')
legend('numerisch', 'exakt')