Statik: Anwendungenn mit dem Modul "initStatik"

Teile dieses Files (Liste):

1. Modul "initStatik" initiieren aus dem File StatikModulinit.nb, Erklärungen zu den
    einzelnen Funktionen abrufen.
    Alternative: Modul "initStatikOhneE" initiieren aus dem File 
    StatikModulinitOhneErkl.nb, ohne die umfangreichen Erklärungen. Die
    Funktionen sind dieselben wie in "initStatik".

2. Einzelne Funktionen testen

3. Ein Statik-Beispiel

4. Putzmaschine ==> Alles löschen ==> Modul muss nochmals initiiert werden
   (alles gelöscht)

Teile dieses Files (Work):

1. Modul "initStatik" initiieren, Erklärungen zu den einzelnen Funktionen abrufen

Initiierter Modul aufrufen, damit der Erklärungstext kommt:  Cursor in das Feld initStatik[1] platzieren oder rechts auf den zugehörigen Balken klicken, anschliessend Enter-Taste drücken (Enter, nicht Wagenrücklauf!)

initStatik[1]

2. Einzelne Funktionen testen

Anwendungen zur der Funktion "kResultkOut" (In) für die resultierenden:
Ebenfalls auf den jeweiligen Balken klicken und Enter drücken, Achtung: Berechnungen greifen teilweise auf vorher berechnete Resultate ==> Reihenfolge beachten!

kResultOut[6,7,3,4,5]

kResultOut[{{1,2},{1,3}}]

kResultOut[{{1,2},{1,3},{1,4},{1,5}}]

Apply[kResult,{{1,2},{1,3},{1,4},{1,5}}]

{{1,2},{1,3},{1,4},{1,5}}//kResultOut

kResultPrint[{{1,2},{1,3},{1,4},{1,5}}]

Anwendungen zur der Funktion "kraftPunktZerleg" (In) für die Komponenten  "kKomp1Out,  kKomp2Out" und "geradeSchnittOut" sowie eine Skizze (Out) "graphZerleg" (Reihenfolge muss übernommen werden!)

(* Keine Angst vor den Fehlermeldungen! Hier gibt es keinen Schnittpunkt, da die Gerade parallel laufen!!! *)

p1={1,2};p2={1,3};q1={4,1};q2={4,4}; 
geradeSchnittOut[p1,p2,q1,q2]

p1={1,2};p2={2,3};q1={4,1};q2={4,4};
geradeSchnittOut[p1,p2,q1,q2]

p1={1,2};p2={-1,3};q1={3,1};q2={6,4};kraft={4,-3};
kraftPunktZerleg[p1,p2,q1,q2,kraft];
graphZerleg[p1,p2,q1,q2,kraft];

s1=Show[graphZerleg[p1,p2,q1,q2,kraft], display];

p1={5,2};p2={2,3};q1={4,1};q2={4,4};kraft={3,5};
kraftPunktZerleg[p1,p2,q1,q2,kraft];
s2=Show[graphZerleg[p1,p2,q1,q2,kraft], display];

Show[s2,s1];

Anwendungen zur der Funktion "kraftPunktZerlegSenkr" (In) für die Komponenten  "kKomp1Out,  kKomp2Out" im Punkt qG1 sowie eine Skizze (Out) "graphZerleg" (Reihenfolge muss übernommen werden!)

p1={1,2};q1={3,1};kraft={4,-3};
kraftPunktZerlegSenkr[p1,q2,kraft];
graphZerlegSenkr[p1,q2,kraft];

Show[graphZerlegSenkr[p1,q2,kraft],display];

Anwendungen zur der Funktion "showPointsLines"  und weiterer Diagrammfunktionen

p1={1,2};p2={7,2};q1={3,1};
s3=Show[showPointsLines[{p1,p2,q1,{5,6}}, {p1,p2,q1,{5,6},p1,q1}],display];

p1={1,2};p2={7,2};q1={3,1};
s3=showPointsLines[{p1,p2,q1,{5,6}}, {p1,p2,q1,{5,6},p1,q1}];
Show[s1,s2,s3];

Show[s3,s2,s1];

Show[Show[s3,s2,s1],display];

