In Kapitel 5 stand das Gleichgewicht an wenigen Federknoten: An jedem Knoten mussten sich die Kräfte aufheben. In Kapitel 7 wurde die Ableitung zur Steigung einer Kurve — dazu, wie schnell sich eine Größe von Ort zu Ort ändert. Dieses Kapitel bringt beides zusammen. Ein Fersenbein hat keine wenigen Knoten, sondern unendlich viele Punkte — es ist ein Kontinuum. Verlangt man Gleichgewicht nun in jedem Punkt, so entsteht aus der Kräftebilanz an einem winzigen Würfelchen eine Bedingung, die überall gleichzeitig gelten muss.
Wir schreiben diese Bedingung in diesem Kapitel wirklich hin, und zwar in drei Schritten. Erst am geraden Zugstab, wo sie eine Gleichung in einer einzigen Ortsrichtung ist. Dann setzen wir das Materialgesetz aus Kapitel 6 ein, bis in der Gleichung die gesuchte Verschiebung steht statt der Spannung — das ist genau die Gleichung, die Kapitel 9 abschwächt. Und schließlich einmal in der Ebene: Dort treten Ableitungen nach mehreren Ortsrichtungen nebeneinander auf, und deshalb heißt sie eine partielle Differentialgleichung. Sie ist das exakte Problem, das die Methode der finiten Elemente danach näherungsweise löst. Wir schreiben sie hier auf — und lösen sie ausdrücklich noch nicht.
Lernziele
Nach diesem Kapitel kannst du
das Gleichgewicht „Summe aller Kräfte gleich null“ von wenigen Knoten auf jeden Punkt eines Körpers übertragen,
an einem Spannungswürfelchen die Kräftebilanz aufstellen und erkennen, dass die Änderung der Spannung (die Steigung aus Kapitel 7) die Bilanz trägt,
diese Bilanz mit dem Hookeschen Gesetz in eine Gleichung für die gesuchte Verschiebung umschreiben und sagen, was an den beiden Enden zusätzlich vorgegeben werden muss,
erklären, was das Wort „partiell“ in einer partiellen Differentialgleichung bedeutet, und die ebene Gleichgewichtsbedingung mit der Schubspannung lesen,
begründen, warum diese Gleichung für eine echte Fersenkontur keine Formel-Lösung hat und man sie zerlegen (diskretisieren) muss.
Die Bilder dieses Kapitels zeigen immer wieder dieselbe Fersenkontur mit denselben drei Lasteinleitungen. Die Zelle darunter hält diese Zeichenhilfen bereit — Bildcode, kein Lehrstoff, deshalb eingeklappt; wer sehen will, wie die Kontur ins Bild kommt, klappt sie auf.
Bildcode: Kontur, Orientierung und Lasteinleitungen
# --- Nur Zeichenhilfen (numpy/matplotlib): Kontur, Orientierung, Achsen. Diese# Zelle wird vom Gleichheitstest übersprungen (sie importiert numpy/matplotlib);# die geprüfte Werkbank-Mathematik steht in der nächsten, reinen Python-Zelle.import jsonimport pathlibimport numpy as npimport matplotlib.pyplot as pltfrom matplotlib.ticker import FuncFormatterfrom matplotlib.patches import FancyArrow# Echte Kalkaneus-Kontur (48 Punkte, 66 × 42,06 mm), aus der JSON-Datei; niemals# das zugrunde liegende Bild selbst (nur die extrahierte Form ist frei)._kontur = json.loads( pathlib.Path("../geometrie/kalkaneus_kontur.json").read_text())KONTUR = np.array(_kontur["punkte"]) *1000.0# m -> mm# Zwei Anker-Stufen: Die Kanon-Anker sind Pfeil- und Beschriftungsanker NAHE dem# Rand; für alles, was AUF der Kontur liegen soll, gelten die projizierten# Konturpunkte.PFEIL_ANKER = {"boden": (8.0, 1.0), "achilles": (2.5, 23.0), "enthese": (24.0, 3.4)}KONTUR_ANKER = {"boden": (8.59, 2.24), "achilles": (1.34, 23.28),"enthese": (24.07, 3.35)}def de_achse(ax):"""Achsen-Tickbeschriftung auf deutsche Kommas umstellen.""" f = FuncFormatter(lambda v, _pos: komma_sig(v, 3)) ax.xaxis.set_major_formatter(f) ax.yaxis.set_major_formatter(f)def kontur_und_orientierung(ax):"""Fersenschnitt füllen und mit Orientierung (hinten/vorn/oben) versehen.""" ax.fill(KONTUR[:, 0], KONTUR[:, 1], color="#f0e2d0", ec="#a9825f", lw=1.6, zorder=1) ax.text(46, 9, "Fersenbein", fontsize=8, color="#8a6a4a", ha="center", zorder=2) ax.text(-13, 45, "hinten (Ferse)", fontsize=9, color="#666") ax.text(46, 45, "vorn (Zehen)", fontsize=9, color="#666")def lasteinleitungen(ax):"""Die drei Lasteinleitungen als Beschriftungsanker (nahe dem Rand)."""for x, y in PFEIL_ANKER.values(): ax.plot(x, y, "o", color="#7a2b8a", ms=6, zorder=6) ax.annotate("Bodenkontakt", PFEIL_ANKER["boden"], (-46, -15), textcoords="offset points", fontsize=8, color="#7a2b8a") ax.annotate("Achillesansatz", PFEIL_ANKER["achilles"], (6, 4), textcoords="offset points", fontsize=8, color="#7a2b8a") ax.annotate("Enthese", PFEIL_ANKER["enthese"], (0, -20), textcoords="offset points", fontsize=8, color="#7a2b8a")
Ein Wort zu den Zahlen dieses Kapitels, einmal und dann nicht mehr: Alle Größen hier — die Randspannung des Würfelchens, die innere Last, die Breite \(\Delta x\), und gleich der Stab mit seinem E-Modul, seinem Querschnitt und seiner Länge — sind schematisch und ohne Einheit gewählt. Sie stammen nicht aus dem Zahlenanhang und sind keine gemessenen Fersenspannungen; sie sollen die Bilanz sichtbar machen, nicht die Ferse beziffern. Das Rechenwerk darunter hält sie bereit, dazu die deutsche Zahlendarstellung und die Anker auf der Kontur.
Das Rechenwerk dieses Kapitels — zum Nachlesen aufklappen
# Hintergrund dieses Kapitels: Zahlendarstellung, Farbkonvention, Konturanker.# Numerisch gleich gehalten mit js/kap08_wuerfelchen.js (getrennte# Implementierungen, die gegeneinander geprüft werden).# Das Lehrstück — Würfelbilanz und Zugstab — steht sichtbar in der Zelle darunter.import mathdef komma(x, stellen=2):"""Deutsche Kommadarstellung mit Endnullen-Trimmung; Minuszeichen −. Endnullen werden nur bei vorhandenem Dezimalpunkt entfernt — sonst verstümmelte stellen=0 die Ganzzahlen (50 → „5“).""" s =f"{x:.{stellen}f}"if"."in s: s = s.rstrip("0").rstrip(".")return s.replace("-", "−").replace(".", ",")def komma_sig(x, n=3):"""Deutsche Darstellung mit n signifikanten Stellen (ohne e-Notation)."""if x ==0:return"0" s =f"{x:.{n}g}"if"e"in s or"E"in s: s =f"{x:.10f}".rstrip("0").rstrip(".")return s.replace("-", "−").replace(".", ",")# --- Schematische Modellgrößen der Würfelbilanz (KEINE Kanonzahlen, OHNE Einheit)SIGMA_LINKS =4.0# schematische Spannung links (Einheiten)DX =1.0# Würfelbreite Δx (normiert, OHNE Einheit)# Anker AUF der Kontur (mm): projizierte Konturpunkte. Reines Python, gleich den# Zeichenhilfen oben.ANKER = {"boden": (8.59, 2.24), "achilles": (1.34, 23.28), "enthese": (24.07, 3.35)}ZUG_FARBE, DRUCK_FARBE ="#b3541e", "#2a6f97"def farbe_spannung(sigma):"""Farbe nach dem Zeichen: Zug (≥ 0) orange (außen), Druck (< 0) blau (innen)."""return ZUG_FARBE if sigma >=0else DRUCK_FARBEdef animations_residuum(links, rechts, oben, unten):"""Betrag der Netto-Resultierenden aus den Pfeil-Außenlängen der vier Seiten: hypot(rechts − links, oben − unten)."""return math.hypot(rechts - links, oben - unten)def anker():"""Die drei Konturanker (mm) als Kopie."""return {k: tuple(v) for k, v in ANKER.items()}
Das Lehrstück dieses Kapitels ist der Block darunter, und er hat zwei Teile. Der erste ist die Würfelbilanz: die Kräftebilanz eines Würfelchens in x-Richtung, in einer knappen Rechnung. Der zweite ist der Zugstab, an dem sich dieselbe Bilanz als Gleichung für die gesuchte Verschiebung ausschreiben lässt; seine drei Funktionen geben Spannung, Dehnung und Verschiebung an jedem Ort. Warum sie so aussehen, steht weiter unten im Text — der Block definiert nur und gibt bewusst nichts aus, damit dir der Code nichts vorwegnimmt.
Das Lehrstück: die Kräftebilanz eines Würfelchens und der Zugstab
# Das Lehrstück dieses Kapitels. Reines Python, von Hand nachrechenbar;# numerisch gleich gehalten mit js/kap08_wuerfelchen.js. Der Block druckt# bewusst keine Ergebnisse — die Zahlen folgen erst nach den Vorhersagen.def wuerfel_bilanz(sigma_links, b, dx):"""Kräftebilanz eines Würfelchens in x-Richtung (je Flächeneinheit). Vorzeichenkonvention: Spannung positiv = Zug (zieht die Seitenfläche nach außen), negativ = Druck; die innere Last b (Volumenkraft) zählt positiv nach +x. Gleichgewicht: (σ_rechts − σ_links) + b·Δx = 0, also dσ/dx = −b. Δx > 0."""ifnot dx >0:raiseValueError(f"Würfelbreite Δx muss positiv sein: {dx}") steigung =-b sigma_rechts = sigma_links + steigung * dx bilanz = (sigma_rechts - sigma_links) + b * dx # == 0 (exakt)return {"sigma_rechts": sigma_rechts, "steigung": steigung, "bilanz": bilanz}# --- Der schematische Zugstab (alle Größen OHNE Einheit). A = 1 gewählt, damit# Endkraft F und Randspannung F/A dieselbe Zahl tragen; E = 2, damit man σ und ε# im Bild auseinanderhalten kann.STAB_E, STAB_A, STAB_L =2.0, 1.0, 1.0def stab_spannung(kraft_am_ende, b, x):"""Spannung σ(x) im Zugstab: σ = F/A + b·(L − x); ihre Steigung ist −b."""ifnot0.0<= x <= STAB_L:raiseValueError(f"Ort x liegt nicht auf dem Stab [0, L]: {x}")return kraft_am_ende / STAB_A + b * (STAB_L - x)def stab_dehnung(kraft_am_ende, b, x):"""Dehnung ε(x) = σ(x)/E — das Hookesche Gesetz aus Kapitel 6."""return stab_spannung(kraft_am_ende, b, x) / STAB_Edef stab_verschiebung(kraft_am_ende, b, x):"""Verschiebung u(x): Stammfunktion der Dehnung mit u(0) = 0 (festes Ende)."""ifnot0.0<= x <= STAB_L:raiseValueError(f"Ort x liegt nicht auf dem Stab [0, L]: {x}")return (kraft_am_ende / (STAB_A * STAB_E)) * x \+ (b / STAB_E) * (STAB_L * x -0.5* x * x)
8.1 Vom Knoten zum Punkt
An den Federknoten aus Kapitel 5 war Gleichgewicht eine kurze Liste: An jedem der wenigen Knoten die Summe der Kräfte gleich null. Ein Fersenbein aber ist kein Gitter aus wenigen Punkten, sondern ein volles Stück Gewebe — ein Kontinuum mit unendlich vielen „Knoten“, jedem einzelnen Punkt. Die Frage des Aufhängers: Schneidet man tief im Fersenbein ein Millimeterwürfelchen heraus, so bewegt es sich nicht — es steht still. Also müssen sich die Kräfte an seinen vier Seiten (im ebenen Schnitt) genau aufheben. Was heißt das für die Spannung an der linken gegenüber der rechten Seite?
WarnungStillstehen heißt nicht kräftefrei
Vermutung:„Wo sich nichts bewegt, wirken keine Kräfte.“
Warum sie naheliegt: Bewegung ist sichtbar, Ruhe wirkt leer. Ein Knochen, der still im Fuß liegt, scheint kräftefrei.
Was stattdessen gilt: Im ruhenden Fersenbein können in jedem Punkt Spannungen wirken — sie heben sich dort nur zu einer Resultierenden von null auf. Gleichgewicht ist nicht die Abwesenheit von Kraft, sondern das genaue Verschwinden ihrer Summe. Genau diese Balance, in jedem Punkt zugleich verlangt, ist die Differentialgleichung dieses Kapitels.
Abbildung 8.1 zeigt das freigeschnittene Würfelchen mit den Spannungen auf seinen Seiten und, darunter, wo im Fersenschnitt es sitzt.
Abbildung 8.1: Das Spannungswürfelchen, freigeschnitten (oben), und sein Ort im Knochen (unten). Auf jeder Seitenfläche wirkt eine Spannung (Pfeil nach außen = Zug/orange). Damit das Würfelchen ruht, muss die Summe aller Kräfte in x-Richtung null sein und ebenso in y-Richtung — das ist erst die Bedingung, noch nicht ihre Auflösung. Der violette Pfeil ist die innere Last b (eine Volumenkraft im ganzen Würfel). Unten die echte Kalkaneus-Kontur (Sagittalschnitt, x nach vorn, y nach oben) mit dem Ort des Würfelchens. Die Pfeillängen sind schematisch.
Deutung. An jeder Seite zieht (oder drückt) eine Spannung. Stünden sich links und rechts genau gleiche Spannungen gegenüber, wäre ihre Summe schon null. Ob dann noch eine innere Last getragen werden kann, hängt davon ab, ob sich die Spannung von Seite zu Seite ändert — und diese Änderung über die kleine Breite ist eine Steigung, genau die Ableitung aus Kapitel 7, jetzt räumlich statt über die Standphase. Wie genau, klären wir gleich.
8.2 Die Steigung trägt die Bilanz
Jetzt lösen wir die Bilanz in x-Richtung wirklich auf. Bevor du liest, wie, probiere es selbst: Der Regler stellt die innere Last \(b\) im Würfelchen.
WichtigVorhersage-Punkt
Bevor du schiebst:Erhöhst du die Last im Inneren — muss der Unterschied der Randspannungen (die Steigung) größer oder kleiner werden? Lege dich fest.
Deutung. Bei innerer Last null sind beide Randspannungen gleich — die Steigung ist null, und es ist auch nichts auszugleichen: Eine über den Würfel konstante Spannung trägt die Randlasten bereits. Je größer die innere Last, desto größer muss der Unterschied der Randspannungen werden. Das ist die Antwort auf die Vorhersagefrage: größere innere Last verlangt eine größere Steigung.
Und die Ferse? Dort ist \(b\) null. Das Fersenmodell dieses Buches kennt keine Volumenkraft — das Eigengewicht des Knochens wird gegen Boden-, Sehnen- und Faszienzug nicht mitgerechnet. In der eindimensionalen Bilanz hieße das: Die Spannung wäre über den ganzen Knochen konstant. Sie ist es aber nicht, und das ist kein Widerspruch, sondern ein Hinweis: Der Grund liegt in der zweiten Richtung, die diese Bilanz noch gar nicht enthält. Wir kommen weiter unten darauf zurück. Der Regler zeigt die Bilanz in ihrem einfachsten Fall — mit einem \(b\), das man drehen kann, damit man sieht, wovon die Steigung abhängt.
Jetzt die Rechnung dahinter. Vorzeichenkonvention, ab hier durchgehalten (dieselbe wie in Kapitel 6): Spannung positiv heißt Zug (die Spannung zieht die Seitenfläche nach außen), negativ heißt Druck; die innere Last \(b\) zählt positiv, wenn sie nach vorn (+x) zeigt. Jede Seitenfläche hat die Fläche \(A\). Die rechte Fläche trägt die Kraft \(\sigma_{\text{rechts}}\,A\) nach außen (+x), die linke \(\sigma_{\text{links}}\,A\) nach außen (−x, in der x-Bilanz also mit Minuszeichen), und die innere Last die Kraft \(b\,A\,\Delta x\) (Kraft je Volumen mal Volumen \(A\,\Delta x\)). Gleichgewicht in x heißt: Summe null.
Links steht der Differenzenquotient aus Kapitel 7: die Steigung der Spannung über den Ort. Lässt man das Würfelchen immer schmaler werden (\(\Delta x \to 0\)), wird daraus die Ableitung, und es bleibt die schlichte Gleichgewichtsbedingung in einem Punkt:
\[
\frac{\mathrm{d}\sigma}{\mathrm{d}x} + b \;=\; 0 .
\]
Die innere Last ist dabei etwas anderes als die äußeren Haltekräfte an den Knoten aus Kapitel 4 und 5 — jene hielten die ganze Struktur an einzelnen Punkten fest; \(b\) ist eine Volumenkraft, die an jedem Volumenelement im Inneren angreift. Der sichtbare Lehrcode rechnet die Bilanz für drei innere Lasten nach; er belegt nur, was die Deutung schon gesagt hat (Tabelle 8.1):
Tabelle 8.1: Die Würfelbilanz für drei innere Lasten (schematisch, materialunabhängig, alle Größen ohne Einheit): σ_links = 4, Δx = 1.
innere Last \(b\)
\(\sigma_\text{rechts}\)
Steigung \(\mathrm{d}\sigma/\mathrm{d}x\)
Netto-Bilanz
0
4
−0
0
2
2
−2
0
6
−2
−6
0
Deutung unter der Tabelle. Bei \(b = 0\) ist der Unterschied null, bei \(b = 2\) beträgt er \(-2\), bei \(b = 6\) dann \(-6\) — genau \(-b\cdot\Delta x\). Die Netto-Bilanz ist in jeder Zeile null: Das Würfelchen ist im Gleichgewicht, gleich wie groß die innere Last ist, solange sich die Spannung passend ändert.
8.3 Die Gleichung in der gesuchten Größe
Die Bedingung \(\mathrm{d}\sigma/\mathrm{d}x + b = 0\) ist eine Gleichung in der Spannung. Gesucht ist aber, seit Kapitel 3 und Kapitel 5, immer dasselbe: die Verschiebung. Wie kommt sie hinein? Über zwei Bausteine, die beide schon da sind.
Der erste ist das Hookesche Gesetz aus Kapitel 6: \(\sigma = E\,\varepsilon\), Spannung ist E-Modul mal Dehnung. Der zweite ist die Dehnung selbst. Bisher war sie \(\Delta L/L_0\) — ein Längenzuwachs geteilt durch eine Ausgangslänge, an einer ganzen Probe gemessen. In einem Kontinuum misst man sie nicht an der ganzen Probe, sondern an jedem Punkt, und dort ist sie genau das, was Kapitel 7 eine Steigung nennt: Wie stark wächst die Verschiebung, wenn man ein Stückchen weiterläuft? Also \(\varepsilon = \mathrm{d}u/\mathrm{d}x\). Für diese Steigung schreiben wir ab hier kurz \(u'\), wie es auch Kapitel 9 tun wird.
Beides eingesetzt: \(\sigma = E\,u'\), und damit wird aus der Bilanz
\[
\frac{\mathrm{d}}{\mathrm{d}x}\bigl(E\,u'\bigr) + b \;=\; 0 .
\]
Diese Gleichung ist die Antwort auf die Frage, mit der Teil III begonnen hat. Sieh sie dir an: Sie enthält \(u\)zweimal abgeleitet — einmal, um aus der Verschiebung die Dehnung zu machen, und ein zweites Mal für die Bilanz. Genau an dieser zweiten Ableitung wird Kapitel 9 ansetzen, denn sie ist der Grund, warum man die Gleichung nicht so lassen kann, wie sie dasteht.
Für einen Stab mit dem Querschnitt \(A\) zählt nicht die Spannung, sondern die Kraft \(A\,\sigma\), die durch ihn hindurchgeht. Multipliziert man die Gleichung mit \(A\) und schreibt das Minuszeichen nach vorn, steht sie in genau der Form, in der das nächste Kapitel sie aufgreift:
\[
-\bigl(E\,A\,u'\bigr)' \;=\; A\,b .
\]
Auch hier gilt der Blick zurück: Die Federkette aus Kapitel 4 ist nichts anderes als dieser Stab, in Stücke zerhackt. Jede Feder dort stand für ein Stück Stab, und Kapitel 6 hat den Umrechnungsschlüssel schon geliefert: \(k = E\,A/L\). Der Unterschied ist nur, wie fein man hinsieht — drei Federn oder unendlich viele.
8.4 Was an den Enden gilt
Eine Gleichung allein legt die Verschiebung noch nicht fest. Das kennst du: Kapitel 5 hatte eine Matrix, die für die Federkette alles Nötige enthielt — und trotzdem keine Lösung, solange die Wand fehlte. Ohne festen Punkt darf die ganze Kette wegdriften, und keine Kräftebilanz verbietet es. Beim Stab ist es dasselbe in Grün: Zu \(u\) eine Konstante zu addieren, verschiebt den ganzen Stab, ändert aber weder Dehnung noch Spannung. Die Gleichung merkt davon nichts.
Deshalb braucht sie an jedem Ende eine zusätzliche Angabe, und es gibt genau zwei Arten davon. Jede heißt eine Randbedingung:
Der Ort ist vorgegeben. Am eingespannten Ende steht die Verschiebung fest, im einfachsten Fall \(u(0) = 0\): Hier bewegt sich nichts. Das ist die Wand aus Kapitel 5.
Die Kraft ist vorgegeben. Am freien Ende zieht jemand mit einer bekannten Kraft \(F\), und weil die Kraft im Stab gerade \(E\,A\,u'\) ist, heißt das \(E\,A\,u'(L) = F\). Hier ist nicht der Ort bekannt, sondern die Steigung.
Das ist die ganze Bauform: An jeder Stelle des Randes ist entweder der Ort bekannt oder die Kraft, nie beides und nie keines von beidem. Kapitel 12 wird die beiden Arten bei Namen nennen und eine dritte hinzufügen, bei der der Rand federnd gebettet ist; Kapitel 9 wird zeigen, dass die zweite Art beim Abschwächen von ganz allein aus der Rechnung fällt.
Mit einer Einspannung links und einer Zugkraft rechts ist der Stab vollständig beschrieben — und dann lässt sich seine Lösung hinschreiben. Genau das macht ihn hier so nützlich: Er ist der Fall, in dem noch geht, was an der Ferse nicht mehr geht.
WichtigVorhersage-Punkt
Bevor du schiebst: Der Stab ist links fest, rechts zieht die Kraft \(F\), und im ganzen Stab wirkt die innere Last \(b\). Was passiert mit der Spannung, wenn du \(b\) auf null stellst — bleibt sie über den Stab konstant, oder wächst sie zum festen Ende hin? Und: Wird die Verschiebung dann eine Gerade oder eine gekrümmte Kurve? Lege dich fest.
Deutung. Bei \(b = 0\) ist die Spannung über den ganzen Stab konstant, die Dehnung ebenso, und die Verschiebung wächst geradlinig vom festen Ende bis zum freien — das ist die Feder aus Kapitel 4, nur ohne Zwischenknoten. Sobald du \(b\) aufdrehst, kippt das Bild: Am freien Ende trägt die Spannung immer noch genau \(F/A\), denn das ist die Randbedingung, aber nach innen wächst sie an, weil jedes Stück Stab die innere Last aller Stücke hinter sich mittragen muss. Ihre Steigung ist dabei überall \(-b\) — dieselbe Aussage wie am Würfelchen, nur jetzt über eine ganze Länge hinweg. Und weil die Dehnung der Spannung folgt, ist die Verschiebung keine Gerade mehr, sondern krümmt sich: Ihre Steigung ändert sich von Ort zu Ort. Genau das meint „\(u\) zweimal abgeleitet“.
Abbildung 8.2 hält die beiden Fälle nebeneinander fest — nicht als zwei Bilder nebeneinander, sondern als drei Kurven untereinander, damit man sieht, wie eine aus der anderen hervorgeht.
Code
import numpy as npimport matplotlib.pyplot as pltfrom matplotlib.patches import FancyArrowF_ZEIG, B_ZEIG =1.2, 0.8xs = [k /200.0* STAB_L for k inrange(201)]fig, achsen = plt.subplots(4, 1, figsize=(7.0, 7.8), gridspec_kw={"height_ratios": [0.62, 1, 1, 1]})# --- Der Stab selbstax = achsen[0]ax.add_patch(plt.Rectangle((0.0, -0.09), 1.0, 0.18, fc="#eef1f4", ec="#5b6b7a", lw=2))for k inrange(7): ax.plot([-0.045, 0.0], [-0.20+ k *0.055, -0.16+ k *0.055], color="#5b6b7a", lw=1.2)ax.plot([0.0, 0.0], [-0.20, 0.20], color="#5b6b7a", lw=2)ax.add_patch(FancyArrow(1.0, 0.0, 0.13, 0.0, color="#b3541e", width=0.014, head_width=0.06, length_includes_head=True))for k inrange(6): xm = (k +0.5) /6.0 ax.add_patch(FancyArrow(xm -0.035, -0.20, 0.07, 0.0, color="#7a2b8a", width=0.008, head_width=0.04, length_includes_head=True))ax.text(-0.05, 0.26, "fest: u(0) = 0", fontsize=9, color="#5b6b7a", ha="left")ax.text(1.15, 0.0, "F", fontsize=11, color="#b3541e", va="center")ax.text(0.5, -0.34, "innere Last b", fontsize=9, color="#7a2b8a", ha="center")ax.set_xlim(-0.22, 1.34)ax.set_ylim(-0.44, 0.42)ax.axis("off")def kurvenpaar(ax, werte_mit, werte_ohne, titel, farbe, ylabel): ax.plot(xs, werte_ohne, color="#9aa0a6", lw=1.8, ls="--", label="ohne innere Last (b = 0)") ax.plot(xs, werte_mit, color=farbe, lw=2.4, label="mit innerer Last (b = 0,8)") ax.set_title(titel, fontsize=10.5) ax.set_ylabel(ylabel, fontsize=10) ax.grid(alpha=0.3) ax.set_xlim(0, STAB_L) ax.margins(y=0.14) de_achse(ax)kurvenpaar(achsen[1], [stab_verschiebung(F_ZEIG, B_ZEIG, x) for x in xs], [stab_verschiebung(F_ZEIG, 0.0, x) for x in xs],"Verschiebung u(x) — mit innerer Last gekrümmt", "#3b5ea8", "u")achsen[1].legend(fontsize=8.5, loc="upper left")kurvenpaar(achsen[2], [stab_dehnung(F_ZEIG, B_ZEIG, x) for x in xs], [stab_dehnung(F_ZEIG, 0.0, x) for x in xs],"Dehnung ε(x) = u′(x) — die Steigung der Kurve darüber","#2a7d2a", "ε")kurvenpaar(achsen[3], [stab_spannung(F_ZEIG, B_ZEIG, x) for x in xs], [stab_spannung(F_ZEIG, 0.0, x) for x in xs],"Spannung σ(x) = E · ε(x) — Steigung überall −b", "#b3541e", "σ")achsen[3].set_xlabel("Ort x im Stab (0 = eingespannt, L = freies Ende)", fontsize=10)plt.tight_layout()plt.show()
Abbildung 8.2: Der Zugstab und seine drei Kurven, untereinander. Ganz oben der Stab selbst: links fest eingespannt (u = 0), rechts mit der Endkraft F gezogen, dazu die innere Last b (violett) im ganzen Stab. Darunter die Verschiebung u(x), ihre Steigung ε(x) = u′(x) und die Spannung σ(x) = E · ε(x). Durchgezogen der Fall mit innerer Last (b = 0,8), gestrichelt der Fall ohne (b = 0). Ohne innere Last ist die Spannung konstant und die Verschiebung eine Gerade; mit innerer Last fällt die Spannung zum freien Ende hin linear ab (Steigung −b) und die Verschiebung krümmt sich. Alle Größen sind schematisch und ohne Einheit (E = 2, A = 1, L = 1, F = 1,2).
Deutung. Die drei Kurven gehören zusammen wie in Kapitel 7 Weg, Steigung und Fläche: Die mittlere ist die Steigung der oberen, die untere ist die mittlere mal \(E\). Am freien Ende (rechts) treffen sich beide Spannungslinien, denn dort ist die Kraft vorgegeben und gilt in beiden Fällen gleich. Nach links laufen sie auseinander — die durchgezogene steigt an, weil die innere Last dazukommt. In Tabelle 8.2 stehen die vier Zahlen dazu:
Tabelle 8.2: Der Zugstab mit und ohne innere Last, bei gleicher Endkraft F = 1,2 (schematische Größen ohne Einheit, E = 2, A = 1, L = 1).
Größe
ohne innere Last (\(b = 0\))
mit innerer Last (\(b = 0{,}8\))
Spannung am freien Ende, \(\sigma(L)\)
1,2
1,2
Spannung am festen Ende, \(\sigma(0)\)
1,2
2
Verschiebung des freien Endes, \(u(L)\)
0,6
0,8
Steigung der Spannung, \(\mathrm{d}\sigma/\mathrm{d}x\)
0
−0,8
Deutung unter der Tabelle. Am freien Ende steht in beiden Fällen dieselbe Spannung — die Randbedingung lässt gar nichts anderes zu. Am festen Ende unterscheiden sie sich um genau \(b \cdot L\), und die Steigung der Spannung ist genau \(-b\): die Würfelbilanz von oben, über die ganze Stablänge gelesen. Dass das freie Ende mit innerer Last weiter wandert, ist die Summe aller Dehnungen unterwegs.
8.5 Überall gleichzeitig: die Feldgleichung
Bisher war von einer Richtung die Rede. Der Kern lässt sich in einem Satz sagen: Die räumliche Änderung der Spannung gleicht in jedem Punkt die innere Last aus. Und weil diese Bedingung ein ganzes Feld beschreibt — das Spannungsfeld über alle Punkte —, ist sie eine Feldgleichung.
Das Entscheidende ist dabei nicht die Formel, sondern das Wörtchen überall: Die Bedingung gilt nicht an drei Stellen, sondern in jedem einzelnen Punkt des Gewebes zugleich. Abbildung 8.3 macht das sichtbar.
Code
import numpy as npimport matplotlib.pyplot as pltfrom matplotlib.path import Path as MplPathfrom matplotlib.patches import PathPatchfig, ax = plt.subplots(figsize=(7.6, 4.8))kontur_und_orientierung(ax)lasteinleitungen(ax)# Ein Clip-Pfad aus der Kontur: die Würfelchen werden am Rand beschnitten, statt# über die Kontur hinauszuragen.clip = PathPatch(MplPath(np.vstack([KONTUR, KONTUR[:1]])), transform=ax.transData, fc="none", ec="none")ax.add_patch(clip)pfad = MplPath(KONTUR)schritt =4.0seite = schritt *0.62for x in np.arange(2, 66, schritt):for y in np.arange(2, 42, schritt):# Würfelchen zeichnen, wenn sein Mittelpunkt im Knochen liegt, und am# Konturrand clippen (kein Überstand).if pfad.contains_point((x, y)): rect = plt.Rectangle((x - seite /2, y - seite /2), seite, seite, fc="none", ec="#5b6b7a", lw=0.7, alpha=0.7, zorder=3) rect.set_clip_path(clip) ax.add_patch(rect)ax.text(33, 47, "„gilt an jedem einzelnen Punkt“", ha="center", fontsize=10, color="#444")ax.set_xlim(-16, 70)ax.set_ylim(-4, 52)ax.set_aspect("equal")ax.axis("off")plt.tight_layout()plt.show()
Abbildung 8.3: Die Punkt-für-Punkt-Bedingung. Über die echte Kalkaneus-Kontur ist ein Raster kleiner Würfelchen gelegt (am Konturrand sauber beschnitten); die Gleichgewichtsbedingung „Änderung der Spannung plus innere Last gleich null“ muss an jedem einzelnen gelten — gleichzeitig. Violett die drei Lasteinleitungen. Sagittalschnitt, x nach vorn, y nach oben.
Deutung. Jedes Kästchen steht für einen Punkt, an dem dieselbe Bedingung gelten muss. Das sind nicht ein paar Gleichungen, sondern unendlich viele, alle miteinander verknüpft — denn die Spannung an einem Punkt hängt an der seiner Nachbarn. Eine einzelne Bilanz stellt man von Hand auf; alle zugleich zu erfüllen, ist das eigentliche Problem.
8.6 Zwei Richtungen: die partielle Gleichung
Der Stab hatte eine Richtung, und darum konnten wir seine Lösung hinschreiben. Ein Schnitt durch das Fersenbein hat zwei. Was ändert sich?
Kapitel 6 hat es vorbereitet: Im ebenen Schnitt trägt jede Fläche nicht eine Spannung, sondern zwei. Eine steht senkrecht auf ihr und zieht oder drückt — die Normalspannung. Die andere liegt längs der Fläche und schiebt an ihr entlang — die Schubspannung\(\tau_{xy}\), dieselbe, die dort zum Kippen des rechten Winkels gehörte. Vier Seiten, auf jeder zwei Spannungen: acht Pfeile, und Abbildung 8.4 zeigt sie.
Abbildung 8.4: Das Würfelchen im ebenen Schnitt, mit allen acht Spannungen. Auf jeder der vier Seitenflächen wirken zwei: eine senkrecht zur Fläche (Normalspannung σ_xx links und rechts, σ_yy oben und unten, orange) und eine längs der Fläche (Schubspannung τ_xy, blau). Für die Bilanz nach vorn (x), die der Kasten oben nennt, zählen zwei davon: wie sich σ_xx von links nach rechts ändert und wie sich τ_xy von unten nach oben ändert. Die Bilanz nach oben zählt die beiden anderen. Sagittalschnitt, x nach vorn, y nach oben; die Pfeillängen sind schematisch.
Deutung. Für die Bilanz nach vorn zählen jetzt zwei Änderungen statt einer. Die erste kennen wir: wie sich die Normalspannung \(\sigma_{xx}\) von der linken zur rechten Fläche ändert. Die zweite ist neu: Auch die Schubspannung \(\tau_{xy}\) schiebt in x-Richtung, an der unteren Fläche und an der oberen — und wenn sie unten und oben verschieden groß ist, bleibt netto eine Kraft nach vorn übrig. Beide Änderungen zusammen müssen die innere Last in x-Richtung ausgleichen:
Das gebogene \(\partial\) statt des geraden \(\mathrm{d}\) ist der ganze Unterschied, und er ist schnell erzählt. Beim Stab hing die Spannung von einer einzigen Zahl ab, dem Ort \(x\); es gab nur eine Richtung, in die man ableiten konnte. Hier hängt sie von zweien ab, \(x\) und \(y\). „Nach \(x\) ableiten“ heißt jetzt: ein Stück nach vorn gehen und dabei die Höhe festhalten — man fragt nach der Änderung in einer Richtung und lässt die andere unangetastet. Weil man dabei nur einen Teil der möglichen Änderungen betrachtet, heißt eine solche Ableitung partiell, und eine Gleichung, in der mehrere davon nebeneinanderstehen, heißt eine partielle Differentialgleichung. Damit ist die Zeile eingelöst, die im Vorwort in der Studiums-Tabelle steht: „Gleichgewicht in jedem Punkt → partielle Differentialgleichung“. Die zweite Bilanz, die nach oben, sieht genauso aus — mit \(\sigma_{yy}\) und derselben Schubspannung, nur in vertauschten Rollen.
Und jetzt zur offenen Frage von vorhin. Im Fersenmodell dieses Buches ist \(b\) null, und trotzdem wechselt die Spannung von Ort zu Ort. Die eindimensionale Bilanz konnte das nicht erklären; diese hier kann es. Fällt \(b_x\) weg, bleibt stehen: Die Änderung von \(\sigma_{xx}\) nach vorn und die Änderung von \(\tau_{xy}\) nach oben heben sich gegenseitig auf. Sie können also beide von null verschieden sein, solange sie zusammen null ergeben. Der Schub ist das Bindeglied: Was von unten gegen die Ferse drückt, wird über die Schräge des Knochens seitlich weitergereicht, hinauf zum Gelenk und nach hinten zur Sehne. Genau dieses Weiterreichen zeigen die farbigen Spannungsfelder, die das Buch ab Kapitel 11 rechnet.
8.7 Die Bilanz kommt zur Ruhe
Gleichgewicht ist eine Balance, kein leerer Zustand. Die Animation „Die Bilanz am Würfelchen“ zeigt es: Vier Zug-Spannungen ziehen an den Seiten nach außen; solange sie sich nicht paarweise aufheben, bleibt eine Netto-Resultierende, und das Würfelchen ist im Ungleichgewicht.
WichtigVorhersage-Punkt
Bevor du abspielst: Die Animation lässt die vier Pfeile ungleich beginnen und gleicht sie an. Wird das Zittern aufhören, weil die Kräfte verschwinden — oder weil sie sich gerade aufheben? Schätze, bevor du auf Abspielen klickst.
Deutung. Das Zittern hört auf, weil sich die Kräfte aufheben, nicht weil sie verschwinden — genau die Aussage des Widerlegungskastens. Die angezeigte Netto-Resultierende ist aus den tatsächlichen Pfeillängen berechnet (rechts minus links, oben minus unten); sie geht gegen null, während die Pfeile gleich lang werden. Das Wackeln selbst ist nur ein Bild fürs Ungleichgewicht; das Würfelchen bewegt sich in Wahrheit nicht.
8.8 Warum keine Formel-Lösung
Am Stab ging es: Eine Gleichung, zwei Randbedingungen, und die Lösung \(\sigma(x) = F/A + b\,(L-x)\) stand da. Warum macht man das mit der Ferse nicht genauso? Abbildung 8.5 stellt die zwei Fälle untereinander.
Abbildung 8.5: Formel gegen Zerlegung, untereinander. Oben ein glattes Rechteck mit einfacher, glatter Last: Dafür ist oft eine geschlossene Formel bekannt — so wie für den Zugstab dieses Kapitels. Unten die echte, zerklüftete Kalkaneus-Kontur mit drei Krafteinleitungen in verschiedene Richtungen (Bodendruck am Bodenkontakt, Achillessehnenzug am Achillesansatz, Faszienzug an der Enthese): Dafür ist keine praktikable geschlossene Lösung bekannt — die Lösung muss numerisch entstehen, indem man das Gebiet in kleine Elemente zerlegt (Vorschau auf Kapitel 9 und 10). Unten: Sagittalschnitt, x nach vorn, y nach oben.
Deutung. Der Unterschied liegt nicht an der Gleichung — es ist dieselbe —, sondern am Rand und an dem, was daran hängt. Beim Stab war der Rand zwei Punkte, und an jedem stand eine der beiden Angaben. Die Ferse hat einen zerklüfteten Rand aus lauter Punkten, drei Krafteinleitungen in verschiedene Richtungen und Material, dessen Steifigkeit von Ort zu Ort wechselt; dazu die zweite Richtung mit ihrer Schubspannung. Für diese Kombination ist keine praktikable geschlossene Lösung bekannt. Deshalb rechnet man numerisch: das Gebiet in viele kleine, einfache Stücke zerlegen und die Bedingung auf jedem näherungsweise erfüllen. Das ist die Idee der finiten Elemente, und der Weg dorthin beginnt im nächsten Kapitel.
Editierbare Zelle. Der folgende Block ist zum Selbstprobieren da, und er antwortet mit einem Bild. Links liegt die Spannung über der Breite des Würfelchens, für jede innere Last aus der Liste eine Gerade: Ihre Neigung ist die Steigung \(\mathrm{d}\sigma/\mathrm{d}x = -b\). Rechts derselbe Zugstab wie oben, mit der Verschiebung und der Spannung übereinandergelegt. Setz für lasten andere Zahlen ein oder verschiebe endkraft und führe die Zelle aus — die Geraden kippen, und die Stabkurven wandern mit.
Deutung. Das Bild bestätigt nur, was oben schon steht: Je größer die innere Last, desto steiler fällt die Gerade links — die Steigung ist gerade das Negative der inneren Last (\(-b\)) —, und rechts folgt die Spannung derselben Regel über die ganze Stablänge, während die Verschiebung als ihre Stammfunktion sanft ansteigt. Setzt du stab_last auf null, wird die Spannung waagerecht und die Verschiebung eine Gerade.
Übungen
Ü 8.1 (Verstehen). Ein Würfelchen hat links die Spannung \(\sigma_{\text{links}}\) und rechts \(\sigma_{\text{rechts}}\), die Breite ist \(\Delta x\). Woran erkennst du, ob es in x-Richtung im Gleichgewicht ist, und wie groß muss die innere Last \(b\) sein, wenn sich links und rechts die Spannungen um einen bestimmten Betrag unterscheiden?
HinweisMusterlösung zu Ü 8.1
Im Gleichgewicht muss die Summe der Kräfte null sein: \((\sigma_{\text{rechts}} - \sigma_{\text{links}}) + b\,\Delta x = 0\). Daraus folgt \(b = -(\sigma_{\text{rechts}} - \sigma_{\text{links}})/\Delta x\) — die innere Last ist gerade das Negative der Steigung der Spannung. Sind beide Randspannungen gleich, ist die Steigung null und es braucht keine innere Last; je größer ihr Unterschied, desto größer die Last, die das Würfelchen trägt. Ist die geforderte Last null, aber die Spannungen verschieden, kann das Würfelchen nicht im Gleichgewicht sein.
Ü 8.2 (Verändern). Stelle am Stab-Regler die innere Last auf null und lass die Endkraft stehen. Beschreibe, was aus den drei Kurven wird und warum. Erkläre danach, warum die Spannung im Fersenbein trotzdem von Ort zu Ort wechselt, obwohl auch dort keine innere Last angreift.
HinweisMusterlösung zu Ü 8.2
Bei \(b = 0\) verlangt die Bilanz \(\mathrm{d}\sigma/\mathrm{d}x = 0\): Die Spannung ist über den ganzen Stab konstant und gleich \(F/A\), also gerade dem Wert, den die Randbedingung am freien Ende vorschreibt. Weil \(\varepsilon = \sigma/E\) ist, ist auch die Dehnung überall gleich, und eine konstante Steigung ergibt eine gerade Verschiebungslinie von \(u(0)=0\) bis \(u(L)\). Das Fersenbein rechnet dieses Buch ebenfalls ohne innere Last — aber es ist nicht eindimensional. In der ebenen Bilanz \(\partial\sigma_{xx}/\partial x + \partial\tau_{xy}/\partial y + b_x = 0\) können sich die beiden Änderungen gegenseitig aufheben, ohne dass eine von beiden null wäre. Die Schubspannung reicht die Last quer weiter, und darum wechselt die Spannung von Ort zu Ort. Dazu kommt, dass der Querschnitt der Ferse nicht konstant ist wie der des Stabs.
Ü 8.3 (Übertragen). Die stationäre Wärmeleitung hat dieselbe Struktur wie das Gleichgewicht: Die Änderung eines Flusses gleicht eine verteilte Quelle aus. Benenne, was dort dem Spannungsfluss, der inneren Last und dem Gleichgewicht entspricht.
HinweisMusterlösung zu Ü 8.3
Bei der stationären Wärmeleitung spielt der Wärmestrom die Rolle der Spannung, eine Wärmequelle im Inneren die Rolle der inneren Last, und „stationär“ (zeitlich konstant) die Rolle des Gleichgewichts: In jedem Punkt gleicht die räumliche Änderung des Wärmestroms genau die Quelle aus. Wie beim Würfelchen hängt das Vorzeichen von der Konvention ab — schreibt man den Fluss in Richtung fallender Temperatur, lautet die Bilanz „Änderung des Flusses = Quelle“ (bei anderer Vorzeichenwahl mit umgekehrtem Zeichen). Es ist dieselbe Struktur „Änderung eines Flusses gleicht eine verteilte Quelle aus“, nur mit anderen Größen — deshalb löst dieselbe Methode (finite Elemente) beide Probleme.
Roter Faden
Wo kam das schon vor, wo kommt es wieder?Zurück: Das Gleichgewicht der Federknoten aus Kapitel 5 und die Steigung aus Kapitel 7 verschmelzen hier zur Feldgleichung — Summe der Kräfte gleich null, jetzt in jedem Punkt, getragen von der Ableitung der Spannung. Das Hookesche Gesetz und die Schubspannung aus Kapitel 6 machen daraus eine Gleichung in der gesuchten Verschiebung, und die Federkette aus Kapitel 4 erweist sich als derselbe Stab, nur in Stücke zerhackt. In der Studiums-Tabelle im Vorwort steht dafür die Zeile „Gleichgewicht in jedem Punkt → partielle Differentialgleichung“; sie ist mit diesem Kapitel eingelöst (abgehakt wird die Tabelle am Ende dieses Teils, Kapitel 9). Vor:Kapitel 9 nimmt genau die Gleichung \(-(E\,A\,u')' = A\,b\) mit ihren beiden Randbedingungen und schwächt sie ab, damit man sie über Elemente lösen kann; Kapitel 10 ersetzt den Stab durch Dreiecke und die Zahl \(E\) durch die 3×3-Materialtabelle aus Kapitel 6; und die Kräftebilanz kehrt als Prüfung wieder, wenn Kapitel 13 nachrechnet, ob die Lagerkräfte die aufgebrachten Lasten wirklich tragen.
Was dieses Kapitel NICHT tut
Es leitet keinen Spannungstensor als Formalismus her und löst die ebene Gleichung nicht — das ist Kapitel 9 und 10. Die Randbedingungen bekommen hier nur ihre zwei Grundformen; ihre Namen, die federnde Bettung und der Umgang mit Lagerreaktionen kommen in Kapitel 12. Die Zahlen dieses Kapitels sind schematisch und ohne Einheit — die Würfelbilanz und der Zugstab sind Modellrechnungen, keine Fersenwerte; echte Spannungszahlen für den Kalkaneus entstehen erst mit dem Löser ab Kapitel 11. Was das Kapitel leistet, ist der Schritt vom Knoten zum Punkt: die Bilanz, die Gleichung in \(u\), ihre Ränder und das Wort „partiell“.