Trägheitstensor in Matlab aus STL-Datei berechnen

Neue Frage »

#Robert# Auf diesen Beitrag antworten »
Trägheitstensor in Matlab aus STL-Datei berechnen
Hallo Zusammen,

ich bin neu hier und hoffentlich nicht im falschen Unterforum gelandet. Der Kern meiner Frage bezieht sich auf Volumenintegrale von Matrizen.

Folgendes Problem quält mich jetzt schon seit geraumer Zeit und ich komme einfach nicht auf die Lösung. Hoffentlich kann mir hier jemand helfen.

Also ich möchte Massen-Trägheitstensoren von beliebig geformten Körpern in Matlab (bzw. SimMechanics G1) rechnen.

Die Ausgangssituation ist, dass es möglich sein soll aus einer STL-Datei (Surface Tesselation Language), die z.B. nach CAD-Konstruktion als .stl gespeichert wurde, sämtliche geometrische bzw. mechanischen Größen zu bestimmen, die für Mehrkörpersimulion in SimMechanics benötigt werden.

Auf der Mathworks Homepage habe ich eine Datei gefunden die soetwas kann und sogar einen SimMechanics-BodyBlock erstellt.

Nun möchte ich prüfen ob das Programm richtig rechnet. Dazu muss ich natürlich den Quellcode verstehen. Diesen verstehe ich vollständig, bis auf die Berechnung des Trägheitstensors.

Hier verstehe ich zwar so ca. worauf die einzelnen Zeilen des Codes hinaus wollen, aber leider nicht wie dies funktionieren soll.

Um nicht zu lang um den heißen Brei zu reden schreibe ich mal die relevanten Zeilen des Quellcodes auf und was ich daran nicht verstehe? Ebenfalls habe ich die nötigen Datein inkl. Beispiel angehängt.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

run(filename); % In einem anderen Unterprogramm wird aus der stl-file eine m-file erzeugt, damit matlab damit rechnen kann. Hier wird
% diese m-file ausgeführt, diese ist gleich der stl-file, nur es fehlen die jweiligen normalenvektoren, aslo nur die
% Eck-Koordinaten enthalten.


%% Init
numtriangle = numel(triangle);
Ccan=1/60*(1/2*eye(3)+1/2*ones(3,3))*rho; % Diese Zeile verstehe ich nicht. Was wird hier gerechnet? Was soll Ccan bezwecken?
Xgtotal = zeros(3,1);
V=zeros(numtriangle,1);
M=zeros(numtriangle,1);
C=zeros(3,3,numtriangle);
Xg=zeros(3,1,numtriangle);

for i = 1:numtriangle
A = reshape(struct2array(triangle(i)),3,3)*(1/1000); % Der Faktor (1/1000) ist von mir selbst eingefügt um in der Einheit [mm] rechnen zu können
V(i) = 1/6 * det(A); %Volume % rho wird von einem anderen Unterprogramm übergeben. Daher hier einfach manuell z.b. für stahl rho = 7874 deklarieren.
M(i) = rho * V(i); %Mass
Xg(:,:,i) = mean([zeros(3,1) A],2); %Center of Mass
C(:,:,i) = det(A)*A*Ccan*A'; %Covariance % Ich vestehe zwar was hier als Ergebnis rauskommen soll aber nicht wie es durch speziell diese Rechnung entstehen soll.
end

Mtotal = sum(M);
Ctotal = sum(C,3);
%Vtotal = sum(V);
for i=1:numtriangle
Xgtotal = Xgtotal + Xg(:,:,i)*M(i);
end
Xgtotal = Xgtotal/Mtotal;

