![]() |
---|
Hallo zusammen, ich beschäftige mich gerade mit der Funktion einer freihängenden Kette, Hintergrund ist hier, dass ich gerne ein kleines Programm schreiben würde, welches mir, zwischen 2 beliebigen Punkten und einer definierten Länge des Seils, ein Seil im Raum/Fläche aufspannt. Die Katenoide oder Kettenfunktion habe ich bereits gefunden, jedoch bin ich dabei auf zwei Probleme gestoßen: 1. Gilt die Funktion auch für Ketten, welche unterschiedlich hohe Ankerpunkte haben? Wenn ja, wie fließt das ein? 2.Ist die Bogenlänge einer derartigen Funktion überhaupt analytisch lösbar? Zum einfacheren Verständnis habe ich zuerst versucht das ganze durch die ähnlich aussehende quadratische Funktion anzunähern, aber auch hier macht mir die Bogenlänge einen Strich durch die Rechnung. Frage an euch wäre jetzt: Wie würdet ihr dieses Problem lösen? Gibt es vielleicht einen einfachen Annäherungswert, der für ein simples Programm (es muss nicht exakt sein) besser geeignet wäre? Um vielleicht ein kleines Beispiel vorzugeben, gegeben sei Punkt und und eine Kette der Länge frei hängend zwischen diesen beiden Punkten. Danke und Gruß Hans Für alle, die mir helfen möchten (automatisch von OnlineMathe generiert): "Ich möchte die Lösung in Zusammenarbeit mit anderen erstellen." |
Hierzu passend bei OnlineMathe: Funktion (Mathematischer Grundbegriff) Online-Übungen (Übungsaufgaben) bei unterricht.de: |
![]() |
![]() |
ad Ja, auch bei unterschiedlich hohen Ankerpunkten stellt sich eine Kettenlinie ein ad Ja, die Bogenlänge lässt sich sogar sehr einfach berechnen un dführ auf einen simplen Sinus Hyperbolicus. Die allgemeine Kettenlinie geht aus der Standardkettenlinie durch Anwendung eines Formparameters und Verschiebung in bzw- y-Richtung (zB festgelegt durch die Lage des Scheitels hervor. Durch Angabe der Koordinaten zweier Kurvenpunkte und der Bogenlänge zwischen diesen beiden Punkten lassen sich diese drei Parameter durch Lösen eines Gleichungssystems ermitteln. Am besten numerisch mit einem Näherungsverfahren oder eben einem geeigneten Programm. Im Anhang durchgeführt mit deinen Beispieldaten. |
![]() |
Ich hab Dein Verfahren mal auf GeoGebra umgesetzt: www.geogebra.org/cas Algebra ( Ansicht Eingabezeile) A=(-3,1) B=(1,-1) L_{Seil}=6 CAS 1:f(x,k,sx,sy):=k cosh((x-sx)/k)+sy-k 2:{y(A)=f(x(A),k,sx,sy), y(B)=f(x(B),k,sx,sy),L_{Seil}=k( sinh((x(B)-sx)/k)-sinh((x(A)-sx)/k) )} 3:NSolve($2,{k = 1, sx = 1, sy = 1}) 4:f_k(x):=Substitute(f(x, k, sx, sy),$3) Die numerische Lösung des GLS dürfte mit Standard-Bibliotheken recht schwierig umzusetzen sein? |
![]() |
Die numerische Lösung des GLS dürfte mit Standard-Bibliotheken recht schwierig umzusetzen sein? In einschlägigen Mathe-Bibliotheken die es für die gängigen Programmiersprachen gibt sollte sich eigentlich idR irgend ein Newton-Derivat wie konjugierte Gradienten oder Levenberg-Marquardt zur Lösung nichtlinearer Gleichungssysteme finden lassen. Falls einem eine solche Bibliothek nicht zur Verfügung steht kann man es ja als Fingerübung selbst implementieren (mit der Vereinfachung, dass es ja nur auf ein ganz bestimmtes GLS hingetrimmt werden muss). Aber da sich der Fragesteller nun seit mehr als zwei Tagen nicht mehr gerührt hat, scheint sein Interesse an der Problematik ohnedies enden wollend zu sein. |
Diese Frage wurde automatisch geschlossen, da der Fragesteller kein Interesse mehr an der Frage gezeigt hat.
|