p0={0,0}; p1={1,2}; p2={-1,3}; p3={4,1}; p4={2,3};
Show[showArrow[p1,p2],display];
Show[showArrow[{p1,p2}],display];
Show[showTabArrow[p1,p2,p3,p4],display];
Show[showTabArrow[{p1,p2,p3,p4}],display];
Show[showTabP0Arrow[p0,p1,p2,p3,p4],display];
Show[showTabP0Arrow[{p0,p1,p2,p3,p4}],display];
Show[showBigPoints[2,{p1,p2,p3,p4}],display];
Show[Show[showGroundLine[0.4,p0],showGroundLine[0.4,p1]],display];
Show[Show[showGroundLine[p0],showGroundLine[0.6,p1]],display];

Anwendungen zur der Funktionen "moment" und "resultMomentKraftAbsolut"  und weiterer Diagrammfunktionen

drehpunkt={-5,4}; p1={6,7}; p2={9,8}; p3={1,2}; q={4,6};
pkraft1={2,2}; pkraft2={4,2}; pkraft3={2,2};
mengePunkte={p1,p2,p3}; mengeKraft={pkraft1,pkraft2,pkraft3};
moment[drehpunkt,mengePunkte,mengeKraft]

resultMomentKraftAbsolut[drehpunkt,mengePunkte,mengeKraft,q]

resultMomentKraftAbsolut[drehpunkt,mengePunkte,mengeKraft,q] // N