%Translate to Xgtotal (center of mass)
dx = zeros(3,1) - Xgtotal;
Ctotal = Ctotal + Mtotal*(dx*Xgtotal'+Xgtotal*dx'+dx*dx'); % Diese Zeile habe ich zur besseren Dastellung hier umgeschrieben. Original im Anhang

%Tensor of Inertia
J=eye(3)*trace(Ctotal)-Ctotal; % Das ist mir klar

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


Mein Problem sind also speziell "Ccan" und "C(:,:,i) bzw C". Ich verstehe nicht wie ich an der Stelle wo normal ein Volumenintegral gerechnet wird nur eine Matrizenmuliplikation stehen kann?

Im Anhang befinden sich eine aus einer stl-Beispieldatei enstandene m-file (für "run(filename") und die zur Berechnung (heißt "slt2sm") verwendete m-file. Die restilichen Dateien wie z.B. gui etc. für SimMechanics habe ich nicht angehängt, da diese mit dem Problem nichts zutun haben.

Ich wäre wirklich sehr sehr dankbar wenn mir hier jemand auf die Sprünge helfen könnte.

Grüße
#Robert# Auf diesen Beitrag antworten »

Hallo Zusammen,

weiß wirklich niemand eine Antwort?

Bzw. falls ich im falschen Unterforum bin, wäre ein Hinweis dazu auch schon eine Hilfe.

Es is nicht so, dass ich es überhaupt nicht verstehe. Ich brauche hauptsächlich einen Tipp für die Zeilen:

Ccan=1/60*(1/2*eye(3)+1/2*ones(3,3))*rho; und C(:,:,i) = det(A)*A*Ccan*A';

Das allg. Prinzip für den Trägheistensor ist mir schon. Für jeden Tetraeder, bezogen auf sein KOS (welches jeweils dem globalen KOS entspricht), seinen Trägheitstensor rechnen. Danach die Träheiten einfach zusammenfassen und mit dem gemeinsamen Steineranteil (da alle Tetraeder gleiches KOS haben hat dann der ganze Körper auch gleiches KOS) auf den Gesamtschwerpunkt beziehen.

Mein Problem sind die Trägheitstensoren der einzelnen Schwerpunkte. Wenn ich nach der allg. Formel gehe:



dann sind zwar die Einträge in der Matrix für jeden Tetraeder gleich aber die Integrationsgrenzen jeweils anders.

Der Quellcode kann sich die jeweiligen Integrationsgrenzen ja nicht aus dem Hut zaubern. Also muss es anders gehen.


Hier spielt bestimmt: Ccan=1/60*(1/2*eye(3)+1/2*ones(3,3))*rho; eine Rolle. Mit gibt es ja schon einen Hinweis auf eine Volumenberechnung und kein Volumenintegral (Das aus dem i-ten Tetraeder).

Falls sich das auf das Volumen bezieht, dann würde ja eine "Vorlagenmatrix" für jeden Tetraeder bedeuten.

Aber was soll diese "Vorlagenmatrix" bezwecken? (Falls mein Ansatz hier überhaupt stimmt)

Ich komme hier einfach auf keine Lösung und würde mich um jeden Hinweis freuen. Hier gibt es doch genug Leute die in Mathe wirklich gut sind. Es muss doch jemanden geben, der hier wenigsten eine Idee hat.

Vielen Dank.
 
 
#Robert# Auf diesen Beitrag antworten »

Hallo,

ich habe noch vergessen, dass bei weiterer Betrachtung des Codes, das Ergebnis der zwei Zeilen die ich nicht verstehe, folgendes sein müsste: (vereinfacht geschrieben!)

Aus
Ccan=1/60*(1/2*eye(3)+1/2*ones(3,3))*rho;
und
for i = 1:numtriangle
C(:,:,i) = det(A)*A*Ccan*A';
end

ergibt sich etwas mit

Also müsste in den besagten zwei Zeilen des Codes das jeweilige Volumgenintegral schon gerechnet sein.

Vielleicht gibt "Kovarianz" (was hinter der zweiten Zeile steht) einen Hinweis. Aber das einzige was ich dazu mal gelesen habe, ist das sich die Spur eines Tensor (was in der letzen Zeile Codes ja passiert) nur gut rechnen lässt, falls der Tensor ein gemischter Tensor (also je ein Basisvektor kontra- bzw. kovariant) ist. Aber ob das hier wirklich eine Rolle spielt????

Wäre wirklich nett wenn mir jemand helfen würde.

Danke
Ehos Auf diesen Beitrag antworten »

Ich beschreibe mal allgemein, wie man das Trägheitsmoment am einfachsten "verwaltet":

1.Schritt:
Zuerst berechnet man den Körper-Schwerpunkt und definiert damit eine neues Koordinatensystem K', welches gemäß gegenüber dem alten System K verschoben ist. Danach liegt der Nullunkt von K' im Schwerpunkt.

2.Schritt:
In diesem Schwerpunktsystem berechnet man den Trägheitstensor gemäß



Da die Matrix symmetrisch ist, muss man von den 9 Integralen nur 6 berechnen. Die Dichte muss innerhalb der Integrals stehen, wenn sie vom Ort abhängt.

3.Schritt:
Durch eine Drehung des Koordinatensystems kann man stets erreichen, dass der Trägheitstensor folgende einfache Diagonalgestalt bekommt



In diesem gedrehten Koordinatensystem hat man nur noch 3 nichtverschwindende Matrixelemete, die man als Hauptträgheitsmomente bezeichnet. Aus mathematischer Sicht sind diese nichts anderes als die Eigenwerte der obigen 3x3-Matrix J. Wir benötigen noch die Drehmatrix, welche die Drehung in dieses "günstige" Koordinatensystem vermittelt. Die Spalten dieser Drehmatrix sind die auf 1 normierten Eigenvektoren der obigen 3x3-Matrix J.
----------------------
Resümee:
In der Mechanik behandelt man einen Körper stets in demjenigen Schwerpunktsystem, wo der Trägheitstensor diagonal ist, denn die 3 Hauptträgheitsmomente enthalten die gesamte Information über das Trägheitsmoment bei beliebigen Drehachsen.

Für eine beliebige "schiefe" Drehachse (=Einheitsvektor) ergibt sich das spezielle skalare Trägheitsmoment durch die quadratische Form . Geht die Drehachse nicht durch den Schwerpunkt, kann man das "verschobene" Trägheitsmoment mit dem Satz von Steiner leicht berechnen.
#Robert# Auf diesen Beitrag antworten »

Hallo Ehos,

erstmal vielen Danke für Deine Antwort!

Leider konnte ich erst jetzt zurückschreiben, da ich vorhin erst wieder heimgekommen bin.

Das was Du schreibst ist natürlich alles richtig, nur bringt mich das leider nicht weiter. Ich denke mal, dass Dein Beitrag auch eher als eine Anregung zum Nachdenken zu verstehen ist.

Den Trägheitstensor in Haupachsensystem umzurechnen ist, so denke ich, ist bei meinem Problem eher uninteressant. Beim Austellen von BWGLn z.B. mit Newton-Euler wird die Rotation und somit auch Träheitstensor immer auf ein körperfestes KOS, i.d.R. Schwerpunkt bezogen. Dies ist aber je nach Körpergeometrie nicht immer das Haupsystem. In der Mehrkörpersimulation ist es dem Programm bzw. Computer egal ob da Deviation drin ist oder nicht, hauptsache die Trägheismomente bleiben konstant, daher körperfestes KOS. Habe mir dazu extra nochmal mein Skriptum von Mehrkörpersimulation angesehen und keinen Hinweis auf expliziete Hauptachentranformation gefunden. Und tatsächlich steht auch im User Guide von SimMechanics (Generation 1) drin, dass der Träheitstensor immer auf den Schwerpunkt bezogen wird. Zum Testen habe ich mir ein unsymmetrisches Profil in Catia gezeichnet und als STL gespeichert und der Algorithmus rechnet die Deviationsmomente mit rein.

Mein Problem ist, dass ich nicht verstehe wie das Programm den Träheitstensor ohne Integralrechnung, sondern nur mit Matrizenmultiplikation rechnet. Also ein Mathe und kein Mechanik Problem.

Die Rechnung für den Schwerpunkt kann ich nachvollziehen. Da ja jeder Teilkörper ein Tetraeder ist und die Dichte konstant, wird zuerst der i-te Volumenschwerpunkt gerechnet und dann, über die i-te Masse gewichtet, der Gesamtschwerpunkt gerechnet.

(Vorab sorry ist das erste mal, dass ich Latex mache und wegen der vielen {}-Klammern habe ich in den Formel den Index i nur für die analytischen Terme verwendet aber nicht für die "analytische" Darstellung des Matlab-Code)

Also zuerst mit A = reshape(struct2array(triangle(i)),3,3);: für das i-te STL-Dreieck

und ebenfalls für das i-te Dreieck bzw. i-ten Tetraeder [zeros(3,1) A]: , mit da ein Eckpunkt in jedem Tetraeder derselbe, der "globale" KOS-Ursprung, ist.

Dann ergibt sich Xg(:,:,i) = mean([zeros(3,1) A],2);: und das ist gleich

Abschließen kommen die Massen hinzu:

Es wird also kein einziges Integral (numerisch) gerechnet. Beim Schwerpunkt des Tetraeder ist das ja noch relativ leicht nachvollziehbar, da sich der geometrische Mittelpunkt ja aus "Überlegung" bzw. Rechnung an einer "einfachen" Geometrie ergibt.

Aber beim Trägheitstensor steig ich nicht mehr durch, wie das ohne Integration gehen soll. Aber irgendwie muss es ja gehen.

Wenn ich nur mal die Zeilen für den Tensor schreibe:

Ccan=1/60*(1/2*eye(3)+1/2*ones(3,3))*rho; ist mir ein Rätsel, vorallem das 1/10 (1/6 wird evtl. wieder für Volumen gebraucht V = 1/6*det(A))
C=zeros(3,3,numtriangle); initialisieren von leeren Matrizen für die Teil-(Noch Nicht Trägheits)-Tensoren
for i = 1:numtriangle
C(:,:,i) = det(A)*A*Ccan*A'; hier nur Ratespiel aber vorallem wegen Ccan, den Sinn der Rechnung A*A' denk ich hab ich verstanden
end
Ctotal = sum(C,3); Addition der Teil-Tensoren
dx = zeros(3,1) - Xgtotal;
Ctotal = Ctotal + Mtotal*(dx*Xgtotal'+Xgtotal*dx'+dx*dx'); hier die Verschiebung vom globalen KOS zum Schwerpunkt mit dem Steineranteil
J=eye(3)*trace(Ctotal)-Ctotal; Jetzt der fertige Trägheitstensor

Die letzte Zeile berechnet sich so (nur, dass im Code kein Integral gerechnet wird):



Vielleicht wird mit Ccan so eine Art Vorlage geschaffen und diese dann auf jeden einzelnen Tetraeder angewendet. Die Tatsache, dass "rho" und "1/6" oben bei Ccan stehen und nicht in der for-Schleife bei "C(:,:,i)", so wie es bei "V(i)" bzw. "M(i)" der Fall ist, könnte ja an Matlab selbst liegen (evtl. geht der Code schneller, wenn in einer Schleife nicht zu viele Matrizenmultiplikationen nacheinnander ausgeführt werden). Aber das ist nur eine Vermutung, ich bin noch Matlab Anfänger.

Ich wäre wirklich sehr dankbar wenn Du oder jemand anderes hier im Forum mit weiterhelfen könntet.

Gruß
Robert
Ehos Auf diesen Beitrag antworten »

Das Träghietsmoment für ein einzelnens Tetraeder wird in deinem Programm mit einer fertigen Formel berechnet. Ähhnliche Formeln gibt es ja auch für andere Körper (Kugel, Quader, Kreisscheibe...) Es wäre nicht sehr sinnvoll, wenn man für jedes einzelne Tetraeder neu integriert.
#Robert# Auf diesen Beitrag antworten »

Hallo Ehos,

danke, dass Du doch so schnell meldest.

An die fertige Formel habe ich auch schon gedacht, so wie es sie in "Tabellen" für einfache Geometrien gibt. So wie der Schwerpunkt ja auch nicht integriert wird, sondern durch eine geometrische Formel berechent wird. Leider habe ich nirgends eine Tabelle gefunden bei der eine fertige Formel für einen Tetraeder aufgeführt ist.

Aber mir ist, dank Deiner Antwort!!!, eine Idee gekommen. Ich erinnere mich, dass die verschiedenen Trägheitsmomente ja auch addiert werden können, also z.B. Trägheittenosr eines Zylinders aus "dünner runden Scheibe" und "dünner runder Stange" zusammensetzen.

So müsste es doch möglich sein, Trägheitsmomente auch zu subtrahieren. Also in meinem Fall, baue ich mir zuerst den Träheitstensor für ein dreiseitiges Prisma zusammen (durch Addition von dünnem Dreieck und Dreicksstange). Da sich das Prisma aus Tetraeder zusammensetzten lässt, kann ich den Trägheitstensor des Prismas auch durch 1/3 teilen und hätte dann mein Ergebnis.

Wenn das so stimmt, ist die Lösung wirklich einfach. Aber manchmal sieht man ja den Wald vor lauter Bäumen nicht mehr.

Ich werde Dich auf dem Laufenden halten.

Vielen Dank nochmal.

Gruß
Ehos Auf diesen Beitrag antworten »

Auch ich habe die Formel für das Trägheitsmoment eines unregelmäßigen Tetraeders nirgends gefunden. Leite dir die Formel mal selbst her. Betrachte dazu ein Tetraeder, das durch die 3 Vektoren aufgespannt wird, wobei die Drehachse durch den Nullpunkt geht. Ich habe mal angefangen zu rechnen. Die Sache ist zwar nicht schwierig, aber ziemlich rechenaufwendig. Wenn du willst, können wir das mal durchrechnen und die Ergebnsse vergleichen. Ich habe schon angefangen.
#Robert# Auf diesen Beitrag antworten »

Hallo Ehos,

gerne! Vielen Dank für die Hilfe.

Leider muss ich mich jetzt gliech um Haushalt kümmern. (Bin schon verheiratet und meine Frau macht grad Zirkus wegen der Wohnung)

Aber in so einer Stunde bin ich fertig und werd mich auch an die Rechnung setzten.

Ich habe auch einen Link gefunden, wo eine Erklärung für die Berechnung einer schiefen gleichseitigen Pyramide drin steht. Ist aber ein relativ altes Buch in google Books. Man muss sich schon sehr auf den Schreibstil eingewöhnen und schlecht lesbar ist es teils auch. Aber zur Not könnte es auch eine Hilfestellung sein.

Hier mal der Link: http://books.google.de/books?id=6tE_AQAA...0Prisma&f=false musst aber ein bisschen nach oben scrollen

Ich werd mich so bald als möglich an die Rechnung setzten und mich bei Dir melden.

Vielen Dank nochmal.

Bis später...
Ehos Auf diesen Beitrag antworten »

Das Buch, das du empfiehlst, ist wirklich ziemlich altmodisch geschrieben. Eine eigene Rechnung wäre vermutlich einfacher, als sich da durchzukämpfen. In welcher Form hast du das Tetraeder eigentlich gegeben? Ich schlage vor, wir geben die 3 Kantenvektoren mit vor und legen die Drehachse durch den Nullpunkt (also durch eine Ecke). Die gesuchte Formel für das Trägheitsmoment darf also nur von diesen 4 Vektoren abhängen. Die homogene Dichte setzen wir . Sie kann später als Faktor multipliziert werden. Wäre diese Ausgangssituation ok? Habe heute auch keine Zeit mehr.
#Robert# Auf diesen Beitrag antworten »

Hallo Ehos,

ok machen wir das so.

Halte mich jetzt bitte nicht für inkompetent aber ich verstehe nicht was was det(a,b,c) > 0 zu bedeuten hat. bzw. ich kann mich noch grob erinnern, dass es was mit der Definitheit von Matrizen zu tun hat. Aber was das jetzt mit unserem Problem zu tun hat?

Vielleicht habe ich grad auch nur einen blackout.

Fallst du grad noch kurz zeit hast, sage mit bitte wie Du das meinst.
Ehos Auf diesen Beitrag antworten »

Was bedeutet ?
Das bedeutet, dass die Determinante der 3 Vektoren positiv sein soll. Damit wird sichergestellt, dass das Volumen und das Trägheitsmoment des Tetraeders positiv werden, denn formal mathematisch können beide Größen auch ein negativ sein, was wir vermeiden wollen. Aber lass dich dadurch nicht verwirren. Falls bei dir ein negatives Trägheitsmoment herauskommt, lasse das Minuszeichen einfach weg.
---------------------------
Ich berechne am Wochenende den Ausdruck für das Trägheitsmoment eines durch die Vektoren aufgespannten, unregelmäßigen Tetraeders für beliebige Drehachse durch den Nullpunkt. Versuche das auch mal. Wir vergleichen dann unsere Formeln.
#Robert# Auf diesen Beitrag antworten »

Hallo Ehos,

ich habe jetzt mal den "Trägheitstensor" für ein Tetraeder, das durch die drei Einheitsvektoren aufgespannt wird, gerechnet. Dabei habe ich aber nicht den Trägheitstensor selbst gerechnet, sondern eine Abwandlung (veränderte Diagonalelemente) davon, ich nenne es mal "Einheits-Pseudo-Trägheitstensor". Der Grund dafür ist, mich so nah wie möglich am Quellcode zu halten.



Tatsächslich habe ich dasselbe Ergebnis, wie Quellcode "Ccan" darstellt. Meine weitere Überlegung ist, dass also Ccan eine fertige Formel bzw. eine Vorlage für diesen sog. "Einheits-Pseudo-Trägheitstensor" eines jedes STL-Tetraeders ist.

mit der Operation:

for i = 1:numtriangle
C(:,:,i) = det(A)*A*Ccan*A';
end

werden dann die Komponenten von Ccan aus der kanoischen Basis in eine jeweils neue Basis (dargestellt durch A) transformiert. So dass C(:,:,i) dann der "Einheits-Pseudo-Trägheitstensor" in der jeweiligen neuen Basis ist. Die Spalten von A sind dann die Basisvektoren des alten Systems dargestellt im neuen System.

Jetzt sind aber noch 3 Sachen offen.

1)

Warum darf ich mit der Transponierten von A rechnen? Da die jeweilige neue Basis nicht zwingend ein orthogonales System darstellt, müsste doch eher mit der Inversen gerechnet werden.

Meine Überlegung hierzu ist, dass die Komponenten von A zwar im neuen KOS dargestellt werden aber nach wie vor noch die Basisvektoren des alten, orthogonalen Systems sind.

2)

