H03 – Eulerverfahren, induzierte Matrixnorm

 

Aufgabe 4

Gegeben sei die Anfangswertaufgabe {y^\prime } = -10\left( {y-{t^2}} \right)+2t,\quad u\left( 0 \right) = 0.

  1. Geben Sie das explizite Eulerverfahren {u_{k+1}} = {u_k}+\tau f\left( {{t_k},{u_k}} \right) für diesen Fall an
  2. Geben Sie das implizite Eulerverfahren {u_{k+1}} = {u_k}+\tau f\left( {{t_{k+1}},{u_{k+1}}} \right) für diesen Fall an und lösen Sie die Gleichung nach {u_{k+1}} auf.

Aufgabe 5

Es sei x \in {\mathbb{R}^n} und A \in {\mathbb{R}^{n \times n}}. Zeigen Sie, dass die 1-Norm {\left\| x \right\|_1}: = \sum\limits_{i = 1, \ldots ,n} {\left| {{x_i}} \right|} die Spaltensummennorm {\left\| A \right\|_1}: =  \max \limits_{j = 1, \ldots ,n} \sum\limits_{i = 1, \ldots ,n} {\left| {{a_{ij}}} \right|} induziert.

Lösung zu Aufgabe 4

a )

{y^\prime } = -10\left( {y-{t^2}} \right)+2t,\quad u\left( 0 \right) = 0
{u_{k+1}} = {u_k}+\tau \left( {-10\left( {{u_k}-t_k^2} \right)+2{t_k}} \right)

b )

{y^\prime } = -10\left( {y-{t^2}} \right)+2t,\quad u\left( 0 \right) = 0

{u_{k+1}} = {u_k}+\tau \left( {-10\left( {{u_{k+1}}-t_{k+1}^2} \right)+2{t_{k+1}}} \right)

{u_{k+1}} = {u_k}-10\tau {u_{k+1}}+10\tau t_{k+1}^2+2{t_{k+1}}

{u_{k+1}}\left( {1+10\tau } \right) = {u_k}+10\tau t_{k+1}^2+2{t_{k+1}}

{u_{k+1}} = \frac{{{u_k}+10\tau t_{k+1}^2+2{t_{k+1}}}}{{1+10\tau }}

{u_{k+1}} = \frac{{{u_k}+2\tau {t_{k+1}}\left( {1+5{t_{k+1}}} \right)}}{{1+10\tau }}

Programmierung in Matlab:

t1     = 0 : 0.25  : 5;
t2     = 0 : 0.225 : 5;
t3     = 0 : 0.15  : 5;
tExact = 0 : 0.05 : 5;

yImp1 = zeros(1, length(t1));
yImp2 = zeros(1, length(t2));
yImp3 = zeros(1, length(t3));
yExp1 = zeros(1, length(t1));
yExp2 = zeros(1, length(t2));
yExp3 = zeros(1, length(t3));

for i = 1 : length(t1) - 1
    yExp1(i + 1) = yExp1(i) + 0.25 * (-10 * (yExp1(i) - t1(i)^2) + 2 * t1(i));
    yImp1(i + 1) = (yImp1(i) + 2 * 0.25 * t1(i + 1) ...
            * (1 + 5 * t1(i + 1))) / (1 + 10 * 0.25);
end

for i = 1 : length(t2) - 1
    yExp2(i + 1) = yExp2(i) + 0.225 * (-10 * (yExp2(i) - t2(i)^2) + 2 * t2(i));
    yImp2(i + 1) = (yImp2(i) + 2 * 0.225 * t2(i + 1) ...
            * (1 + 5 * t2(i + 1))) / (1 + 10 * 0.225);
end

for i = 1 : length(t3) - 1
    yExp3(i + 1) = yExp3(i) + 0.15 * (-10 * (yExp3(i) - t3(i)^2) + 2 * t3(i));
    yImp3(i + 1) = (yImp3(i) + 2 * 0.15 * t3(i + 1) ...
            * (1 + 5 * t3(i + 1))) / (1 + 10 * 0.15);
end

yExact = tExact .* tExact;
subplot(3, 1, 1), plot(t1, yImp1, t1, yExp1, tExact, yExact), ...
        legend('implizit 0.25', 'explizit 0.25', 'Exakt', -1), title('0.25')
subplot(3, 1, 2), plot(t2, yImp2, t2, yExp2, tExact, yExact), ...
        legend('implizit 0.225', 'explizit 0.225', 'Exakt', -1), title('0.225')
subplot(3, 1, 3), plot(t3, yImp3, t3, yExp3, tExact, yExact), ...
        legend('implizit 0.15', 'explizit 0.15', 'Exakt', -1), title('0.15')

figure(2);
semilogy(t1, abs(yImp1 - t1 .* t1), t1, abs(yExp1 - t1 .* t1), ...
         t2, abs(yImp2 - t2 .* t2), t2, abs(yExp2 - t2 .* t2), ...
         t3, abs(yImp3 - t3 .* t3), t3, abs(yExp3 - t3 .* t3))
legend('implizit 0.25', 'explizit 0.25', 'implizit 0.225', ...
       'explizit 0.225', 'implizit 0.15', 'explizit 0.15', -1)

Lösung zu Aufgabe 5

Analog zum Vorgehen in der Seminarübung zeigen wir:

{\left\| A \right\|_1} = \alpha

Sei \alpha  =  \max \limits_{j = 1, \ldots ,n} \sum\limits_{i = 1, \ldots ,n} {\left| {{a_{ij}}} \right|}. Abschätzung:

{\left\| {Ax} \right\|_1}: = \sum\limits_{i = 1, \ldots ,n} {\sum\limits_{j = 1, \ldots ,n} {\left| {{a_{ij}}{x_j}} \right|} }  \leq \sum\limits_{j = 1, \ldots ,n} {\left\{ {\sum\limits_{i = 1, \ldots ,n} {\left| {{a_{ij}}} \right|} } \right\}\left| {{x_j}} \right|}

\leq \sum\limits_{j = 1, \ldots ,n} {\left\{ { \max \limits_{j = 1, \ldots ,n} \sum\limits_{i = 1, \ldots ,n} {\left| {{a_{ij}}} \right|} } \right\}\left| {{x_j}} \right|}  \leq \alpha {\left\| x \right\|_1}

\quad  \Rightarrow \quad {\left\| A \right\|_1} \leq \alpha

Wir gehen nun davon aus, dass

\alpha  =  \max \limits_{j = 1, \ldots ,n} \sum\limits_{i = 1, \ldots ,n} {\left| {{a_{ij}}} \right|}

für einen Index \tilde j erreicht wird. Unter Benutzung des Einheitsvektors {e_{\tilde j}} erhalten wir:

\alpha  =  \max \limits_{j = 1, \ldots ,n} \sum\limits_{i = 1, \ldots ,n} {\left| {{a_{ij}}} \right|}  = \sum\limits_{i = 1, \ldots ,n} {\left| {{a_{i\tilde j}}} \right|}  = \sum\limits_{i = 1, \ldots ,n} {\sum\limits_{j = 1, \ldots ,n} {\left| {{a_{ij}} \cdot  {\delta _{j\tilde j}}} \right|} }

= {\left\| {A{e_{\tilde j}}} \right\|_1} \leq {\left\| A \right\|_1}{\left\| {{e_{\tilde j}}} \right\|_1} = {\left\| A \right\|_1}

\quad  \Rightarrow \quad \alpha  \leq {\left\| A \right\|_1}

Insgesamt ist damit:

{\left\| A \right\|_1} = \alpha

Die Norm ist dabei definiert als:

\left\| A \right\| =  \sup \limits_{\left\| x \right\| \ne 0} \frac{{\left\| {Ax} \right\|}}{{\left\| x \right\|}}