Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  ANSYS
  Lastschritte in ANSYS WB mit APDL steuern

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Ansys
Autor Thema:  Lastschritte in ANSYS WB mit APDL steuern (6511 mal gelesen)
Thielema
Mitglied


Sehen Sie sich das Profil von Thielema an!   Senden Sie eine Private Message an Thielema  Schreiben Sie einen Gästebucheintrag für Thielema

Beiträge: 6
Registriert: 27.04.2013

ANSYS WB 14.5

erstellt am: 27. Apr. 2013 11:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Zusammen,

bin neu hier in der Community und schlage auch gleich mit einem Problem auf.
Ich habe bereits versuch nach Lösungen in bekannten Eintragungen zu suchen,
könnte jedoch keine finden.

Hier mein Problem:
Ich möchte mit Ansys WB eine Zugprobe berechnen. Die Berechnung ist weggesteuert und die Verschiebungen werden entsprechend in APDL aufgebracht. Dies soll jeweils in einzelnen Lastschritten geschehen.

Nun möchte ich nach jedem Lastschritt die Ergebnisse auswerten und eine Art "Schadenskriterium" berechnen.
Später sollen dann die Elemente, bei denen der Schadenswert praktisch überschritten wird gelöscht werden.
Aber so weit komme ich momentan nicht (ist auch noch nicht im Skript enthalten).

Ich habe versucht die obige Vorgehensweise in einer Schleife zu programmieren, jedoch wird immer nur der erste Lastschritt berechnet und ich erhalte die Fehlermeldung:  "Load set not found on result file file.rst. " nachdem Time, 2 gesetzt wurde.

Wo könnte mein Fehler liegen? Werden überhaupt die weiteren Lastschritte, nach dem ersten, berechnet?

Hier noch mein Code:

/prep7

*get, nELEM, ELEM,, num, max
*dim,STRSS1,array,15,nELEM
*dim,STRSS2,array,15,nELEM
*dim,STRSS3,array,15,nELEM
*dim,STRSSEQV,array,15,nELEM
*dim,PLSTR,array,15,nELEM
*dim,wertetab,array,1,2
*dim,wertetabe,array,1,2
*dim,T,array,15,nELEM !Mehrachsigkeit
*dim,F,array,15,nELEM !Mehrachsigkeitsfunktion
*dim,D,array,15,nELEM !Schadensentwicklung
*dim,DC,array,15,nELEM !kritische Schadensentwicklung
*dim,DREL,array,15,nELEM !relative Schädigung
*set,PHIPLBRUCH,0.072467
*set,KFZUG,364.79942
*set,KFDRUCK,513.79520
DEINSC=1-(KFZUG/KFDRUCK)

*do,i,1,3

/solu
*IF,i,GT,1.0,THEN
ANTYPE,STATIC,RESTART
*ENDIF


*set,versch,i*0.05

NSEL,S,LOC,Y,40
d,ALL,uy,versch

NSEL,ALL
*set,verschi,i*(-0.05)

NSEL,S,LOC,Y,-40
d,ALL,uY,verschi

ALLS

TIME,i
nlgeom,on
nropt,full
solve

/post1
set,i
ETABLE,Haupt1,S,1
ETABLE,Haupt2,S,2
ETABLE,Haupt3,S,3
ETABLE,EQV,S,EQV
ETABLE,Strain,EPPL,EQV

*do,j,1,nELEM
*get,STRSS1(i,j),ELEM,j,ETAB,Haupt1
*get,STRSS2(i,j),ELEM,j,ETAB,Haupt2
*get,STRSS3(i,j),ELEM,j,ETAB,Haupt3
*get,STRSSEQV(i,j),ELEM,j,ETAB,EQV
*get,PLSTR(i,j),ELEM,j,ETAB,Strain

T(i,j)=((1/3)*(STRSS1(i,j)+STRSS2(i,j)+STRSS3(i,j)))/STRSSEQV(i,j)

F(i,j)=((2/3)*(1+0.27))+3*(1-2*0.27)*T(i,j)**2

D(i,j)=(DEINSC/PHIPLBRUCH)*F(i,j)*PLSTR(i,j)

DC(i,j)=(DEINSC/F(i,j))*((KFZUG/STRSSEQV(i,j))*(1-D(i,j)))**2

DREL(i,j)=(D(i,j)/DC(i,j))

*enddo
*enddo

Wie bekomme ich nun die Lastschritte, also alle nach dem ersten, berechnet? Kann ich später im Postprocessing in Ansys WB die Zeitschritte ebenso wählen, wie wenn die Eingabe der Randbedingungen tabbellarisch über ANSYS WB erfolgt?

Vielen Dank schonmal an alle, die sich diesem Post widmen und Antworten.

Gruß
Thielema

[Diese Nachricht wurde von Thielema am 27. Apr. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Achim007
Mitglied
Dipl. Ing. (FH)


Sehen Sie sich das Profil von Achim007 an!   Senden Sie eine Private Message an Achim007  Schreiben Sie einen Gästebucheintrag für Achim007

Beiträge: 734
Registriert: 23.09.2008

Workbench 2.0
ANSYS15.0 Mechanical
DesignModeler

erstellt am: 27. Apr. 2013 12:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thielema 10 Unities + Antwort hilfreich

das /PREP7 nach der ersten *Do-Schleife wird nicht benötigt, Du solltest hier schon in den /SOLU wechseln.
Ich würde zuerst alle Lastschritte lösen, also die erste *Do-Schleife im /SOLU beenden, dann stehen alle Ergebnisse in der *.rst Datei.
Anschließend kannst Du dann die Ergebnisse mit einer weiteren Schleife im /POST1 auswerten

------------------
Viele Grüße        
Achim              PS: Als Anerkennung für einen Beitrag freu' nicht nur ich mich über Unities

Was ist der Unterschied zwischen Theorie und Praxis? Theorie ist, wenn man alles weiß und nichts funktioniert - Praxis ist, wenn alles funktioniert und keiner weiß warum (Autor unbekannt)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thielema
Mitglied


Sehen Sie sich das Profil von Thielema an!   Senden Sie eine Private Message an Thielema  Schreiben Sie einen Gästebucheintrag für Thielema

Beiträge: 6
Registriert: 27.04.2013

ANSYS WB 14.5

erstellt am: 27. Apr. 2013 13:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Moin Moin,

vielen Dank für die schnelle Rückmeldung.

Das mit dem /Prep7 weglassen, habe ich jetzt gemacht. Vielen Dank für den Hinweis.
Ich hab´s irgendwie noch nicht so damit, welche Befehle in welchem Programmteil möglich sind.

Auf das schachteln der Schleifen allerdings möchte ich ungern verzichten, da ich ja wie oben angedeutet später noch Elemente "löschen" möchte mit Ekill.

Ich habe trotzdem mal den Post-Processing  Schritt weggelassen und bemerkt, dass mir in der Ansicht über das Konvergenzverhalten der Rechnung, wenn ich sie über APDL laufen lasse nur Substep-Konvergenz angezeigt wird. (Grüne gestrichelte Line).

Wenn ich das Modell normal mit WB durchrechne, wird stattdessen Loadstep-Konvergenz gezeigt. (Blaue gestrichelte Linie).

Kann es sein, dass beim Post-Proessing im Code oben die Fehlermeldung kommt, weil es ja Substeps sind und keine Loadsteps? Das würde heissen, dass "set,i" wurde natürlich auf einen Loadstep zugreifen, der gar nicht da ist.

Wie könnte ich diese Problem lösen? Ist es einfacher aus den Substeps, Loadsteps zu machen? Oder kann irgendwie im "set,i" Substeps berücksichtigen?

Alternativ bin ich auf einem ganz falschen Dampfer? 

Danke nochmal an alle, die sich mit meinem Problem auseinander setzen.
Viele Grüße!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thielema
Mitglied


Sehen Sie sich das Profil von Thielema an!   Senden Sie eine Private Message an Thielema  Schreiben Sie einen Gästebucheintrag für Thielema

Beiträge: 6
Registriert: 27.04.2013

ANSYS WB 14.5

erstellt am: 27. Apr. 2013 13:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo nochmal,

ich habe jetzt eine Lösung gefunden und das Programm läuft durch.

Basierend auf meiner Vermutung einen Post weiter oben, habe ich jetzt
"set,i" durch "set,1,i" ersetzt.

Damit beziehe ich mich immer auf Lastschritt 1 in der Workbench mit dem
laufenden Substep aus dem APDL. Die Berechnung läuft also durch, auch mit
Postprocessingteil.

Vielen Dank nochmal an alle, die sich mit meinem Problem beschäftigt haben!
Gruß Thielema

PS: Jetzt kommt der EKill-Teil. Weitere Fragen werden wohl folgen. 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Achim007
Mitglied
Dipl. Ing. (FH)


Sehen Sie sich das Profil von Achim007 an!   Senden Sie eine Private Message an Achim007  Schreiben Sie einen Gästebucheintrag für Achim007

Beiträge: 734
Registriert: 23.09.2008

Workbench 2.0
ANSYS15.0 Mechanical
DesignModeler

erstellt am: 27. Apr. 2013 13:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thielema 10 Unities + Antwort hilfreich

Eigentlich sollte es ohne den /PREP7-Befehl funktionieren.
Ein Trick den ich mal angewendet habe ist um wieder in den /PREP7 wechseln zu können:
Den ersten LS normal zu rechnen und dann ab dem 2. LS mit ANTYPE,,rest
einen Restart machen, dann kannst du sogar wieder in den /PREP7 wechseln.

edit: war zu langsam, falsche Vermutung gelöscht

------------------
Viele Grüße         
Achim              PS: Als Anerkennung für einen Beitrag freu' nicht nur ich mich über Unities

Was ist der Unterschied zwischen Theorie und Praxis? Theorie ist, wenn man alles weiß und nichts funktioniert - Praxis ist, wenn alles funktioniert und keiner weiß warum (Autor unbekannt)

[Diese Nachricht wurde von Achim007 am 27. Apr. 2013 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thielema
Mitglied


Sehen Sie sich das Profil von Thielema an!   Senden Sie eine Private Message an Thielema  Schreiben Sie einen Gästebucheintrag für Thielema

Beiträge: 6
Registriert: 27.04.2013

ANSYS WB 14.5

erstellt am: 27. Apr. 2013 18:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Moin,

Danke für den Hinweis mit dem Restart!
Ich hab erst relativ spät bemerkt, dass Ansys ohne den Restart für jeden neuen Wert i alle Lastschritte neu berechnet. 

Ich habe jetzt im /Solu Teil den Restart eingebaut durch: ANTYPE,STATIC,RESTART.

Jetzt tut sich allerdings ein anderes Problem auf.

Obwohl ich die Variable i hochzähle und so laut obigem Code die Verschiebung immer größer wird,
geschieht dies bei mir seltsamerweise nicht. Die Verschiebung bleibt bei allen Lastschritten bei 0.05mm.

Kann es sein, dass durch den Restart auch der Wert für i mit dem vorherigen überschrieben wird?
Und wenn ja, wie umgehe ich das? "i" soll ja mein zähler bleiben und nicht wieder zurück gesetzt werden...

Wie immer schon vorab einen Dank an alle, die sich mit meinen Problemen auseinandersetzen. 

Viele Grüße
Thielema

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Achim007
Mitglied
Dipl. Ing. (FH)


Sehen Sie sich das Profil von Achim007 an!   Senden Sie eine Private Message an Achim007  Schreiben Sie einen Gästebucheintrag für Achim007

Beiträge: 734
Registriert: 23.09.2008

Workbench 2.0
ANSYS15.0 Mechanical
DesignModeler

erstellt am: 27. Apr. 2013 19:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thielema 10 Unities + Antwort hilfreich

sollte eigentlich nicht sein.
mit *status kannst Du den Wert von versch und i ausgeben lassen
Wie viele LS werden gerechnet?

*set,versch,i*0.05 ist ja gleichbedeutend mit versch=i*0.05
ohne Laufvariable ist es dann identisch mit versch=versch+0.05
vor der Schleife muss dann aber versch=0 gesetzt werden

Den Restart hast Du elegant gelöst

------------------
Viele Grüße        
Achim              PS: Als Anerkennung für einen Beitrag freu' nicht nur ich mich über Unities

Was ist der Unterschied zwischen Theorie und Praxis? Theorie ist, wenn man alles weiß und nichts funktioniert - Praxis ist, wenn alles funktioniert und keiner weiß warum (Autor unbekannt)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thielema
Mitglied


Sehen Sie sich das Profil von Thielema an!   Senden Sie eine Private Message an Thielema  Schreiben Sie einen Gästebucheintrag für Thielema

Beiträge: 6
Registriert: 27.04.2013

ANSYS WB 14.5

erstellt am: 27. Apr. 2013 20:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi Achim,

deine Tipps bringen mich echt voran! 

Der *Status-Befehl hat mir endlich die Möglichkeit gegeben Variablen während der Rechnung zu beobachten.
Besten Dank dafür!

Ich habe jetzt mal den Status von "i" vor und nach dem Restart ausgegeben. Es passiert genau das, was ich angenommen habe. "i" wird durch den Restart beim zweiten durchlauf vom Wert 2 auf 1 zurück gesetzt.

Auch eine Übergabe an eine andere Variable oder die Nutzung von versch=versch+0.05 ist unwirksam, da auch diese Variablen dann wieder neu geladen werden. (zumindest werden Sie auf den Wert des ersten Schleifendurchlaufs zurück gesetzt.)

Gibt es eine Möglichkeit die Variablen vor dem Überschreiben zu schützen? In C oder C++ kann man Variablen als PRIVATE oder PUBLIC geklarieren, dass diese nich von anderen Funktionen überschrieben werden.

Gibt es hier (ANSYS) auch eine solche Funktion? Ich werd mal die Hilfe danach durchforsten, bin aber weiterhin für jede Unterstützung dankbar.

Schönen Abend an alle und Danke nochmal. 

Gruß
Maik

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Achim007
Mitglied
Dipl. Ing. (FH)


Sehen Sie sich das Profil von Achim007 an!   Senden Sie eine Private Message an Achim007  Schreiben Sie einen Gästebucheintrag für Achim007

Beiträge: 734
Registriert: 23.09.2008

Workbench 2.0
ANSYS15.0 Mechanical
DesignModeler

erstellt am: 27. Apr. 2013 21:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thielema 10 Unities + Antwort hilfreich

mit PARSAV kannst Du die Variablen in eine Datei schreiben
die Du dann mit PARRES wieder zurückholen kannst

------------------
Viele Grüße        
Achim              PS: Als Anerkennung für einen Beitrag freu' nicht nur ich mich über Unities

Was ist der Unterschied zwischen Theorie und Praxis? Theorie ist, wenn man alles weiß und nichts funktioniert - Praxis ist, wenn alles funktioniert und keiner weiß warum (Autor unbekannt)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Thielema
Mitglied


Sehen Sie sich das Profil von Thielema an!   Senden Sie eine Private Message an Thielema  Schreiben Sie einen Gästebucheintrag für Thielema

Beiträge: 6
Registriert: 27.04.2013

ANSYS WB 14.5

erstellt am: 28. Apr. 2013 12:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Guten Morgen Achim,

genau das war das Zünglein an der Waage. 

Ich habe ein paar versuche gebraucht die Befehle an die richtige Stelle zu bekommen, aber nun läuft die Rechnung durch. Besten Dank nochmal dafür!

Habe nun auch noch den EKILL-Teil umgesetzt. Die Elemente werden für die Berechnung heraus gelöscht, und das Teil bricht wie gewünscht.
Einziges Manko ist, das im Postprocessing noch alle Elemente gezeigt werden. Keine Ahnung warum...

Ich denke damit kann/muss ich leben. 

Vielen Dank nochmal an alle, die sich mit dem Problem auseinander gesetzt haben! (vor allem an Achim einen Dank für die Befehle, die mir fehlten)

Euch nen schönen Sonntag noch!
Gruß Thielema

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Achim007
Mitglied
Dipl. Ing. (FH)


Sehen Sie sich das Profil von Achim007 an!   Senden Sie eine Private Message an Achim007  Schreiben Sie einen Gästebucheintrag für Achim007

Beiträge: 734
Registriert: 23.09.2008

Workbench 2.0
ANSYS15.0 Mechanical
DesignModeler

erstellt am: 28. Apr. 2013 13:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thielema 10 Unities + Antwort hilfreich

Hallo Maik,
es macht Spaß zu helfen, wenn die Hilfe (zur Selbsthilfe) so gut umgesetzt wird.
Viele Grüße ebenfalls einen schönen Sonntag und weiterhin viel Erfolg
Achim

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

csak1901
Mitglied
Student

Sehen Sie sich das Profil von csak1901 an!   Senden Sie eine Private Message an csak1901  Schreiben Sie einen Gästebucheintrag für csak1901

Beiträge: 1
Registriert: 27.05.2013

erstellt am: 27. Mai. 2013 15:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Thielema 10 Unities + Antwort hilfreich

Hallo Thielema,

ich arbeite zur Zeit an meiner Masterarbeit und behandle das Thema "FEM-Berechnung eines Verbundträgers".
Habe ähnliche Probleme wie du in diesem Bericht beschrieben hast. Wäre es möglich dass du mir den kompletten Code (mit dem eingebauten EKILL-Teil) bzw. das wb-File zukommen läst? Mir wäre echt sehr geholfen. 

Danke, Stefan

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz