E1
Durch zweimaliges Klicken auf den äusseren Balken mit dem Fähnchen unten kann man die Zellen auf- und zuklappen!!!
Klicke auf den rechten äusseren Balken und drücke dann die "Enter-Taste", wenn der Balken sich schwarz verfärbt hat!
Erst Eingaben
Voreinstellung Eckpunktskoordinaten
Skizzen
Rechnung (in der Reihenfolge der Zeilen Run machen)
Eingabe von Eckpunktskoordinaten (in der Reihenfolge der Zeilen Run machen)
A1
A2
A3
A4
inpQKoord=Input["Neue Eckpunktkoordinaten eingeben? Ja ==> input 1, Nein ==> input 0 !!!!"];
If[inpQKoord==1,
Print["Yes = ", inpQKoord];
p1 = Input["p1 eingeben, z.B. {0,0} "]; Print["p1 = ", p1];
p2 = Input["p2 eingeben, z.B. {10,0} "]; Print["p2 = ", p2];
p3 = Input["p3 eingeben, z.B. {11,2} "]; Print["p3 = ", p3];
p4 = Input["p4 eingeben, z.B. {0,4} "]; Print["p4 = ", p4],
inpQKoord = 0; Print["No = ", inpQKoord]; Print["Koordinaten o.k."]];
E2
Eingabe der Zwischenpunkte
B1
inpQZP=Input["Neue Anzahl Zwischenpunkte eingeben? Ja ==> input 1, Nein ==> input 0 !!!!"];
If[inpQZP==1,
Print["Yes = ", inpQZP];
AnzahlZwischenpunkte = Input["Anzahl Zwischenpunkte, z.B. 4 "],
inpQZP = 0; Print["No = ", inpQZP]; Print["Zwischenpunkte o.k."]];
Print["Anzahl Zwischenpunkte = ", AnzahlZwischenpunkte]
E3
Überschreibe Zwischenpunkte anz[p1, p2] = 4 ; }} " width="365" height="61" style="vertical-align:middle" />
Lasse den Computer rechnen:
Startpunkt (p1 oder p4) start = p1 ; " width="527" height="17" style="vertical-align:middle" />
B2
Tabelle der Punktkoordinaten und Skizze ausgeben:
Skizze der Stäbe
<<Graphics`Arrow`;
tabLineTo=Table[lineTo[k],{k,1,az}];
tabLineFrom=Table[lineFrom[k],{k,0,az}];
tabLines=Flatten[{tabLineTo,tabLineFrom}];
Show[Graphics[Join[{Text["p1",p1,{-1,(-1)^sV }],Text["p2",p2,{0,(-1)^sV }],Text["p3",p3,{0,-1.5 (-1)^sV }],Text["p4",p4,{-1,-1 (-1)^sV }],
Text["Kraft",p3,{-2,-2},{1,1}],Line[{p1-0.2(p4-p1),p4+0.2(p4-p1)}],
Thickness[.015],
Arrow[p3+2{1,1},p3+0.5{1,1}],
Line[{p1,p2,p3,p4,p1}],tabLines,
PointSize[0.03],RGBColor[1,0,0],
Point[p1],Point[p2],Point[p3],Point[p4]},tabPointpupo],PlotRange→All],AspectRatio→Automatic];
Eingabe Kräfte
Default: Kraft = 0, Aussenkraft bei p3 = { -1, -1 }
kraftU[k_]:={0,0};
kraftO[k_]:={0,0};
kraftO[az+1]={-1,-1};
tabKraftU:=Prepend[Table[{k,kraftU[k]},{k,0,az+1}],{"Nummer","Kraft unten"}];
tabKraftO:=Prepend[Table[{k,kraftO[k]},{k,0,az+1}],{"Nummer","Kraft oben"}];
tabKraft:=Join[tabKraftU,tabKraftO]; tabKraft//MatrixForm
Kraftvektoren überschreiben:
C1
kraftO[az+1]={-1,-3};
C2
kraftU[az+1]={2,1};
(* Willst du z.B. die untere Kraft Nummer 3 kraftU[3] mit (1,-2) überschreiben, so füge nachstehend ohne Anführungszeichen "kraftU[3]={1,-2};" ein. *)
E4
Z . B . kraftU[az+1]={2,1};}} " width="246" height="42" style="vertical-align:middle" />
inpQKraft=Input["Neue Kräfte rechts eingeben? Ja ==> input 1, Nein ==> input 0 !!!!"];
If[inpQKraft==1,
Print["Yes = ", inpQKraft];
kraftO[az+1] = Input["Kraft rechts oben eingeben, z.B. {-1,-3} "];
kraftU[az+1] = Input["Kraft rechts unten eingeben, z.B. {2,1} "],
inpQKraft = 0; Print["No = ", inpQKraft]; Print["Kräfte o.k."]];
Print["Kraft rechts oben = ", kraftO[az+1]];
Print["Kraft rechts unten = ", kraftU[az+1]];
Neue Ausgabe:
tabKraft//MatrixForm
Reaktionskräfte von der Wand
E5
Kraft rechts oben neu eingeben}, {Kraft rechts unten neu eingeben}} " width="222" height="58" style="vertical-align:middle" />
F1
Skizze mit Kräften
Gleichungen
gU[k_]:= (xL[k](pu[k]-pu[k-1]) + xL[k+1](pu[k+1]-pu[k]) + xF[k] stabFrom[k] + xT[k] stabTo[k] + kraftU[k]=={0,0});
gO[k_]:= (yL[k](po[k]-po[k-1]) + yL[k+1](po[k+1]-po[k]) + xF[k-1] stabFrom[k-1] + xT[k] stabTo[k] + kraftO[k]=={0,0});
gU[0]= (kAussenP1[p1x,p1y] + xL[1](pu[1]-pu[0])+ xF[0] stabFrom[0] + xT[0] stabTo[0] + kraftU[0]=={0,0});
gO[0]= (kAussenP4[p4x,p4y] + yL[1](po[1]-po[0])+ xT[0] stabTo[0] + kraftU[0]=={0,0});
gU[az+1]= (xL[az+1](pu[az+1]-pu[az]) + xT[az+1] stabTo[az+1] + kraftU[az+1]=={0,0});
gO[az+1]= (yL[az+1](po[az+1]-po[az]) + xT[az+1] stabTo[az+1] + xF[az] stabFrom[az] + kraftO[az+1]=={0,0});
gleichungen=Join[Table[gU[k],{k,1,az}],Table[gO[k],{k,1,az}],{gU[0],gO[0],gU[az+1],gO[az+1]}];
{gleichungen}//Transpose//MatrixForm
Output Gleichungen
(Faktoren zu den Kräften)
Output Skizze
Last Output
Hier kommt der Output!
Last Output
Print["Kraftvektoren: " ];
Print["Kraft links aussen unten: ",(kAussenP1[p1x,p1y]/. solv)//Transpose//MatrixForm];
Print["Kraft links aussen oben: ",(kAussenP4[p4x,p4y]/. solv)//Transpose//MatrixForm];
Print["Stabkräfte unten: ", (Table[xL[N[k]](pu[k]-pu[k-1]),{k,0,az+1}]/. solv) //Transpose//MatrixForm];
Print["Stabkräfte oben: ",
(Table[yL[N[k]](po[k]-po[k-1]),{k,0,az+1}]/. solv)//Transpose//MatrixForm];
Print["Kräfte schräge Stäbe: ", (Table[xF[N[k]] stabFrom[k],{k,0,az+1}]/. solv)//Transpose//MatrixForm];
Print["Kräfte fast senkrechte Stäbe: ", (Table[xT[N[k]] stabTo[k],{k,0,az+1}]/. solv)//Transpose//MatrixForm];
Print["Grösse (Länge) der Kräfte: " ];
Print["Kraft links aussen unten: ", Norm[kAussenP1[p1x,p1y]]/. solv];
Print["Kraft links aussen oben: ",Norm[kAussenP4[p4x,p4y]]/. solv];
Print["Stabkräfte unten: ", {Table[Norm[xL[N[k]](pu[k]-pu[k-1])],{k,0,az+1}]/. solv}//Transpose//MatrixForm];
Print["Stabkräfte oben: ",
{Table[Norm[yL[N[k]](po[k]-po[k-1])],{k,0,az+1}]/. solv}//Transpose//MatrixForm];
Print["Kräfte schräge Stäbe: ", {(Table[Norm[xF[N[k]] stabFrom[k]],{k,0,az+1}]/. solv)}//Transpose//MatrixForm];
Print["Kräfte fast senkrechte Stäbe: ", {Table[Norm[xT[N[k]] stabTo[k]],{k,0,az+1}]/. solv}//Transpose//MatrixForm];
Created by Mathematica (December 15, 2006) | ![]() |