clear all
format long ;

F = inline('-x*y');     % Integrand

n = 2 ;                                      % Anzahl der Dreiecke

%         x1   y1   x2   y2   x3   y3
xyEck = [ -1 , -2 ,  5 , -1 ,  3 ,  5 ;
          -1 , -2 ,  3 ,  5 , -5 ,  7 ] ;    % Eckpunkte der Dreiecke

nGauss = 3 ;
Li = [ 0.5 , 0.5 , 0   ;                     % Natürliche Koordinaten der Gaußpunkte
       0   , 0.5 , 0.5 ;
       0.5 , 0   , 0.5 ] ;
Wi2 = [ 1/3 , 1/3 , 1/3 ] ;                  % Gewichtskoeffizienten 2Wi*

I = 0 ;
for i = 1:n
   A2 = (xyEck(i,3)-xyEck(i,1))*(xyEck(i,6)-xyEck(i,2)) - ...
        (xyEck(i,5)-xyEck(i,1))*(xyEck(i,4)-xyEck(i,2)) ;
   Ii = 0 ;
   for j = 1:nGauss
      x  = xyEck(i,1)*Li(j,1) + xyEck(i,3)*Li(j,2) + xyEck(i,5)*Li(j,3) ;
      y  = xyEck(i,2)*Li(j,1) + xyEck(i,4)*Li(j,2) + xyEck(i,6)*Li(j,3) ;
      Ii = Ii + Wi2(j)*F(x,y)*0.5 ;
   end
   I = I + Ii*A2 ;
end

disp(['Gauß-Formel mit 3 Punkten:  Ixy = ', num2str(I)]) ;
