| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
Autor
|
Thema: Eigenwerte ausgeben lassen (1424 mal gelesen)
|
vw-student Mitglied Berechnungsingenieur
Beiträge: 543 Registriert: 07.06.2005
|
erstellt am: 28. Apr. 2007 11:48 <-- editieren / zitieren --> Unities abgeben:
Mahlzeit. Sitze grade an einer Schwingungsaufgabe und hänge fest.Und zwar habe ich eine Gleichung aus der Koeffizientenmatrix die wie folgt lautet: tanh(lamda*l)+tan(lambda*l)=0 Nun möchte ich mir die ersten drei Eigenwerte auswerten lassen,am besten mit einem Index i.Nur leider bekomme ich das nicht hin. Habe es sehr umständlich gemacht.Wäre schön wenn mir jemand den eleganten Weg mit Index erklärt. Danke Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Oberli Mike Moderator Dipl. Maschinen Ing.
Beiträge: 3731 Registriert: 29.09.2004 Mathcad war besser als Prime, meine Meinung.
|
erstellt am: 28. Apr. 2007 13:17 <-- editieren / zitieren --> Unities abgeben: Nur für vw-student
Hallo Volkswagen-Student Mathcad 7 Hab mal mit einer Laufvariabel im Soverblock gespielt. Kann dir aber für diese Problem mit dem Soverblock keine Lösung anbieten. Wenn ich mit Laufvariabeln im Solverblock operiere, dann verändere ich nur Werte, welche nicht gesucht werden. Die Vorgabewerte für die gesuchten Variablen bleiben immer die gleichen. Da bei dir verschiedene Lösungen bei gleichen Vorgabewerten möglich sind funktioniert dies so vermutlich nicht. Hab dann mit der Root Funktion (keine Ahnung wie die im deutschen Mathcad heisst) probiert. Diese Funktion ist zwar nicht so exakt wie die Given Find methode, doch geht es etwas leichter. vgl. root_1.jpg Mathcad 13 Einfach machen, funktioniert schon vgl. given_find_lauf.jpg Ab wann das so einfach funktioniert mit dem Solverblock kann ich dir nicht sagen. Gruss und noch weiterhin frohes rechnen. Mike ------------------
The Power Of Dreams Schreib mal wieder Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
vw-student Mitglied Berechnungsingenieur
Beiträge: 543 Registriert: 07.06.2005
|
erstellt am: 28. Apr. 2007 13:55 <-- editieren / zitieren --> Unities abgeben:
|
Oberli Mike Moderator Dipl. Maschinen Ing.
Beiträge: 3731 Registriert: 29.09.2004 Mathcad war besser als Prime, meine Meinung.
|
erstellt am: 28. Apr. 2007 16:52 <-- editieren / zitieren --> Unities abgeben: Nur für vw-student
Verbesserungsvorschlag Das Programm hier errechnet den ersten Wert mit der Vorgabe 0 Anschliessen beginnt eine Schlaufe für N Werte. In der Schlaufe ist eine while Funktion welche prüft, ob der nächste Wert grösser ist wie der vorausgegangene. Ist dies der Fall wird die while Funktion verlassen, und die Schlaufe rückt eins vor usw. Hinweis: Dadurch, dass die root Funktion nicht ganz Exakt ist, wird bei der Errechnung wenn der Vorgabewert grösse wie das exakte Resultat ist, und wenn der Vorgabewert kleiner wie das exakte Resultat ist, nicht die gleich Lösung ausgegeben. Deshalb wird die über die floor Funktion gerundet, damit das Vergleichen auch mit der nicht ganz exakten Ausgabe funktioniert. Gruss Mike ------------------
The Power Of Dreams Schreib mal wieder Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Konstrukteur (m/w/d) für Windensysteme | Die ZOLLERN-Unternehmensgruppe zählt zu den ältesten Familienunternehmen in Deutschland. In den Geschäftsfeldern Antriebstechnik, Feinguss, Sandguss und Schmiede sowie Stahlprofile entwickeln und fertigen rund 2.000 Mitarbeiter erstklassige Produkte und bieten Lösungen für unterschiedliche Branchen. Mit mehreren Standorten in Europa, Nord-Amerika und Asien ist ZOLLERN weltweit aktiv. ... | Anzeige ansehen | Konstruktion, Visualisierung |
|
Oberli Mike Moderator Dipl. Maschinen Ing.
Beiträge: 3731 Registriert: 29.09.2004 Mathcad war besser als Prime, meine Meinung.
|
erstellt am: 29. Apr. 2007 20:11 <-- editieren / zitieren --> Unities abgeben: Nur für vw-student
Hab mir da noch was überlegt. Anstelle vom Vergleich while floor(Li * 1000) <= floor(Li-1 * 100) ist es besser, wenn man den Vergleich while ¦Li - Li-1¦ >= 0.001 verwendet. Hinweis: die beiden ¦ sollen aussagen, dass es der Absolutwert genommen wird. In Mathcad wird die Funktion so dargestellt, einfach mit durchgezogenne linien. Wenn ein Ergebniswert sehr genau auf einer ganzen Zahl ist, z.B. 4.0001, und das eine Ergebnis 3.99999 und das andere 4.00005 ist, schlägt der obere Verglich fehl, der Untere ergibt als Ergebnis dass es der gleiche Ergebniswert ist.
Gruss Mike
------------------
The Power Of Dreams Schreib mal wieder Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |