Papierfalten

Mathematische Modellierung mit dem CAS Maple V

Arbeitsgemeinschaft der Jugendakademie Mannheim
am Ludwig-Frank-Gymnasium Mannheim


Tobias Wißler , Stefan Becherer, Henrick Hambsch, Ole Böttcher

Waldemar Schulgowski, Konstantin Elizarov
Leitung: M. Laule

Papierfalten-HP.mws

Aufgabenstellung

Das mehrfache Falten eines Papierstreifens liefert sehr unübersichtliche Ergebnisse.

[Maple OLE 2.0 Object]

Mit Hilfe eines Computeralgebrasystems sollen entsprechende Muster erzeugt und untersucht werden.

Mathematisches Modell

I [Maple Plot]        II   [Maple Plot]

III [Maple Plot]       IV     [Maple Plot]

Wir durchlaufen die Kanten von unten nach oben und notieren, ob es sich um Links- bzw. Rechtskurven handelt.

I

L

II

L L  R

III

L L R   L   L R R

IV

L L R L L R R   L   L L R R L R R

usw.

Ein Bildungsgesetz lässt sich demnach wie folgt notieren:

[Maple OLE 2.0 Object]

Bei der Realisierung mit Maple durchlaufen wir die Kanten und erzeugen abwechselnd links und rechts neue Ecken und somit eine neue Faltung.

 

Lösung mit Maple V

Notwendige Prozeduren

>    restart:with(plots):with(linalg):

Warning, the name changecoords has been redefined

Warning, the protected names norm and trace have been redefined and unprotected

>    Neue_Ecke:=proc(P,Q,r)
global NP;
local M;
    M:=evalm(1/2*(P+Q));
    if r mod 2 <> 0 then
        NP:=evalm(M+1/2*[Q[2]-P[2],P[1]-Q[1]]);
    else
        NP:=evalm(M+1/2*[P[2]-Q[2],Q[1]-P[1]]);
    fi;
    NP:=convert(NP,list)
end:

>    P:=[-2.,-3.];Q:=[2.,3.];

P := [-2., -3.]

Q := [2., 3.]

>    Neue_Ecke(P,Q,2);

[-3.000000000, 2.000000000]

>    plot([P,NP,Q],scaling=constrained);

[Maple Plot]

>    falten_vorne:=proc(liste)
global h;
local i;    
    h:=[liste[1]];
    for i from 1 to nops(liste)-1 do
        Neue_Ecke(liste[i],liste[i+1],i);
        h:=[op(h),NP,liste[i+1]];
    od;
end:

>    falten_hinten:=proc(liste)
global h;
local i;    
    h:=[liste[1]];
    for i from 1 to nops(liste)-1 do
        Neue_Ecke(liste[i],liste[i+1],i+1);
        h:=[op(h),NP,liste[i+1]];
    od;
end:

>    liste:=[P,Q];

liste := [[-2., -3.], [2., 3.]]

>   

Falten in einer Richtung (nach vorne):
p[10](v,v,v,v,v,v,v,v,v,v)

>    Bilder1:=proc(liste,n)
global h,plotliste;
local i;    
    h:=liste;plotliste:=[plot(h)];
    for i from 1 to n do
        falten_vorne(h);
        plotliste:=[op(plotliste),plot(h)];
    od;
end:

>    Bilder1(liste,10):

>    display(plotliste,insequence=true,scaling=constrained,\
        title=`Faltpolygon p[10](v,v,v,v,v,v,v,v,v,v)`,\
        titlefont=[TIMES,ITALIC,24],thickness=2);

[Maple Plot]

>   

Falten in zwei Richtungen (nach vorne und nach hinten)

  p[10](v,v,v,v,v,v,v,v,v,h)

>    Bilder2:=proc(liste,n)
global h,plotliste;
local i;    
    h:=liste;plotliste:=[plot(h)];
    for i from 1 to n-1 do
        falten_vorne(h);
        plotliste:=[op(plotliste),plot(h)];
    od;
    falten_hinten(h);
    plotliste:=[op(plotliste),plot(h)];
end:

>    Bilder2(liste,10):

>    display(plotliste,insequence=true,scaling=constrained,\
        title=`Faltpolygon p[10](v,v,v,v,v,v,v,v,v,h)`,\
        titlefont=[TIMES,ITALIC,24],thickness=2);

[Maple Plot]

>   

  p[10](v,v,h,v,v,h,v,v,h,v)

>    Bilder3:=proc(liste,n)
global h,plotliste;
local i;    
    h:=liste;plotliste:=[plot(h)];
    for i from 1 to n do
        if i mod 3 <> 0 then
            falten_vorne(h);
            plotliste:=[op(plotliste),plot(h)]
        else
            falten_hinten(h);
            plotliste:=[op(plotliste),plot(h)]
        fi;
    od;
end:

>    Bilder3(liste,10):

>    display(plotliste,insequence=true,scaling=constrained,\
        title=`Faltpolygon p[10](v,v,h,v,v,h,v,v,h,v)`,\
        titlefont=[TIMES,ITALIC,24],thickness=2);

[Maple Plot]

>   

  p[10](v,h,v,h,v,h,v,h,v,h)

>    Bilder4:=proc(liste,n)
global h,plotliste;
local i;    
    h:=liste;plotliste:=[plot(h)];
    for i from 1 to n do
        if i mod 2 <> 0 then
            falten_vorne(h);
            plotliste:=[op(plotliste),plot(h)]
        else
            falten_hinten(h);
            plotliste:=[op(plotliste),plot(h)]
        fi;
    od;
end:

>    Bilder4(liste,10):

>    display(plotliste,insequence=true,scaling=constrained,\
        title=`Faltpolygon p[10](v,h,v,h,v,h,v,h,v,h)`,\
        titlefont=[TIMES,ITALIC,24],thickness=2);

[Maple Plot]

>   

Literatur

Zühlke : Über Papierfalten und Drachenkurven zu Methoden der Fraktalen Geometrie

MNU 50/1

Diemer/ Bachert/ Laule : Mathematik mit Maple V

Dümmler

Westermann, Buhmann, Diemer, Endres, Laule, Wilke : Mathematische Begriffe visualisiert mit Maple

Springer