Verfasst am: 16.01.2022, 18:16
Titel: Von Schraubenröhre/Linie Hauptkrümmungen und Tangentialebe
Hallo alle zusammen,
ich habe ein Problem bei der Berechnung der Hauptkrümmung und der Tangetialebene einer Schraubenröhre welche entlang einer Schraubenlinie liegt.
Zu der Aufgabe zählen auch andere Berechnungen wie z.B. Fundamentalgrößen, Flächenelemente oder Volumen.
Diese waren auch kein Problem in Matlab.
Jedoch bin ich etwas überfragt bei der Berechnung der Hauptkrümmung und der Tangentialebene in Matlab. Auch die Einbeziehung/Umsetzung der Weingartenabbildung klappt nicht.
k(t)=[a*cos(t);a*sin(t);h*t]; % Berechnung Schraubenkurve
dk(t)=diff(k,t); % Berechnung 1. Ableitung nach t
ddk(t)=diff(dk,t); % Berechnung 2. Ableitung nach t
eFT=FT/norm(FT); % Berechnung Einheitsvektoren für Funktion r(t,theta)
eFN=FN/norm(FN); % Vektor durch Vektorlänge teilen (Betrag)
eFB=FB/norm(FB);
r(t,theta)=rho.*(eFB.*sin(theta)-eFN.*cos(theta))+k; %%Formel aus Aufgabe
tu=diff(r,t); % Berechnung tu und tv für Aufgabe 2 & 3
tv=diff(r,theta); % Berechnung hier notwendig, da t im folgenden einen Wert bekommt % Partielle Ableitung nach r oder theta
t = linspace(tmin,tmax,300); %300 Werte für t berechnen
theta = linspace(thetamin,thetamax,36); % alle 10°
[T,Theta]=meshgrid(t, theta); %% Generiert x- und y-Matrizen für dreidimensionales Plotten --> man erhält alle möglichen Paarungen
rplot=r(T,Theta); %% Wertematrix berechnen
rx=cell2sym(rplot(1)); %% Wertecell in Sym umwandeln
ry=cell2sym(rplot(2));
rz=cell2sym(rplot(3));
%subplot(1,2,1); %% in einer Figure Plotten figure(1); %% mehrere Figure erstellen plot3(rx,ry,rz,"b");
hold on
grid on
xlabel('x');
ylabel('y');
zlabel('z');
title('Röhre entlang einer Schraubenkurve');
kplot=k(t); %% t extra gewählt, da k nur von t abhängig ist, T wäre die Matrix für Theta und T
kx=cell2sym(kplot(1)); %% in kplot wurden die Werte als Cell abgespeichert, diese sind nicht so nicht plotbar
ky=cell2sym(kplot(2));
kz=cell2sym(kplot(3));
wo genau ist das Problem? Welche Formeln versuchst du umzusetzen, welche Fehler oder unerwartete Verhalten treten auf? "klappt nicht" ist keine hilfreiche Problembeschreibung ;)
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Ich habe mich an den Tangentialebenen versucht. Es funktioniert auch insofern das mir diese für die Schraubenlinie geplottet werden. Allerdings weiß ich nicht wie ich diese jetzt auf die Schraubenröhre beziehen kann.
Hier der Code, Tangentialebenen Berechnung Abschnitt Aufgabe 5.
Die Hauptkrümmungen habe ich versucht mit Hilfe der ersten und zweiten Fundamentalgröße und dessen Matrix zu berechnen. Über diese wollte ich die Weingartenabbildung bestimmen, durch die Multiplikation der zweiten mit der Invertierten Matrix der ersten.
Aus der Weingartenabbildung hatte ich dann Woraus ich wiederum vor Eigenwerte zu bestimmen welches dann die Hauptkrümmung ist.
Der Code dafür läuft allerdings nicht sehr sehr lange und kommt eigentlich zu keinem Ende. Ich habe ihn unten separat angefügt.
k(t)=[a*cos(t);a*sin(t);h*t]; % Berechnung Schraubenkurve
dk(t)=diff(k,t); % Berechnung 1. Ableitung nach t
ddk(t)=diff(dk,t); % Berechnung 2. Ableitung nach t
eFT=FT/norm(FT); % Berechnung Einheitsvektoren für Funktion r(t,theta)
eFN=FN/norm(FN); % Vektor durch Vektorlänge teilen (Betrag)
eFB=FB/norm(FB);
r(t,theta)=rho.*(eFB.*sin(theta)-eFN.*cos(theta))+k; %%Formel aus Aufgabe
tu=diff(r,t); % Berechnung tu und tv für Aufgabe 2 & 3
tv=diff(r,theta); % Berechnung hier notwendig, da t im folgenden einen Wert bekommt % Partielle Ableitung nach r oder theta
t = linspace(tmin,tmax,300); %300 Werte für t berechnen
theta = linspace(thetamin,thetamax,36); % alle 10°
[T,Theta]=meshgrid(t, theta); %% Generiert x- und y-Matrizen für dreidimensionales Plotten --> man erhält alle möglichen Paarungen
rplot=r(T,Theta); %% Wertematrix berechnen
rx=cell2sym(rplot(1)); %% Wertecell in Sym umwandeln
ry=cell2sym(rplot(2));
rz=cell2sym(rplot(3));
%subplot(1,2,1); %% in einer Figure Plotten figure(1); %% mehrere Figure erstellen plot3(rx,ry,rz,"b");
hold on
grid on
xlabel('x');
ylabel('y');
zlabel('z');
title('Röhre entlang einer Schraubenkurve');
kplot=k(t); %% t extra gewählt, da k nur von t abhängig ist, T wäre die Matrix für Theta und T
kx=cell2sym(kplot(1)); %% in kplot wurden die Werte als Cell abgespeichert, diese sind nicht so nicht plotbar
ky=cell2sym(kplot(2));
kz=cell2sym(kplot(3));
Aufgabe Hauptkrümmungen bestimmen, der Code gehört eigentlich ebenfalls in den zuvor genannten code. Allerdings habe ich diesen herauskopiert damit das obige Beispiel lauffähig ist.
Der Code dafür läuft allerdings nicht sehr sehr lange und kommt eigentlich zu keinem Ende.
Bei mir läuft der Code zwar lange, aber bis zum integral2-Aufruf fehlerfrei durch. Dort müssen alle Grenzen numerisch sein, tmax ist aber symbolisch.
Die lange Laufzeit dürfte durch das (zu) viele Arbeiten mit symbolischen Variablen kommen. Spätestens beim Einsetzen von Werten würde ich auf numerisch wechseln.
Wenn, dann sollte man die Parameter auch symbolisch definieren, vor allem h:
Code:
a=sym(1); % geg. in Aufgabenstellung
h=a/(2*sym(pi)*2); %
rho=a/10;
Allerdings weiß ich nicht wie ich diese jetzt auf die Schraubenröhre beziehen kann.
Kannst du die Frage konkretisieren?
Der untere Code verwendet dann tu2, etc. und ist dadurch nicht lauffähig.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.