Die Determinante.

Beim der Volumenrechnung ist es klar, man umgeht das Volumenintegral mit der Formel V = 1/6*det(A), für das sog. orientierte Volumen für Hohlräume (müssen ja negativ ist Volumen einfließen).

Bei der Berechnung des Träheitstensors umgeht man aber das Volumenintegral nicht sondern rechnet es per Hand und schreibt das fertige Ergebnis in eine Matrix, "Einheits-Pseudo-Trägheitstensor".

Danach transformiert man die diese Martix, in dem man sie mit den Trafo-Matrizen von links und von rechts (mit der Transponierten) multiplieziert.

Hier fällt mir nur ein, dass in der gesammten Träheistformel bis jetzt keine Hohlräume, also negative Massen, berücksichigt wurden. Aber so elgeant wie bei der Volumenberchnung geht es ja hier nicht. det(A) ist ja schon das Volumen selbst. Man rechnet ja nicht das Volumenintegral explieziet aus um dann nochmal ein Volumen dazuzurechnen.

Bei orthogonalen Matrizen ist die Determinante entweder +1 oder -1, genaus sowas wäre hier nötig. Aber die jeweiligen A sind eben keine orthogonalen Matrizen, sonst wäre doch jedes Volumen vom Betrag her 1.

3)

Die einzelnen "Einheits-Pseudo-Trägheitstensoren" werden danach einfach addiert. Warum ist die Addition hier ohne Weiteres erlaubt, wenn doch die einzelen Tensoren in verschiedenen KOS dargestellt sind? In der Meachanik lassen sich zwar Rechnungen in unterschiedlichen KOS "mixen" (z.B. bei Newtwon-Euler ist für körperfestes KOS für Rotation aber für Translation ein inertial-KOS, jedenfalls bei Aufgaben mit Handrechnung). Aber ob das bei ausschließlicher Addition von Trägheitstensoren möglich ist???


