Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  ANSYS
  Laststeigerung bis zum Versagen - kann .rst Datei nicht öffnen

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:  Laststeigerung bis zum Versagen - kann .rst Datei nicht öffnen (4616 mal gelesen)
Arno07
Mitglied



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

Beiträge: 57
Registriert: 02.12.2008

erstellt am: 28. Apr. 2009 17:50    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,
ich habe folgendes Problem:
Eine Scheibe in der ein Bolzen steckt soll mit einer Flächenlast belastet werden. Diese soll solange gesteigert werden, bis eine bestimmte (Grenz-)Spannung erreicht wird bei der die Scheibe versagt.
Die Abmessungen der Scheibe können zu Beginn per Eingabeaufforderung vom Benutzer
bestimmt werden und auch die Elementeinteilung ist variabel. Der Bolzen ist doppelt so lang wie die Scheibe dick ist.
Nun habe ich eine DO-Schleife geschrieben mit der ich die Last, ausgehend von einem Startwert, in jedem Schleifendurchgang erhöhe bis die Grenzspannung erreicht ist.
Zur Zeit sieht das so aus:

Code:

/SOLU

ANTYPE, STATIC
SOLCONTROL, ON, ON
NROPT, UNSYM
NLGEOM, ON

!---<Lagerung an den Aussenkanten des Bolzens>---

KSEL, S, LOC, Z, -Dicke_Scheibe/2
KSEL, A, LOC, Z, 1.5*Dicke_Scheibe
DK, ALL, ALL, 0
ALLSEL

DTRAN

!-----<Lastaufbringung>-------------------------


*DO, i, 1, 100
ALast=1000                               ! Vorgabe einer Startlast
zul_sigma=100
NSEL, S, LOC, X, Scheibenlaenge            ! Auswählen und zählen aller Knoten
*GET, NANZAHL, NODE, , COUNT
ALLSEL

! Aufteilen der Startlast auf die Knoten:

Last=i*Scheibenbreite*Scheibendicke*ALast/NANZAHL

! Aufbringen der Last in X-Richtung:

NSEL, S, LOC, X, Scheibenlaenge
CM, Lasta, NODE
ALLSEL
F, Lasta, FX, Last


!Auswählen der Flächen und der zugehörigen Knoten die der Scheibe zugeordnet sind:

ASEL, S, AREA, 1, Scheiben_Flaechenzahl, 1
NSLA, S, 1

!Sortieren der Spannungswerte und "herausholen" der maximalen Spannung:
NSORT, S, 1
/POST1
SET, LAST
*GET, SMAX, SORT, MAX

*IF, SMAX, GE, zul_sigma, EXIT
 
/SOLU
ANTYPE, , REST

*ENDDO


Nun erhalte ich folgende Fehlermeldung: An error occurred while attempting to open the results file BolzenPlatte.rstund das Programm bricht ab. Offenbar kann das Programm die Schleife nicht weiter durchlaufen, weil sie an das Ergebnis (im result file) nicht dran kommt. Aber wie mache ich dem Programm diese Datei zugänglich? In der Hilfe habe ich bislang nichts finden können.
Und noch eine zweite Frage: Die Schleife wird bzw. würde aktuell maximal 100 mal durchlaufen. Wenn nun aber meine Scheibe bzw. die Knotenanzahl auf die meine Anfangslast aufgeteilt ist so hoch ist, dass 100 Durchläufe nicht reichen, was dann? Oder anders formuliert: Gibt es eine Möglichkeit sicherzustellen, dass die Schleife auf jeden Fall oft genug durchlaufen wird?

Für Ratschläge/Hinweise bin ich überaus dankbar 


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

arnd13
Mitglied
Dipl. Ing.


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

Beiträge: 735
Registriert: 05.11.2008

erstellt am: 29. Apr. 2009 09:06    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 Arno07 10 Unities + Antwort hilfreich

Hi,

1) Sehe auf den ersten Blick nur, dass Du den Befehl nsort vor dem Wechsel in den /post1 und dem Einlesen des .rst (set,last) ausführst. Das wird nicht funktionieren.

2) "Gibt es eine Möglichkeit sicherzustellen, dass die Schleife auf jeden Fall oft genug durchlaufen wird?"
Versuche es mal mit einer bedingten Schleife: *dowhile (siehe Hilfe).

Gruß, A.

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

ChristophN
Mitglied
Berechnungsingenieur


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

Beiträge: 773
Registriert: 13.12.2008

erstellt am: 29. Apr. 2009 09:32    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 Arno07 10 Unities + Antwort hilfreich

Also mir fällt vor allem auf, dass da kein SOLVE-Befehl steht, was auch das Fehlen des Result-Files erklären würde...

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

Arno07
Mitglied



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

Beiträge: 57
Registriert: 02.12.2008

erstellt am: 29. Apr. 2009 12:42    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

Vielen Dank für die Hinweise. Sie haben mich aber bisher nur bedingt weitergebracht. Trotzdem vielen Dank

Ich zunächst versuchsweise den /POST1 vor dem NSORT Befehl und SOLVE am Ende vor *ENDDO platziert. Ergebnis war das ich die Fehlermeldung immer noch bekommen habe, allerdings vorher noch die beiden Warnmedlungen

*** WARNING ***                         CP =      15.102   TIME= 11:24:01
For item= AREA the component ( 1 ) is invalid.                         
  The ASEL command is ignored.                                          

*** WARNING ***                         CP =      15.202   TIME= 11:24:01
The requested S data is not available.                                 
  The NSOR command is ignored.                                          


Danach habe ich den SOLVE Befehl vor den /POST1 Befehl gesetzt und das sah für einige Zeit (ca. 40 Minuten  ) ganz gut aus, da ANSYS anfing zu rechnen.
Dann gab es aber einen Abbruch der, wenn ich das richtig interpretiere auf zu wenig Speicher zurückzuführen ist

Not enough memory for Sparse Matrix solver.  Increase memory using -m  
option (refer to the Basic Analysis Procedures Guide, Ch.  19).        
  Memory available= 233 MB; memory required for solution= 309 MB.       

*** WARNING ***                         CP =    1020.217   TIME= 12:01:03
For item= AREA the component ( 1 ) is invalid.                         
  The ASEL command is ignored.                                          

*** WARNING ***                         CP =    1020.457   TIME= 12:01:07
The requested S data is not available.                                 
  The NSOR command is ignored.                                          

*** ERROR ***                           CP =    1020.568   TIME= 12:01:07
An error occurred while attempting to open the results file            
BolzenPlatte.rst.

Ich werde also mal im Kapitel 19 nachlesen, wie das Speicherproblem in den Griff zu bekommen ist. Abgesehen davon irritieren mich die beiden Warnmeldungen bzgl. des ASEL und NSORT Befehls aber schon. Ich lasse mir vorher im Programm die höchste Nummer der Scheibenflächen mit
*GET, Scheiben_Flaechenzahl, AREA, , NUM, MAX
herausholen um dann mit den Nummern der Bolzenflächen bei Scheiben_Flaechenzahl+1 zu beginnen.              

[Diese Nachricht wurde von Arno07 am 29. Apr. 2009 editiert.]

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

arnd13
Mitglied
Dipl. Ing.


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

Beiträge: 735
Registriert: 05.11.2008

erstellt am: 29. Apr. 2009 13:04    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 Arno07 10 Unities + Antwort hilfreich

1) Bitte die Hilfe genau lesen:
Hilfe: ASEL, Type, Item, Comp, VMIN, VMAX, VINC, KSWP
=> asel,s,area,,1! Dann ist auch die Warnung verschwunden.

2) Vor nsor noch den lastfall einlesen
set,...

3) Wenn Du prüfen willst, ob ein resultfile vorhanden ist:
Entweder im Arbeitsverzeichnis nachsehen und Größe der Datei kontrollieren, oder set,list eingeben.

4) Noch ein Tip: Das Ganze zuerst an einem kleinen Testmodell rechnen, um Absturz wegen Speicherproblemen zu vermeiden. Und 40min Wartezeit wegen  einer Rechnung sind auch nicht gerade effektiv.

Gruß, E.

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

Arno07
Mitglied



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

Beiträge: 57
Registriert: 02.12.2008

erstellt am: 29. Apr. 2009 22:52    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

Ich habe jetzt die Hilfe zum Thema Speicher gelesen und versucht den Speicher manuell zu ändern - die Fehlermeldung bleibt aber bestehen.
Zu meinem Vorgehen:
Ich habe im Produkt Launcher unter "Anpassungen/Voreinstellungen" die Option Benutzerdefinierte-Arbeitsspeicher Einstellungen verwenden angeklickt und als Einstellungen die Varianten:
- Gesamter Arbeitsplatz 1000MB - Datenbasis 200MB
- Gesamter Arbeitsplatz 1000MB - Datenbasis 500MB
- Gesamter Arbeitsplatz 1400MB - Datenbasis 400MB
ausprobiert.
Außerdem habe ich im Feld "Weitere Parameter" -m 1000  -db 200 usw. eingegeben bzw. das Feld freigelassen. Das ganze dann als Profil1 gespeichert (als Standartprofil festgelegt) und die Berechnung neu gestartet.
Jedes Mal kam die Fehlermeldung - immer mit den gleichen Zahlen

*** ERROR ***                           CP =    1029.090   TIME= 21:36:21
Not enough memory for Sparse Matrix solver.  Increase memory using -m  
option (refer to the Basic Analysis Procedures Guide, Ch.  19).        
  Memory available= 233 MB; memory required for solution= 309 MB.

Im Output Fenster bekomme ich noch die Meldung:

SPARSE MATRIX DIRECT SOLVER.
Number of equations = 293021, Maximum wavefront = 6858
Memory available for solver = 233.346 MB   
Memory required for in-core = 8033.697 MB
Optimal memory required for out-of core = 755.272 MB
Minimum memory required for out-of core = 308.723 MB

***NOTE***
Sparse Direct Solver is using the least out-of-core memory.
For better CPU performance increase memory by using -m option
(refer to the Basic Analysis Procedures Guide, Ch. 19)

Im Kapitel 19.3.2 Changing the Amount of ANSYS Work Space steht dann folgendes:
The easiest way to do this is to use the work space entry option (-m) while activating the program, either via the ANSYS launcher or via the ANSYS execution command.

Genau das habe ich doch gemacht - meine ich jedenfalls. Nur anscheinend akzeptiert ANSYS meine Änderungen nicht. Warum? Ich habe ANSYS 11 unter WinXP laufen, 1GB Arbeitsspeicher und 30GB Platz auf der Platte bzw. Partition und so sehr groß ist mein Modell auch nicht...

[Diese Nachricht wurde von Arno07 am 29. Apr. 2009 editiert.]

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

ChristophN
Mitglied
Berechnungsingenieur


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

Beiträge: 773
Registriert: 13.12.2008

erstellt am: 29. Apr. 2009 23:52    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 Arno07 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Arno07:
und so sehr groß ist mein Modell auch nicht...

Fast 300000 Gleichungen sind schon nicht ohne... Also "zu klein" für einen 1GB-Rechner ist dein Modell definitiv nicht!
Wenn du Speicherprobleme hast, hilft meist der PCG oder irgendein anderer iterativer Solver, die brauchen weniger.

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

PatrickL.
Mitglied
Student


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

Beiträge: 42
Registriert: 22.02.2009

erstellt am: 30. Apr. 2009 19: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 Nur für Arno07 10 Unities + Antwort hilfreich

hey,
ich habe eine ähnliches problem:
ich habe mein modell modeliert und führe eine plastische berechnung aus.
nach 3 stunden (ist ein recht grosses modell 
ansys kriegt auch die rechnung gelöst, ich kann mir die steps und die lösung auch ansehen. jedoch wenn ich das programm schliesse und wieder öffnen kann ich das modell ein leses jedoch kene results mehr. was nach stundenlanger berechnung ärgerlich ist.
die meldung ist die gleiche:
"an error occured while attempting to open the results file FILENAME.rst."

was kann ich da tun...danke

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

PatrickL.
Mitglied
Student


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

Beiträge: 42
Registriert: 22.02.2009

erstellt am: 01. Mai. 2009 22: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 Nur für Arno07 10 Unities + Antwort hilfreich

wenn ich die rst. datei öffnen will kommt folgende meldung: the file ist not a valid ansys database file.
vll hat es etwas damit zu tun?
danke für hilfe

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: 01. Mai. 2009 22:53    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 Arno07 10 Unities + Antwort hilfreich

wenn Du die Datenbasis mit dem RESUME eingelesten hast
musst Du die Ergebnisse (gewünschten Load Step) im /POST1 mit dem SET Befehl einlesen. (z. B. set,last)
Sollte Deine *.rst Datei nicht gefunden werden, musst Du diese über das Menue  General Post / Data and Filemanagement oder so ähnlich auf Deiner Festplatte suchen und einlesen. Gewünschten Load Step mit SET einlesen. Dann sollte es funktionieren. Wenn dies nicht funtioniert würde ich die Größe der *.rst anschauen.

------------------

Viele Grüße
Achim

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

Arno07
Mitglied



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

Beiträge: 57
Registriert: 02.12.2008

erstellt am: 20. Mai. 2009 15:34    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

Ich hole das Thema nochmal hervor. Ich habe zwischenzeitlich das Problem mit der rst.-Datei gelöst und dank Anwendung des PCG Solvers lief die Rechnung mit der obigen DO-Schleife auch durch.
Nun versuche ich aber noch, wie im ersten Beitrag schon angesprochen, eine Schleife zu schreiben, die auf jeden Fall oft genug durchlaufen wird.
Dies soll, wie mittels einer DOWHILE Schleife realisiert werden und sieht derzeit wie folgt aus:

Code:

/SOLU

ANTYPE, STATIC
NROPT, FULL
SOLCONTROL, ON, ON
NLGEOM, ON
EQSLV, PCG, , 3


!---<Lagerung an den Aussenkanten des Bolzens>---

KSEL, S, LOC, Z, -Dicke_Scheibe/2
KSEL, A, LOC, Z, 1.5*Dicke_Scheibe
DK, ALL, ALL, 0
ALLSEL
DTRAN

!-----<Lastaufbringung>-------------------------

ALast=1000                              ! Vorgabe einer Startlast
zul_sigma=100
NSEL, S, LOC, X, Scheibenlaenge            ! Auswählen und zählen aller Knoten
*GET, NANZAHL, NODE, , COUNT
ALLSEL

! Aufteilen der Startlast auf die Knoten:

Last=Scheibenbreite*Scheibendicke*ALast/NANZAHL

! Aufbringen der Last in X-Richtung:

NSEL, S, LOC, X, Scheibenlaenge
CM, Lasta, NODE
ALLSEL
F, Lasta, FX, Last
/PBC, ALL, , 1
NSUBST, 5, 50, 5
SOLVE

!-------------Definition von Parametern für die DOWHILE Schleife und

Par=1
Genau=1/1000
Genau=Genau*Genau


*DOWHILE, Par

/POST1

!Auswählen der Flächen und der zugehörigen Knoten die der Scheibe zugeordnet sind:

ASEL, S, AREA, ,1, Scheiben_Flaechenzahl, 1
NSLA, S, 1

!Sortieren der Spannungswerte und "herausholen" der maximalen Spannung:

SET, LAST
NSORT, S, 1

SET, LAST
*GET, SMAX, SORT, , MAX
ALLSEL

/SOLU

! Berechnen des Verhältnisses der größten Spannung zur zulässigen Spannung
! Die im ersten bzw. aktuellen Durchlauf aufgebrachte Last pro Knoten wird als
! Last_alt gesetzt Last wird neu berechnet zu Last/KFaktor 

KFaktor=SMAX/zul_sigma
Last_alt=Last
Last=Last/KFaktor

! Es wird die Differerenz der ersten und zweiten bzw. i-ten i+1ten Last berechnet ! und durch die erste bzw. i-te Last geteilt. Wenn die Lastdifferenz kleiner oder ! gleich 1/Mio. (=Genau) ist wird die DOWHILE Schleife am Ende des Durchlaufs
! verlassen (da Par=0), ansonsten weiter durchlaufen (Par=1). 

Differenz=(Last_alt-Last)/Last_alt
Differenz2=Differenz*Differenz 
*IF, Differenz2, LE, Genau, THEN
Par=0
*ELSE
Par=1
*ENDIF

FDELE, ALL

! Aufbringen der aktuellen Last auf die Knoten (Last=Last/KFaktor)

F, Lasta, FX, Last

/PBC, ALL, , 1

NSUBST, 5, 50, 5

SOLVE

*ENDDO


Dahinter steht folgender Gedankengang:
Es wird eine Anfangslast aufgebracht (komplett: ALast, auf die Knoten aufgeteilt als Last), die Spannungen hervorruft. Diese Spannungen sind kleiner als die maximal zulässigen Spannungen. Als nächstes wird das Verhältnis von aktuellen und zulässigen Spannungen bestimmt (KFaktor). Da die aktuellen Spannungen kleiner als die zulässigen Spannungen sind liegt KFaktor zwischen 0 und 1.
Als nächstes wird die Last die die aktuellen Spannungen verursacht zu Last_alt gesetzt und eine neue Last, ab da aktuelle Last, Last=Last/KFaktor berechnet. Diese neue Last ist, da KFaktor zwischen 0 und 1 liegt größer als die vorherige Last (jetzt Last_alt).
Nun wird die Differenz dieser beiden Lasten in Bezug auf die erste Last berechnet und quadriert (Differenz2). Ist Differenz2 kleiner oder gleich 1/Mio. (=Genau) wird die DOWHILE Schleife am Ende verlassen, ansonsten weiter durchlaufen.
Am Ende wird die neue Last (Last/KFaktor) auf die Knoten aufgebracht.
Da dieses am Ende des ersten Durchlaufs größer ist als zu Beginn vergrößert sich auch die Spannung.
Sollte in einem späteren Durchlauf (Durchlauf i) der Fall eintreten, dass die dann aktuelle Spannung größer als die zulässige Spannung ist, wird KFaktor größer als 1 und die neu berechnete Last (Last/KFaktor) kleiner als die aus dem Durchlauf davor (i-1).

Nun sollte doch der Fall eintreten, das sich die Laständerung sich der geforderten Grenze von 1/Mio. annähert und somit die dann aktuelle Spannung (fast) gleich der zulässigen Spannung ist.
Nach 7,25 Stunden bekomme ich die folgenden Fehlermeldungen:

PCG detects that the stiffness matrix is ill-conditioned, Solution is not convergent, check rigid-body motion of your model. It may trigger a bisection in nonlinear analysis.

*** ERROR ***                          CP =  23713.438  TIME= 15:02:11
Preconditioned conjugate gradient solver error level 1.  Possibly, the 
model is unconstrained or additional iterations may be needed.  Try   
running with a multiplier MULT > 1 in EQSLV command (3 > MULT > 1).

Mal abgesehen davon, das trotz eines nicht allzu schnellen Rechners (1GB RAM) 7,25 Stunden Rechenzeit nicht effektiv ist (um nicht zu sagen inakzeptabel ist). wundert mich diese Fehlermeldung insofern, als das ich sie mit der DO-Schleife nicht bekommen habe. Mein Modell ist auch ordentlich gelagert, so dass die Möglichkeit „unconstrained“ wegfällt. In meinem EQSLV Kommando habe ich MULT auf 3 gesetzt, d.h. das fällt auch weg, bleiben nur noch die weiteren Iterationen. Und das nach 7,25 Stunden und bereits zig Tausend Iterationen?   

Habe ich in meinem Programmcode etwas übersehen oder ist der Gedankengang falsch? Wohlmöglich „pendelt“ die Laständerung immer hin und her, wird aber nie so gering wie gefordert. Deswegen dachte ich auch schon daran das Konvergenzkriterium (Genau) zu vergrößern (z.B.) auf 1/1000.

Ich weiß nicht recht weiter und und hoffe hier findet sich jemand der mir Hinweise/Anregungen geben kann.

Vielen Dank!

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

Arno07
Mitglied



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

Beiträge: 57
Registriert: 02.12.2008

erstellt am: 23. Mai. 2009 09:59    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

Ich antworte mir mal selber. Das Problem ist leider noch nicht gelöst, aber ich denke ich bin einen kleinen Schritt weiter.
Ich habe das Modell jetzt durch verringern der Elementanzahl verkleinert. Außerdem habe ich noch PCGOPT,3 gesetzt. Nun dauert es ca. 1 Stunde bis der erste Lastschritt aufgebracht ist und alle 5 Substeps konvergieren. Danach geht es mit der DOWHILE Schleife weiter und wie lange das dann noch dauert weiß ich nicht.
Die 1 Stunde alleine für den 1. Lastschritt ist mir auch schon zuviel.
Bei oben beschriebenem Vorgehen habe ich auch die Anfangslast (ALast) variiert und festgestellt, dass, wenn diese sehr stark vergrößert wird, die Lösung deutlich länger dauert und evtl. auch die Substeps verringert werden.
Konvergenz ist erreicht wenn F Convergence Value < CRITERION gilt.
Nun ist meine Frage ob es da eine Möglichkeit gibt diese Bedingung möglichst rasch, also ohne allzu viele Iterationen pro Substep, zu erfüllen. Nur durch probieren allein zum Ziel zu kommen dauert unter Umständen sehr lange und ist somit unbefriedigend.
Ist es zum Beispiel möglich anhand der ersten Gegenüberstellung von Convergence Value und CRITERION schon möglich abzuschätzen, ob die gewählten Werte (in diesem Fall die Last) sinnvoll sind/ist? Im Grunde will ich ja die Last "einfangen", die Spannungen verursacht, die möglichst nah an den zulässigen Spannungen liegen. Wobei es natürlich im Laufe der Lastaufbringungen im Modell zu Veränderungen kommt (Kontakt etc...).
 

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

Arno07
Mitglied



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

Beiträge: 57
Registriert: 02.12.2008

erstellt am: 27. Mai. 2009 09:33    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


ScheibemitStahlbolzen.txt

 
Die Verkleinerung des Modells hat leider nicht zum Erfiolg geführt. Deshalb habe ich nun die Schleife komplett rausgenommen. Stattdessen sollen zwei Lastschreibe berechnet werden:
1. Lastschritt: Last (kleiner als maximal zulässige Last) wird aufgebracht und daraus die maximale Spannung ermittelt.
2. Lastschritt: Last wird um KFaktor=(maximale Spannung aus Lastschritt 1)/(maximal zulässige Spannung) 

Da ich mich im linear-elastischen Bereich befinde, müsste ich doch nach dem 2. Lastschritt die maximal zulässige Last erhalten, die die maximal zulässige Spannung hervorruft.
Leider bricht die Berechnung im 2. Lastschritt beim 3. Zwischenschritt ab und ich weiß nicht weshalb.
Ich hänge meine Eingabedatei mal mit in dieses Posting und hoffe das jemand einen Tipp geben kann bzw. Rat weiß

[Diese Nachricht wurde von Arno07 am 08. Jun. 2009 editiert.]

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

Tschenzi
Mitglied



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

Beiträge: 81
Registriert: 20.01.2009

Ansys Classic 11.0

erstellt am: 27. Mai. 2009 10:38    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 Arno07 10 Unities + Antwort hilfreich

Hallo.
Warum machst du eigentlich keine Berechnung mit elasto / plastischem Materialverhalten??

------------------
Liebe Grüße, Tschenzi

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