| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Ansys |
Autor
|
Thema: *VGET - Knoten auswählen: Statusprobleme (1652 mal gelesen)
|
observant Mitglied
Beiträge: 39 Registriert: 09.06.2015
|
erstellt am: 08. Okt. 2015 10:01 <-- editieren / zitieren --> Unities abgeben:
Moin, mein Problem ist folgendes: Ich möchte Nodes auswählen und von denen anschließend die Spannungen in einem Array speichern. Das Problem ist, dass die Knoten als unselected unter den array parameters angezeigt werden. Beim Volumenkörper 1 sind alle nodes selected, da dort die Nummerierung der Nodes von 1-64 geht. Volumenkörper 3 hat jedoch eine höhere Nummerierung der Nodes, wodurch dann der array dann mit "-1" gefüllt wird. Eine Variante wäre, dass ich "*get,NMAX,node,,num,max" nutze um die höchste Knotennummer zu erhalten, jedoch werden die Arrays dann sehr groß bei meinem Modell. Wie kann ich also lediglich die vorliegenden Nodes im Array unterbringen? Hier der Code: finish /clear,start /prep7 et,1,solid185 mp,ex,1,210000 ! E-Modul in N/mm^2 mp,prxy,1,0.3 ! Querkontraktion mp,dens,1,7.8 ! Dichte in g/mm^3 block,0,1,0,1,0,1, block,0,1,0,1,1,2, block,0,1,0,1,2,3, mshkey,1 vmesh,all nummrg,node nummrg,kp allsel !vsel,s,,,1 !vsel,s,,,2 vsel,s,,,3 nslv,r,1 *get,KNOTEN,node,,count ! Knotenanzahl wird ermittelt !*get,NMAX,node,,num,max *dim,STAT_KNOTEN,array,KNOTEN ! Erstellen der Maske *vget,STAT_KNOTEN(1),node,1,nsel ! Status der Knoten Gruß, Marcel 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: 08. Okt. 2015 14:54 <-- editieren / zitieren --> Unities abgeben: Nur für observant
|
observant Mitglied
Beiträge: 39 Registriert: 09.06.2015
|
erstellt am: 08. Okt. 2015 15:57 <-- editieren / zitieren --> Unities abgeben:
Was passiert, ist mir eigentlich klar. ANSYS überprüft, ob die Knoten 1-64 ausgewählt sind oder nicht. ausgewählt -> 1 nicht ausgewählt -> -1 Knoten nicht definiert -> 0 Mit dem Befehl *get,NMAX,node,,num,max und anschließend einer Arraylänge von NMAX wäre das Ganze somit umsetztbar, jedoch erscheint mir dann der Array unnötig groß. Z.B. 192 Reihen bei Auswahl der Knoten von Volumenkörper 3, wobei nur 64 Reihen davon interessant für die Auswertung sind. Frage ist somit: Wie umgehe ich diesen großen Array und erstelle einen Array mit lediglich den 64 Knoten? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Rainer Schulze Ehrenmitglied V.I.P. h.c. Dipl.-Ing. im Ruhestand
Beiträge: 4419 Registriert: 24.09.2012
|
erstellt am: 08. Okt. 2015 16:17 <-- editieren / zitieren --> Unities abgeben: Nur für observant
|
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: 08. Okt. 2015 18:59 <-- editieren / zitieren --> Unities abgeben: Nur für observant
|
observant Mitglied
Beiträge: 39 Registriert: 09.06.2015
|
erstellt am: 09. Okt. 2015 11:50 <-- editieren / zitieren --> Unities abgeben:
Das ist genau das, was ich gesucht habe! Abschließend möchte ich die für die einzelnen Knoten bestimmten Werte des Array plotten, weiß jedoch leider keinen Ansatz dies umzusetzten. Besteht die Möglichkeit den Array in eine Elementetabelle umzuwandeln? Eventuell andere Lösungsansätze? Das ganze soll dazu dienen, meine Cuntze-Implementierung grafisch darzustellen. Vielen Dank und viele Grüße, Marcel
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: 09. Okt. 2015 13:24 <-- editieren / zitieren --> Unities abgeben: Nur für observant
|
observant Mitglied
Beiträge: 39 Registriert: 09.06.2015
|
erstellt am: 09. Okt. 2015 13:46 <-- editieren / zitieren --> Unities abgeben:
|
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: 09. Okt. 2015 14:22 <-- editieren / zitieren --> Unities abgeben: Nur für observant
Ich weiß ja nun nicht, was eine Cuntze-Implementierung ist, aber die Spannungen lassen sich doch mit plnsol,s,eqv in einem Contourplot darstellen. Wenn nun aber durch Rechenoperationen jedem Knoten neue Werte zugeordnet worden sind, kann man eine in der Rechnung nicht benötigte physikalische Größe mißbrauchen, um die dann im Contourplot darzustellen. (Dazu ist es vielleicht gar nicht nötig, ein Array zu füllen, weil das sicherlich auch mit APDL formuliert werden kann.) Wenn ich ein Beispiel bekomme, würde ich das mal versuchen. ------------------ Viel Erfolg wünscht Wolfgang Schätzing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
observant Mitglied
Beiträge: 39 Registriert: 09.06.2015
|
erstellt am: 09. Okt. 2015 16:17 <-- editieren / zitieren --> Unities abgeben:
Es werden den Knoten durch Rechenoperationen neue Werte zugeordnet. Im Beispiel sind 2 simple Formeln, damit die Überprüfung gut möglich ist. In meinem eigentlichen Modell gibt es 10 Formeln und über 300000 Knoten. (Nebenbei: Durch das Cuntze-Versagenskriterium wird überprüft, ob es zu Faserbrüchen oder Zwischenfaserbrüchen im GFK-Verbund kommt.) [Diese Nachricht wurde von observant am 09. Okt. 2015 editiert.] 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: 09. Okt. 2015 17:53 <-- editieren / zitieren --> Unities abgeben: Nur für observant
Hier eine Möglichkeit im Anhang: (Dabei ist ein ganzes Bier draufgegangen.) Ist es nicht sinnvoller auf die moderneren 20-Knoten-Elemente überzugehen? ------------------ Viel Erfolg wünscht Wolfgang Schätzing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
observant Mitglied
Beiträge: 39 Registriert: 09.06.2015
|
erstellt am: 10. Okt. 2015 08:30 <-- editieren / zitieren --> Unities abgeben:
Danke! Ich werde schauen, wie ich das in mein Modell einbringen kann. Das erneute Lösen könnte eventuell zu Problemen führen, da die Berechnungen 1. sehr viel Zeit in Anspruch nehmen und 2. mehrere Speicherpunkte vorliegen. Bzgl. der 20 Knoten-Elemente habe ich mich für die 8 Knoten-Elemente entschieden, da die Schichtdicke der einzelnen Schichten sich deutlich unterscheidet, wodurch ich zwangsweise relativ kleine Elemente verwenden muss. Ein Bild des Modells wird folgen fürs bessere Verständnis, jedoch laufen momentan Berechnungen. Ansonsten werd ich erstmal rumprobieren. Für Lösungsansätze ohne erneute Berechnung des Problems wäre ich dennoch sehr dankbar, da dies deutlich vorteilhafter wäre. Gruß und schönes Wochenende, Marcel PS: Ich hoffe es war nicht das letzte Bier! 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: 12. Okt. 2015 07:16 <-- editieren / zitieren --> Unities abgeben: Nur für observant
|
observant Mitglied
Beiträge: 39 Registriert: 09.06.2015
|
erstellt am: 12. Okt. 2015 10:09 <-- editieren / zitieren --> Unities abgeben:
Ja, habe das Problem am Wochenende gelöst. Zum Herausfinden in welcher Schicht zuerst ein Schaden auftritt, verwende ich den Code, in welchem lediglich die Knoten abgerufen werden, welche in der Lage vorliegen. Danach lasse ich diese Schicht mit Hilfe eines weiteren Codes darstellen. Dafür verwende ich jedoch wieder den Code, bei welchem alle Knoten benötigt werden (bis hin zur in der Schicht höchsten Knotennummer). Anschließend erzeuge ich mittels der Funktion *mfun durch die Zahlenreihe eine Tabelle. durch *vput füge ich dann die werte ein und kann das Ganze dann plotten lassen ohne erneut den Solver zu verwenden. Viele Grüße und Danke für die Hilfe, Marcel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|