Hast Du hier eine Idee?
Ehos Auf diesen Beitrag antworten »

Frage 1:
Meinst du folgendes?
Sei die Determinante dreier Vektoren . Transformiert man diese Vektoren mit einer Matrix A und bildet danach die Determinante, gilt

Frage 2:
Das negative Volumen hat hier nichts mit "Hohlräumen zu tun. Das Minuszeichen ist eine Folge der "falschen" Orientierung der 3 Vektoren. Angenommen ein Tetraeder hat das Volumen . Wenn man 2 Vektoren vertauscht, ändert das Volumen sein Vorzeichen gemäß . Dies ist aber für den Praktiker unwichtig, weil diesen nur der Betrag des Volumens interessiert.

Frage 3:
Über die Addition von Trägheitsmomenten (in deinem Sinne) müsste ich nochmal nachdenken. Diese Methode kenne ich bisher nicht.
---------------------------
Bin schon gut vorangekommen mit der Berechnung des Trägheitsmomentes von Tetraedern. Ich mache dies stur durch simple Integration. Würde dir eine solche Formel helfen?
#Robert# Auf diesen Beitrag antworten »

Hallo Ehos,

erstmal danke fürs Rechnen. Stell doch deine bisherigen Ergebnisse einfach mal rein, würde mir fürs Verständnis auf jeden Fall helfen. Aber ich denke Du brauchst es nicht alles fertig rechnen, da ich ja eigentlich schon draufgekommen bin.

Wegen Frage 1:

Da weiß ich leider nicht worauf Du hinaus willst? Meine Frage war, warum ich Kooridantentransformation mit der transponierten Matrix rechnen darf obwoh ich kein(?) orthogonlaes System habe.

Also soweit ich weiß, ist es doch so:

allgemeines KOS: mit B ist Transformationsmatrix.

orthogonales KOS:

da gilt: dies aber nicht in einem Nicht-Orthogonal-System

Wenn meine Vermutung stimmt, dass die Koordinatenmatrix A (welche ja die Eckpunkte der STL-Dreiecke enthält) auch die Transformationsmatrix für den Träghetistensor ist (also immer der selbe "Einheits-Pseudo-Trägheitstensor" in das neue KOS transformiert, das aufgespannt ist durch die Ortsvektoren der Dreickpunkte), dann bin ich mir nicht sicher ob man hier mit der Transponierten rechnen darf oder mit der Inversen Trafo-Matrix M (bzw. A) rechnen muss.


Wegen der zweiten Fragen:

Bei meinem Problem ist es auf jeden Fall wichig ob ein Volumen bzw. die Determinante der Vektoren negativ oder positive ist. Der Zusammenhang mit Hohlräumen ist so: Bei einem komplizierten Körper (z.B. realer Roboterarm) wird die Oberfläche durch STL in lauter kleine, gerade einfache Dreicke zerlegt. Diese Dreiecke werden definiert durch die drei Ortsvektoren der Eckpunkte und dem Normalenvektor auf dem Dreieck. Wenn man jetzt aber aus einer STL information wieder das Volumen des Körpers rechnen will, ist es wichtig zu wissen ob der Körper Hohlräume (z.B. Bohrungen für Gelenkanbindung) hat.
Wie soll aber das Programm bzw. der Quellcode wissen wo sich ein Hohlraum befindet wenn die einzige Information die Oberfläche ist. In dem die Vektoren der Dreieckpunkte jeweils so angeordnet werden, dass wenn der Normalenvektor zum gemeinsamen, globalben KOS-Ursprung zeigt, deutet dies auf die Grenzfläche eines Hohlrauems und daher trägt dieser Tetraeder negativ zum Gesamtvolumen bei, also negative Determinante. Falls der Normalen Vektor weg vom KOS-Ursprung zeigt ist sind die Vektoren in der Koordinatenmatirx so angeordnet, dass die Determinante positiv ist und das Volumen dieses Tetraeder positiv zum Gesamtvolumen beiträgt.

Zur eigentlichen Frage:
Bei dem Trägheitstensor wird ja nicht expliziet das Volumen gerechnet. Warum ist dann hier auch die Determinate von A im Quellcode?
Ehos Auf diesen Beitrag antworten »

Wie transformiert man den Trägheitstensor?
Der Zusammenhang zwischen Drehimpuls und Winkelgeschwindigkeit lautet in einem beliebigen Koordinatensystem , wobei J den Trägheitstensor bezeichnet. Macht man eine Koordinatentransformation von , gemäß bzw. in ein neues Koordinatensystem K', erhält man durch Einsetzen . Wendet man auf diese Gleichung die Inverse an, ergibt sich die gesuchte Zusammenhang in K'



Somit transformiert sich der Trägheitstensor in meiner Bezeichnung gemäß . Wichtig ist, dass man Koordinaten- und Basistransformation nicht verwechselt. Wenn sich die Koordinaten mit der Matrix A transformieren, so transformiert sich die Basis mit der kontragredienten Matrix . Bezeichnet man also mit A die Basistransformation (anders wie oben), so muss man in der obigen Gleichung substituieren und

Hohlräume
Ich dachte, du zerlegtst deinen Körper in ein dichtes "Netz" aus Tetraedern, derart, dass innerhalb eines Tetraeders eine homogene Dichte vorliegt. Bei Hohlräumen setzt man diese Dichte . Wenn du so ein Netz eindeitig und fein genug definiert hast (mit richtiger Orientierung), kann man damit alle mechanischen Eigenschaften des gesamten Körpers berechnen (Masse, Volumen, Schwerpunkt, Trägheitsmoment usw.)

Zu postiven bzw. negativen Volumen
Man sollte die 3 Vektoren jedes Tetraeders stets so orientieren, dass die Determinante (und folglich das Volumen) positiv werden. Wenn man da keine Ordnung im Netz hat, heben sich die Volumina benachbarter Tetraeder womöglich auf usw., was natürlich eine Katastrophe wäre.

Warum ist die Determinante im Quellcode?
Ich vermute folgendes: Die Programmierer gehen von der einfachen Formel des Trägheitstensor eines regelmäßigen Tetraeders aus. Durch eine Transformationsmatrix A transformieren sie dann die drei "regelmäßigen" Vektoren auf die 3 neuen Vektoren , welche das "verzerrte" Tetraeder aufspannen. Anschließend transformieren sie dann mit der Transformationsmatrix A die Formel für J auf die Weise, wie ich es oben beschrieben habe. Dieses Vorgehen ist elegant und einfacher als die direkte Berechnung von J.
---------------
Melde mich am Montag wieder!
#Robert# Auf diesen Beitrag antworten »

Hallo Ehos,

ich konnte mich die letzten zwei Tage leider auch nicht perfekt um das Thema kümmern. Bei mir fangen übernächste Woche die Prüfungen wieder an und daher bin ich grad voll im Lernstress. Was aber nicht heißen soll, dass das Thema unwichtig geworden ist. Im Gegenteil ist nach wie vor extrem wichtig für micht.

Vorab aber noch eine andere Frage bzgl. deiner Erklärung zum Unterschied Koordinaten- bzw. Basistranformation. Mir ist der Unterschied zwar bekannt und ich habe ihn schon an mehreren Stellen gehört bzw. gerechnet. Aber eine Sache bzgl. der kontragredienten Trafo-Matrix war mir noch nie klar.
Kann ich Dir diese Frage hier auch stellen oder soll ich dazu in ein anderes Unterforum (dieser Beetrag wurde ja nach "Sonstiges" verschoben) gehen?


Folgende Überlegungen sind mir zum Hauptproblem gekommen:


- Zuerstmal (damit wir nicht durcheinander kommen) wollte ich Dir sagen, dass ich das Wort "Einheits-Pseudo-Trägheitstensor" als Namen für "Ccan" eher ungeeignet gewählt habe, da es sich ja tatsächlich um einen Tensor handelt und nicht um einen Pseudotensor wie z.b. Levi-Civita-Pseudotensor. Also im folgenden nenn ich es einfach "Start-Tensor."


