| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Ansys | | |  | Steifigkeits-Boost dank Composite Simulation, ein Fachartikel
|
Autor
|
Thema: Auflistung von Ergebnisdaten (577 mal gelesen)
|
piper22 Mitglied

 Beiträge: 38 Registriert: 27.03.2006
|
erstellt am: 10. Mai. 2006 17:36 <-- editieren / zitieren --> Unities abgeben:         
Hallo ihr, habe an einem Modell die Wärmeverteilung berechnen lassen. Jetzt möchte ich gern die Temperatur an verschiedenen Knoten in der Fläche in einer Tabelle ausgeben lassen, so dass ich sie dann irgendwie in Excel weiterbearbeiten kann. Bis jetzt bin ich bei folgender Schleife: (, die alle Knoten in x- und y-Richtung in einem Abstand von 0.00001 m einzeln erfassen soll und dann die entsprechende Temperatur an dieser Stelle in ein Ausgabefile schreiben soll) (x ist in positiver richtung und y in negativer richtung) *do,k,1,11,1 m=0.00001*(k-1) *do,l,1,11,1 nsel,s,loc,x,m n=-0.00001*(l-1) nsel,r,loc,y,n *get,knotnr,node,0,num,max *get,temperatur,node,knotnr,temp allsel,all,node *enddo *enddo Leider funktioniert weder die Schleife (müsste 100 Knoten erhalten mit Temperatur), um die Knoten auszuwählen noch weiß ich welchen Befehl ich einsetzen soll, um die Ergebnisse auszugeben. Würde mich freuen, wenn euch dazu was einfällt. MfG Jenny Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wosch Ehrenmitglied V.I.P. h.c. Elektrotechniker im Ruhestand
     
 Beiträge: 2607 Registriert: 16.12.2004 Rechne zuerst ein Problem nach, für das Du eine analytische Lösung kennst.
|
erstellt am: 10. Mai. 2006 19:01 <-- editieren / zitieren --> Unities abgeben:          Nur für piper22
|
piper22 Mitglied

 Beiträge: 38 Registriert: 27.03.2006
|
erstellt am: 10. Mai. 2006 19:39 <-- editieren / zitieren --> Unities abgeben:         
Hab die Befehle gerade zu Gemüte geführt. Verstehe aber nur bahnhof. Also nochmal konkreter: ich habe einen fläche (z.B. 10mm x 5mm) mit berechneter Temp-verteilung. Aus dieser fläche möchte ich mir knoten auswählen (z.B. alle knoten innerhalb einer fläche von 3mm x 2 mm)und mir die temp-werte der jeweiligen knoten in form einer matrix (z.B. bei einer Elementgröße von 0.5 mm --> 7x5 Werte) ausgeben lassen, die ich in excel weiterverarbeiten kann. Dachte ich könnte jeden einzelnen knoten in der gewünschten fläche innerhalb einer schleife auswählen und die dazugehörige temp in einer Tabelle ablegen. Quäl mich schon stunden. Hoffe auf weitere hilfe von dir. Schönen abend erstmal. mfg jenny Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
wally1977 Mitglied

 Beiträge: 75 Registriert: 16.02.2006 Intel i7 16 Gb Ram Windows 7 Ansys 17.2
|
erstellt am: 11. Mai. 2006 09:14 <-- editieren / zitieren --> Unities abgeben:          Nur für piper22
Hi, Wenn man nur die Ergebnissdaten einer Selektion braucht würde ich folgendes empfehlen: Schreib ein Macro *create,Ausgabe /output,werte,dat nsel,s,loc,x,... nsel,r,loc,y,... /page,,,10000 prnsol,temp /output *end und benutze dieses dann mit *use,ausgabe Hierbei erhältst du das gleiche das deine Schleife beabsichtigt hat. Wenn du die Koordinaten mitauslesen möchtest, kann man das entweder mit dem *get befehl machen oder mit nlist,all (kann man in das Macro Schreiben) *create,Ausgabe /output,werte,dat nsel,s,loc,x,... nsel,r,loc,y,... /page,,,10000 prnsol,temp /output,koord,dat nlist,all /output *end mfg Wally
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
piper22 Mitglied

 Beiträge: 38 Registriert: 27.03.2006
|
erstellt am: 11. Mai. 2006 14:53 <-- editieren / zitieren --> Unities abgeben:         
So das habe ich gerade probiert. Bekomme eine schöne liste mit allen knoten (beginnend mit dem kleinsten) und die dazugehörigen Temp-Werte. Das problem ist, dass damit die werte alle durcheinander sind und somit nicht nach spalte oder zeile der knoten im modell geordnet. Also wenn das mit einer matrixausgabe auch so schön einfach geht wie eben , würde ich gern noch wissen wie das geht. Ansonsten erstmal vielen dank, damit kann ich erstmal weiterarbeiten. LG Jenny Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kanngarnix Mitglied Dipl.-Ing. Maschinenbau

 Beiträge: 25 Registriert: 01.12.2004
|
erstellt am: 11. Mai. 2006 16:38 <-- editieren / zitieren --> Unities abgeben:          Nur für piper22
Hi, das Problem mit der Unordnung löse ich in matlab mit dem Befehl griddata, dieser Befehl setzt Werte anhand von x,y-Koordinaten an die entsprechende Position einer Matrix und man kann dann Diagramme erstellen in denen die Werte an der richtigen Postion dargestellt werden. Gruss Steffen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
piper22 Mitglied

 Beiträge: 38 Registriert: 27.03.2006
|
erstellt am: 11. Mai. 2006 17:03 <-- editieren / zitieren --> Unities abgeben:         
Das zu sortieren, entweder mit matlab oder excel hab ich mir auch gedacht. Dabei bin ich a auf ein nächstes problem gestoßen. Ich kann nicht mit hilfe von z.B. trennzeichen die daten in spalten zerlegen: NODE X Y Z THXY THYZ THZX 511 0.0000 -0.10000E-03 0.0000 0.00 0.00 0.00 1090 0.10000E-04-0.10000E-03 0.0000 0.00 0.00 0.00 1091 0.10000E-04-0.90000E-04 0.0000 0.00 0.00 0.00 1092 0.10000E-04-0.80000E-04 0.0000 0.00 0.00 0.00 1093 0.10000E-04-0.70000E-04 0.0000 0.00 Wie bekomme ich das auseinander? Lg Jenny Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Kanngarnix Mitglied Dipl.-Ing. Maschinenbau

 Beiträge: 25 Registriert: 01.12.2004
|
erstellt am: 11. Mai. 2006 17:16 <-- editieren / zitieren --> Unities abgeben:          Nur für piper22
Also das ist jetzt kein Scherz, ich würde die Knoten Positionen so einlesen: !***************************************************************************************************************************** !***************************************************************************************************************************** !****** Speichern von Knotenpositionen in eine Textdatei !***************************************************************************************************************************** !***************************************************************************************************************************** *get,nanz,node,,count !Knoten-Anzahl *get,nmin,node,,num,min !niedrigste Knotennummer *dim,feld,array,nanz,4 !Array mit dem Namen "feld" narb=nmin !Knoten in Arbeit *do,i,1,nanz !********************************************************************************************************************* feld(i,1)=narb !Knotennummer !********************************************************************************************************************* feld(i,2)=nx(narb) !x-Koordinate !********************************************************************************************************************* feld(i,3)=ny(narb) !y-Koordinate !********************************************************************************************************************* feld(i,4)=nz(narb) !z-Koordinate !********************************************************************************************************************* narb=ndnext(narb) !Nächster Knoten *enddo !**** Schreiben der Daten in eine Textdatei !********************************************************************************************************************* *MWRITE,feld,D:\Ansys\Knoten,txt,,JIK,4,nanz !Spalten- und Zeilenanzahl MUSS stimmen (4xF13.4,4xF13.4,4xF13.4,4xF13.4) Die stehen dann schön getrennt in einer Textdatei und matlab kann sie mit "textread" sauber einlesen. Dann würde ich jede Variable einzeln in eine Textdatei schreiben und erst in matlab wieder zu einer Matrix zusammen basteln, solange du die Reihenfolge nicht veränderst klappt das ohne Fehler. Ich weiss zwar das ein ANSYS-Pro das ganz anderst machen würde, aber ich bin mir sicher, dass das so klappt. Gruss Steffen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
piper22 Mitglied

 Beiträge: 38 Registriert: 27.03.2006
|
erstellt am: 11. Mai. 2006 17:36 <-- editieren / zitieren --> Unities abgeben:         
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |