B6

Contents

Called Functions

A21

a=complex(0,0); b=complex(-6,4);  c = complex(3,-5);
x = quadform(a,b,c)

a=[1,3,-3]; b=[2,4,complex(-3,4)]; c = [2, -3, 6];
x = quadform(a,b,c)

%x = quadform('st',b,c)
x =

   0.7308 - 0.3462i   0.7308 - 0.3462i


x =

  -1.0000 + 1.0000i  -1.0000 - 1.0000i
   0.5352 + 0.0000i  -1.8685 + 0.0000i
  -1.8657 + 0.9107i   0.8657 + 0.4226i

A22

close all
x = linspace(-2,2,500);

plot(x,sinh(x),'r-',x,cosh(x),'b-',x,tanh(x),'k-')
legend('sinh','conh','tanh',4)
title('My Plot')
xlabel('x')
ylabel('f(x)')

A23

clc
clear all
close all
figure;
hold on
for i = 1:100
   A = randn(100);
   E = eig(A);
   plot(E,'k*')
   pause(0.1)
end
figure;
hold on
for i = 1:100
   A = complex(randn(100),randn(100));
   E = eig(A);
   plot(E,'k*')
   pause(0.1)
end

A24

close all
f=@(x,y) (x.^2+3*y.^2).*exp(-x.^2-y.^2);
x=linspace(-3,3,100);
y=linspace(-3,3,100);

MySub2D(f,x,y)
%input('Press ENTER')

g=@(x,y) (-3*y)./(x.^2+y.^2+1);
x=linspace(-2,2,100);
y=linspace(-4,4,100);
MySub2D(g,x,y)
% input('Press ENTER')

h=@(x,y) abs(x)+abs(y);
x=linspace(-1,1,100);
y=linspace(-1,1,100);
MySub2D(h,x,y)
MySub2D
function MySub2D(f,x,y)
figure;
subplot(1,2,1);

[X,Y] = meshgrid(x,y);
surf(X,Y,f(X,Y))
title('f(x)')

subplot(1,2,2);
contour(X,Y,f(X,Y),20)

title('f(x) Contourlinien')
end
quadform
function x = quadform(A,B,C)
% QUADFORM berechnet Nullstellen.
% ax^2 - bx + c
% a,b,c können auch Vektoren seien.
if (~(isnumeric(A) && isnumeric(B) && isnumeric(C)))
    error('Fehler: Einer der Parameter war keine Zahl.')
end
if (length(A)==length(B) && length(B)==length(C))
    for i=1:length(A)
        a=A(i); b=B(i); c=C(i);
        if a==0
            if b==0
                error('Fehler: Konstante Funktion übergeben.');
            else
                x(i,1:2)=-c/b;
            end
        else
            d = sqrt(b^2 - 4*a*c);
            x(i,1) = (-b+d) / (2*a);
            x(i,2) = (-b-d) / (2*a);
        end
    end
else
    error('Fehler: A,B,C von unterschiedlicher Größe!')
end
end