- Mein Grundgedanke bzgl. der Koordiantentrafo war, dass der "Start-Tensor" innerhalb einer neuen Basis ebenfalls wieder ein regulärer Tetraeder sein soll (also ein mit den drei neuen Einheits-Basisvektoren aufgespanntes Tetrader).
Die Idee ist aber denke ich falsch, zwar lässt sich das jweilige Tetraeder so aufspannen, aber die Basisvektoren sind nach meiner Idee entweder keine Einheitsvektoren mehr und machen mir somit die einfachen Integrationsgrenzen (die ich beim Start-Tensor habe) kaputt, folglich lässt sich dieser nicht mehr auf andere Teraeder übertragen.
Oder sie bleiben nach der Transformation Einheitsvektoren und die Idee passt aber dann habe mir der anschließenden Summierung aller i-ten Tensoren ein Problem, da sich meiner Meinung nach pysikalische Größen nur innerhalb der gleichen Bases addieren lassen (ich denke da z.B. an Finite-Elemente, bei der man auch erst nach der KOS-Trafo ins gemeinsame Global-System summieren darf).
Also irgendwo ist bei der Koordinatentransfomationsidee der Wurm drin.


- In Deiner Antwort warum die Determinante im Quellcode drin ist, hast Du beschrieben wie die Umrechnung auf die jeweiligen Tetraeder laufen könnte aber Du bist nicht drauf eingeganden wo hier die Determinante einzufügen ist.
1. Kannst Du bitte nochmal drauf eingehen
2. Wenn Deine Idee mit der Umrechnung (was ja auch einer KOS-Trafo entsrpicht) aber korrekt ist, dann ist ja das Problem eh schon gelöst. Hier würde ich Dich bitten mir noch bei der Erklärung (also warum darf man genauo bei deisem Problem so Transformieren bzw. lin. Abbilden) zu helfen. Auch verstehe ich nicht warum man hier einfach mit der Transponierten Matrix rechnen darf und nich mit der Inversen rechnen muss, es ist ja kein kartesischen KOS mehr.