drehpunkt={0,0}; p1={1,0}; p2={2,0}; q={0,4};
pkraft1={0,2}; pkraft2={0,4};
mengePunkte={p1,p2}; mengeKraft={pkraft1,pkraft2};
Print["Moment = ", moment[drehpunkt,mengePunkte,mengeKraft],  ",   Kraft = ",resultMomentKraftAbsolut[drehpunkt,mengePunkte,mengeKraft,q] // N]

3. Ein Statik-Beispiel:

"initStatikOhneE" initialisieren in StatikModulInitOhneErkl.nb

initStatikOhneE[1]

Skizze:

p2 und der Stab (p3,p5) sind steif, die anderen Punkte gelenkig.  p1 und p6 sind am Boden. Bei p3 kann man daher das FAchwerk in zwei steife Teile trennen. p2 ist steif und rechts hat man ebenfalls ein steifes gebilde, da die Dreiecksform versteift.

Methode: Going down. Erst wird die gesamte äussere Kraft Kres ermittelt (eine Kraft ist ein Vektor, hier mit 2 Komponenten). Das ganze Stabgebilde ist steif wegen der Figur (p4, p5, p6) und den festen Lagern am Boden. Daher kann das ganze Gebilde als ein starrer Körper betrachtet werden und die Kräfte auf die Fusspunkte ermittelt werden.

Kraft- und Graphikelemente eingeben

p1={0,0};
p2={0,7};
p3={7,10};
p23=(p2+p3)/2;
p4={10,10};
p5={14.5,10};
p6={14.5,-3};
Kq=3*7*{0,-1};
p24=p23+Kq;
KH=30*{1,0};
strecken=1/10 (* Massstabfaktor *);

Resultierende Kraft von aussen und Schnittpunkt der Wirkungslinien

(Obwohl die Rechnungen hier trivial sind, benutzen wir zur Demonstration die Module)

Kres = kResultOut[KH,Kq] (* resultierende Kraft von aussen *)

{p23,p24,p3,p5}

pS1=geradeSchnittOut[p23,p24,p3,p5]

Skizze der momentanen Situation 
("display" ist ein im Programm geschriebener Befehl zur Erzeugung der Graphik auf dem Schirm. Dieser Befehl ist notwendig, damit nicht riesige Mengen von zwischendurch erzeugten Graphiken erscheinen.)

listP1={p1,p2,pS1,p3,p4,p5,p6};
listL1={p1,p2,p23,pS1,pS1+ Kq strecken, pS1+ Kres strecken, pS1+ KH strecken,pS1, p23, p3,p4,p5,p6,p4};
sk1 = showPointsLines[listP1, listL1];
sk2 = Show[showGroundLine[0.3,p1],showGroundLine[0.3,p6]];
sk3 = showTabArrow[pS1,Kq strecken, KH strecken, Kres strecken];
sk4 = Show[sk1,sk2,sk3,display];

Zerlegung der resultierenden Kraft in Komponenten in Richtung der Fusspunkte

Kres

kraftPunktZerleg[p1,pS1,p6,pS1,Kres];

kResP1 = kKomp1out;  
kResP6 = kKomp2out;
{kResP1,kResP6}

KresS=Kres strecken;
kraftPunktZerleg[p1,pS1,p6,pS1,KresS];
graphZerleg[p1,pS1,p6,pS1,KresS];
sk5 = Show[graphZerleg[p1,pS1,p6,pS1,KresS], display];

kResP1 strecken

sk6=showArrow[p1, p1 + kResP1 strecken];
sk7=showArrow[p6, p6 + kResP6 strecken];

sk8 = Show[sk4,sk5,sk6,sk7];

kraftPunktZerlegSenkr[p1,p2,kResP1];

kResP12 = kKomp1out;  
kResP1n = kKomp2out;
{kResP12,kResP1n}

kraftPunktZerlegSenkr[p1,p2,kResP1 strecken];
sk9 = Show[graphZerlegSenkr[p1,p2,kResP1 strecken],display];

kraftPunktZerlegSenkr[p6,p5,kResP6];

kResP65n = kKomp1out;  
kResP6n = kKomp2out;
{kResP65n,kResP6n}

kraftPunktZerlegSenkr[p6,p5,kResP6 strecken];
sk10 = Show[graphZerlegSenkr[p6,p5,kResP6 strecken],display];

kraftPunktZerleg[p6,p4,p6,p5,kResP6];

kResP64 = kKomp1out;  
kResP65 = kKomp2out;
{kResP64,kResP65}

kraftPunktZerleg[p6,p4,p6,p5,kResP6 strecken];
sk11 = Show[graphZerleg[p6,p4,p6,p5,kResP6 strecken],display];

sk12 = Show[sk8,sk10];

sk12 = Show[sk8,sk11];

sk13 = Show[sk8,sk9,sk10,sk11];

Achtung: Im letzten Diagramm ist der Normalvektor zu (p1, p2) eingezeichnet. Der wagrechte Pfleil unten links erscheint daher überzeichnet. Das ändert aber nichts an den numerischen Werten. 
(kKomp1out = {0,1.02251}  kKomp2out = {0.357878,0}, 1.02251 > 0.357878)

kraftPunktZerlegSenkr[p3,p1,kResP1];

kResP13 = kKomp1out;  
kResP13n = kKomp2out;
{kResP13,kResP13n}

kraftPunktZerlegSenkr[p3,p1,kResP1 strecken];
sk14 = Show[graphZerlegSenkr[p3,p1,kResP1 strecken],display];

listP1={p1,p2,pS1,p3,p4,p5,p6};
listL1={p1,p2, p23, p3,p4,p5,p6,p4};
sk1a = showPointsLines[listP1, listL1];

sk13 = Show[sk1a,sk2,sk6,sk14,display];

kraftPunktZerlegSenkr[p3,p6,kResP6];

kResP63 = kKomp1out;  
kResP63n = kKomp2out;
{kResP63,kResP63n}

kraftPunktZerlegSenkr[p3,p6,kResP6 strecken];
sk15 = Show[graphZerlegSenkr[p3,p6,kResP6 strecken],display];

sk16 = Show[sk1a,sk2,sk7,sk15,display];

KRes3 = kResP13+kResP63

Kres3S=KRes3 strecken;
kResP13S=kResP13 strecken;
kResP63S=kResP63 strecken;
kraftPunktZerleg[p3,p3+kResP13S,p3,p3+kResP63S,Kres3S];
graphZerleg[p3,p3+kResP13S,p3,p3+kResP63S,Kres3S];
sk17 = Show[graphZerleg[p3,p3+kResP13S,p3,p3+kResP63S,Kres3S], display];

listP1={p1,p2,pS1,p3,p4,p5,p6};
listL1={p1,p2,p3,p1,p3,p4,p5,p6,p3,p6,p4};
sk1b = showPointsLines[listP1, listL1];
sk18 = Show[sk1b,sk2,sk17,display];

4. Putzmaschine ==> Alles löschen ==> Modul muss nochmals initiiert werden (alles gelöscht)

\(\(\( (*\ \ 1\ *) \)\(\ \ \)\(
\)\(\(Remove["Global`*"];\)
 (*\ \ 2\ *) \ \ 

    \(Off[\ ];\)

    \(Off[General::spell];\)

    \(Off[General::spell1];\)\)\)\)