- Der nächste Gedanke: Im Original-Quellcode steht neben der "Umrechungszeile" (also die gesagte C(:,:,i) = det(A)*A*Ccan*A'; %Covariance) also Kovarianz also Komentar dahinter. Da habe ich mich dann wieder an nicht lineare Kontinuumsmechanik erinnert und mir gedacht, dass der Trägheitstensor sich ja bei der "Verzerrung" in die jeweiligen Tetraeder verändert. Wenn die drei Seitenkanten des Tetreder immer ein körperfestes KOS darstellen, dann habe ich nach der "Verzerrung" ja keine kartesische Basis mehr sonder eine schiefe Basis. Folglich muss ich zwischen kontravarianten und kovarianten Vektoren unterscheiden. Und in der "Umrechnungszeitle" passiert tatsächtlich eine "Bewegung" bzw. "Deformation" im Sinne der Kontinuumsmechanik.

Wegen dem Nomenklatur: Jedem räumlichen Punkt wird genau ein materieller Punkt zugeordnet.

Der materielle Deformationsgradient (also in materieller bzw. Lagranger Beschreibung) ist dann

Da sich dadurch das räumliche Volumenelement zu ergibt, könnte man daraus ja sagen, dass sich dass ganze Volumenitegrals also der Trägheitstensor über den materiellen Deformationsgradienten umrechnen lässt.

Da aber die Determinante hier die Jakobiedeterminate ist und nicht die Determinate der Koordinatenmatrix. Ist diese Idee auch wieder komisch. Außerdem fehlt in dieser Formel dann auch die Matizenmultiplikation mit A bzw. A'.



Also entweder drehe ich mich im Kreis und bin der Lösung sehr nahe dran (und grad nur zu blind sie zu sehen) oder ich kapiere es überhaupt nicht mehr. Ich springe von der einen Idee zur nächsten und jede simmt etwas aber nicht ganz.

Übrigens nochmal vielen vielen Dank, dass Du dir die Zeit für nimmst bzw. bis jetzt schon genommen hast!!!
Ehos Auf diesen Beitrag antworten »

Ich habe die Formel für den Trägheisttensor J eines beliebigen Tetraeders berechnet, das von "schiefen" Vektoren aufgespannt wird. Dazu bin ich von der Formel für das regelmäßige Tetraeder ausgegenagen, das von den Vektoren , , aufgespannt wird. Anschließend habe ich diese Formel auf den allgemeinen Fall der "schiefen" Vektoren transformiert. In der transformierten Formel taucht - wie du vermutet hast - die Determinante auf.

Wenn dich die Herleitung interssiert, teile mir bitte dein E-Mail-Adresse mit.
-----------
Hinweis:
Strenggenommen handelt es sich bei meiner Rechnung nicht um eine Tranformation, sondern um eine physikalische "Verzerrung" des Tetraeders. Bei einer Transformation würde sich nämlich das Tetraeder physikalisch nicht ändern, sondern nur das Koordinatensystem. Deine Frage bezüglich Transformationen von Basis und Koordinaten spielen hier also keine Rolle.
#Robert# Auf diesen Beitrag antworten »

Hallo Ehos,

vielen vielen Dank!

Bitte schicke mir die Herleitung auf - [email protected]

Ich bin schon sehr gespannt darauf. Zudem weiß ich gar nicht wie ich Dir danken soll.

Grüße
Ehos Auf diesen Beitrag antworten »

Hallo #Robert#,
habe dir die Berechnung des Trägheitsmomentes des Tetraeders per E-mail geschickt.
Gruß Ehos
Math1986 Auf diesen Beitrag antworten »

Ich weis nicht, weswegen diese Berechnung per E-Mail verschickt wird, anstatt diese hier im Forum anzuhängen, so dass andere auch davon profitieren können.

Gerade in Bezug auf Prinzip "Mathe online verstehen!" finde ich das sehr enttäuschend unglücklich
Ehos Auf diesen Beitrag antworten »

@Math1986
Ich schreibe dir mal die Formel für das Trägheitsmoment J eines Tetraeders auf. Bei Bedarf maile ich dir die Herleitung. Ins Forum will ich die Herleitung nicht schreiben, weil man hier immer Angst haben muss, dass soetwas gelöscht wird (Vorsicht: verbotene "Komplettlösung" usw.)



Bezeichnungen:
=skalares Trägheitsmoment
= Vektoren die das unregelmäßige Tetraeder aufspannen
=Matrix, deren Zeilen die Vektoren sind
= Einheitsvektor der Drehachse, die in beliebiger Richtung durch den Nullpunkt geht




Für ein regelmäßiges Tetraeder ist , , . Dann degeneriert zur Einheitsmatrix.
Math1986 Auf diesen Beitrag antworten »

Zitat:
Original von Ehos
@Math1986
Ich schreibe dir mal die Formel für das Trägheitsmoment J eines Tetraeders auf. Bei Bedarf maile ich dir die Herleitung. Ins Forum will ich die Herleitung nicht schreiben, weil man hier immer Angst haben muss, dass soetwas gelöscht wird (Vorsicht: verbotene "Komplettlösung" usw.)
Ohne die E-mail gesehen zu haben kann ich nicht beurteilen ob es sich um eine Komplettlösung handelt oder nicht, ich finde den Versuch, die Boardregeln dadurch umgehen zu wollen, dass Lösungen per E-Mail verschickt werden, nur ziemlich dreist.

Das Boardprinzip gilt ausdrücklich für alle Nutzer dieses Forum, insbesondere also auch für dich.

Ich verweise daher nochmal auf die Forenregeln und bitte darum, dass diese auch eingehalten werden.


Zitat:

Komplettlösungen
Es ist in aller Regel nicht sinnvoll, dem Fragesteller einfach komplette Lösungen hinzuschreiben oder selbst nach Komplettlösungen zu fragen! Das MatheBoard-Team behält sich daher das Recht vor, Komplettlösungen mit *** zu editieren.

Um der Maxime des MatheBoards gerecht zu werden, bitten wir Dich auch folgende Punkte zu beherzigen:
  • Tipps und Hilfen sollten nicht per PN oder E-Mail gegeben, sondern im Board gepostet werden, damit sie auch für andere zugänglich sind.
  • ...
Ehos Auf diesen Beitrag antworten »

@Math1986
Das hast du fein gesagt.
Equester Auf diesen Beitrag antworten »
Erste Verwarnung
Zitat:
Original von Ehos
@Math1986
Das hast du fein gesagt.


@Ehos:

Für dein inakzeptables Verhalten gegenüber einem Moderator, wie auch das Ignorieren des
mehrfachen Hinweises bezüglich der Komplettlösungen, erteile ich dir eine erste Verwarnung.


Bitte beachte zukünftig das Boardprinzip: Komplettlösungen sind nicht erwünscht.
Für Weiteres siehe deine Privaten Nachrichten.
#Robert# Auf diesen Beitrag antworten »

Hallo Zusammen,

ich wollte mich hier eigentlich nicht einmischen aber ich finde eine Verwarnung doch etwas übertrieben.

Prizipiell halte ich diese Forenregel bzgl. einer Komplettlösung auch für sinnvoll. Troztdem sollte es erlaubt sein in gewissen Fällen etwas differnzierter zu handeln.

Wenn ein Schüler/Student Schwierigkeiten hat, ein Problem zu lösen und sich in der Klausurenvorbereitung befindet, dann ist es natürlich nicht gut eine Musterlösung zu posten, da derjenige i.d.R. keinen Lerneffekt hat.

Wenn ein Mitarbeiter einer Firma ein Problem hat, welches er zwar rein theoretisch selbst lösen könnte aber dafür unverhältnismäßig viel Zeit verliert, ist es absolut unwirtschaftlich nicht den Kollegen aus der entsprechenden Fachabteilung um Rat zu fragen.

Mein Fall hat eben letzteren Charakter. Falls jemand alle Beiträge zu diesem Thema gelesen hat wird er sofort feststellen, dass meine Hauptaufgabe nicht die Berechnung eines Träheitstensors ist. Außerdem habe ich die sog. Musterlösung auch nicht 1 zu 1 übernommen, sondern diese nachgerechnet und mit der nögtigen Theorie aus Büchern etc. bestätigt, so dass ich hier auch einen Lerneffekt hatte.

Ebenfalls möchte ich darauf hinweisen, dass Ehos ja nicht gleich eine Musterlösung gepostet hat. Wir haben hier doch ein paar Worte zu dem Thema ausgetauscht bevor er sagte, die Lösung zu haben. Tatsächlich hat Ehos mich doch an vielen Stellen dazu gebracht der Lösung selbst näher zu kommen.

Daher möchte ich Ehos an dieser Stelle nochmal herzlich Danken!

Grüße
Ehos Auf diesen Beitrag antworten »

@[email protected]
@[email protected]

Danke Robert. Ich habe mich mit einigen Usern über das Problem privater E-Mails unterhalten und möchte den Moderatoren folgendes sagen:

Keine Board-Regel kann den Usern verbieten, private E-Mails zu schreiben. Insbesondere können auch Lösungen über private E-Mails ausgetauscht werden. Ein diesbezügliches Verbot käme einer Internet-Zensur gleich, was schlechtweg illegal ist. Schon rein technisch haben die Moderatoren keinen Zugriff auf private Mails, weshalb diese Regel Fiktion ist. (Zum Glück ist Deutschland eine Demokratie.) Ihr könnt diesbezüglich vielleicht eine Bitte aussprechen. Also Moderaroren, respektiert die Privatsphäre der User beim privaten E-Mail-Verkehr!

Abschließend noch eine Bemerkung zur Form.
Leider vergreifen sich einige Moderatoren mitunter im Ton. Zum Beispiel schreibt mir der Moderator Math1986 am 27.08. um 13:46, es sei „dreist“, wenn ich private E-Mails schicke. Sorry, meine privaten E-Mails sind meine Sache. Ich lasse mir von einem 25-jährigen Studenten nicht meine privaten E-Mails zensieren. Diese Anmaßung eines Moderators kann ich nur mit seiner Jugend entschuldigen. Ich bitte einige Moderatoren darum, die Tonart etwas zu milden und sachlich zu bleiben.

Ich möchte alle User und Moderatoren auffordern, sich zum Problem privater E-Mals zu äußern – auch Unbeteiligte. Das erscheint mir sehr wichtig und muss geklärt werden. Emotionen und unsachliche Argumente sollten draußen bleiben.
Iorek Auf diesen Beitrag antworten »

Damit das hier hoffentlich doch noch zu einem versöhnlichen Ende kommt:

Zitat:
Original von Ehos
Keine Board-Regel kann den Usern verbieten, private E-Mails zu schreiben. Insbesondere können auch Lösungen über private E-Mails ausgetauscht werden. Ein diesbezügliches Verbot käme einer Internet-Zensur gleich, was schlechtweg illegal ist. Schon rein technisch haben die Moderatoren keinen Zugriff auf private Mails, weshalb diese Regel Fiktion ist. (Zum Glück ist Deutschland eine Demokratie.) Ihr könnt diesbezüglich vielleicht eine Bitte aussprechen. Also Moderaroren, respektiert die Privatsphäre der User beim privaten E-Mail-Verkehr!


Du hast natürlich Recht, wir können den Emailaustausch weder verbieten noch unterbinden. Die Funktion, auch direkt im Matheboard private Nachrichten zu verschicken, könnte man natürlich einschränken bzw. abstellen, das ist aber nicht in unserem bzw. irgendjemandes Sinne und wird deshalb auch nicht so praktiziert. Wenn also jemand wahllos hingeht, Komplettlösungen zu beliebigen Problemen formuliert und per Email verschickt, so bekommen "wir" oder generell "andere" da im Normalfall nichts von mit. Der Unterschied in diesem Fall ist aber, dass wissentlich gegen die Regeln dieses Boards verstoßen und dies auch öffentlich angekündigt wurde. Das kann nicht geduldet werden, hat allerdings auch nichts mit einer Zensur des Internets zu tun und stellt auch keinen Eingriff in die Privatsphäre des Nutzers da (wenn schon mit der Zensurkeule umhergeworfen wird: die Verbreitung von urheberrechtlich geschütztem Material, Musik, Filme usw., per privater Email verstößt gegen geltendes Recht; wenn dies öffentlich gemacht und angeboten wird, wird da auch eine entsprechende Reaktion kommen, ohne das dies als Zensur zu werten ist).

Zitat:
Original von Ehos
Abschließend noch eine Bemerkung zur Form.
Leider vergreifen sich einige Moderatoren mitunter im Ton. Zum Beispiel schreibt mir der Moderator Math1986 am 27.08. um 13:46, es sei „dreist“, wenn ich private E-Mails schicke. Sorry, meine privaten E-Mails sind meine Sache. Ich lasse mir von einem 25-jährigen Studenten nicht meine privaten E-Mails zensieren. Diese Anmaßung eines Moderators kann ich nur mit seiner Jugend entschuldigen. Ich bitte einige Moderatoren darum, die Tonart etwas zu milden und sachlich zu bleiben.


Dass sich Math1986 im Ton vergriffen hat, vermag ich nicht nachvollziehen, auch verdrehst du vollkommen den Zusammenhang und Inhalt des von dir angesprochenen Posts.

Zitat:
Original von Math1986
Ohne die E-mail gesehen zu haben kann ich nicht beurteilen ob es sich um eine Komplettlösung handelt oder nicht, ich finde den Versuch, die Boardregeln dadurch umgehen zu wollen, dass Lösungen per E-Mail verschickt werden, nur ziemlich dreist.


Mit anderen Worten: es ist nicht dreist, dass private Emails verschickt werden, und wem du wann was schickst, spielt auch eigentlich überhaupt keine Rolle. Allerdings ist die wissentliche Umgehung des Boardprinzips nach Ankündigung und erneuter Bestätigung, dass dies geschehen ist, durchaus als dreist einzustufen, vor allem da du als langjähriges Mitglied um den Inhalt unseres Boardprinzips wissen solltest.

Als eine Vergreifung im Ton würde ich eher deinen Beitrag vom 27.08., 17:23 Uhr empfinden.

Zitat:
Original von Ehos
@Math1986
Das hast du fein gesagt.


Diese Aussage wirkt sehr herablassend. Den Verstoß gegen eine geltende Regel durch eine solche Verniedlichung einfach wegzuwinken und ignorieren zu wollen, ist nicht akzeptabel. Da spielt es auch keine Rolle, ob das nun von einem Moderator oder einem anderem User gesagt wurde, dies entspricht nicht der Netiquette. Aus persönlicher Sicht: würde ein Mitarbeiter/Vorgesetzter/Professor/Schüler mir so etwas ins Gesicht sagen, würde ich dem gehörig die Meinung geigen und entsprechend vorgehen.

Bei dieser Anfrage handelt es sich um ein sehr spezielles Problem, welches bis zu deiner Antwort 4 Tage lang unbehandelt blieb. Das ist natürlich nicht wünschenswert, kann aber bei sehr konkreten Fragen, dann noch mit Bezug auf ein ganz konkretes Programm und konkreter Anwendung aus andere Naturwissenschaften, vorkommen. Nicht jeder ist mit MatLab vertraut, hat die entsprechenden mathematischen Kenntnisse und zusätzlich noch die erforderlichen physikalischen Zusammenhänge parat. Bis zu deinem Post vom 26.08., 16:55 Uhr lief auch alles vorbildlich, ohne jeden Einwand. Sowohl von dir als auch von Robert wurde sehr viel Energie in den Thread gesteckt. Ob es letztendlich notwendig war, die Lösung für Robert direkt auszuformulieren und ihn um seine Emailadresse zu fragen und ihm die Lösung zu schicken, kann ich nicht beurteilen, allerdings kann ich nachvollziehen, dass man nach soviel Arbeit auch gerne zu einem Ergebnis kommt.

Ob man bei diesem sehr speziellen Fall die Regeln ein wenig lockerer hätte auslegen können ist natürlich fraglich. Aber: wenn man damit anfängt, dann hat man morgen den nächsten Fall, wo man u.U. evtl und vllt. etwas mehr als die sonst erwünschte Hilfe zur Selbsthilfe vertreten könnte, und zwei Wochen später werden generell nur noch Komplettlösungen gepostet, weil die Spezialfälle so häufig geworden sind und nun den Regelfall darstellen.

Um des Threads willen würde ich alle bitten, alle weiteren Äußerungen und Diskussionen auf PNs o.Ä. zu verlegen; die anfangs gestellte Frage ist (so wie ich das verstanden habe) zu einem guten Abschluss gekommen, weitere Beiträge würden den Thread nur aufblähen und gehören nicht in diesen Thread.
Ehos Auf diesen Beitrag antworten »

@Iorek
Danke für deine Antwort. Die Emotionen sind leider auf beiden Seiten etwas übergekocht.

Du hast recht, man sollte keine Komplettlösungen schicken – jedenfalls nicht sofort. Es gibt aber Ausnahmen – z.B. wenn der Fragesteller sehr wenige Kenntnisse besitzt.

Der private E-Mail-Kontakt unter den Usern kann sinnvoll sein, wenn die Rechnung sehr lang wird oder wenn das Problem nichts mit Mathematik zu tun hat. Beides war bei Robert und mir der Fall.

Das gelegentliche Löschen von Beiträgen erscheint mir im 21.Jahrhundert etwas kleinlich. (Das ist meine persönliche Meinung.) Grundsätzlich würde ich keine Beiträge löschen, weil sich der Fragesteller dann vom Forum abwendet und den direkten Kontakt sucht.

Insgesamt ist das Matheboard aber eine sehr nützliche Sache.

Ehos
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »