Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  ANSYS
  Schleife

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:  Schleife (1720 mal gelesen)
User2306
Mitglied



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

Beiträge: 35
Registriert: 30.11.2010

erstellt am: 12. Sep. 2013 13:40    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,
ich würde Ansys gerne für eine Art Optimierung nutzen. Und zwar soll die gegebene Streckgrenze abhängig von der vorhandenen Querkraft im vorherigen Schritt sein. Nun ist meine Frage, ob man Ansys irgendwie dazu bringen kann, durchzurechnen, sich ein Ergebnis raus zu suchen und mit dem Ergebnis einen neuen Rechendurchlauf zu starten, bis das Ergebnis sich nicht mehr ändert.
Oder ist es möglich Ansys über VBA zu aktivieren, so dass ich die Iteration über VBA laufen lassen kann?
Ich wär sehr dankbar für einen schnellen Tip!

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: 12. Sep. 2013 13:46    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 User2306 10 Unities + Antwort hilfreich

Ich bezweifle, dass dieser Zugang (eine von der Querkraft abhängige Streckgrenze) irgendetwas physikalisch sinnvolles darstellt. Was ist denn das eigentliche Problem?

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

User2306
Mitglied



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

Beiträge: 35
Registriert: 30.11.2010

erstellt am: 12. Sep. 2013 14: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

Oh doch, ich halte das für sinnvoll. Auch in der aktuellen Norm wird das so gemacht. Aber das ist ja auch nicht das eigentliche Problem. Meine Frage ist, ob ich ein Ergebnis aus dem Postprozess in den Preprozess einer nächsten Berechnung einbinden kann und zwar so lange, bis ein bestimmter Wert erreicht ist.

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

roncaratil
Mitglied
Ingenieur


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

Beiträge: 138
Registriert: 14.02.2013

Intel Xeon E5-1620 3.6GHz
48GB RAM
ANSYS WB 15.0.7 Mechanical
ANSYS SpaceClaim

erstellt am: 13. Sep. 2013 10: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 Nur für User2306 10 Unities + Antwort hilfreich

Hallo User2306

Ja das geht. Hier einige Zeile Code, welche ich für eine ähnliche Simulation verwendet habe: Anapssung eines Simulationsparameters anhand der Resultate aus den vorherigen Schrittes. Hoffentlich hilft das.

Code:
/solu
i=1
*dowhile,i                    ! Anfang der DO-Schleife. Pro Durchgang wird einen Lastschritt berechnet
    autots,off                  ! User turned off automatic time stepping
    deltim,1,1,1                ! Specifies the time step sizes to be used for the current load step (initial, min, max)
    time,i                      ! Sets the time for a load step
    timint,on                  ! Turn on time integration effects
                                ! Hier Anpassungen am Model anhand des vorheirgen Ergebnisses machen
    solve
    *get,                      ! Ergebnis lesen
    *if,,,,exit                ! Bedingung fuer stoppen der simulation
    *status,                    ! Bedingung ueberwachen
    i=i+1
*enddo                          ! Ende der DO-Schleife

Gruss

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

User2306
Mitglied



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

Beiträge: 35
Registriert: 30.11.2010

erstellt am: 18. Sep. 2013 08:55    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

Danke für die Antwort!
Wird dann das System immer neu belastet oder berücksichtigt es die Lasten aus dem vorherigen Lastschritt?

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

User2306
Mitglied



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

Beiträge: 35
Registriert: 30.11.2010

erstellt am: 18. Sep. 2013 10:08    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 bis jetzt automatisches Timestepping gewählt und würde das auch gerne weiterhin tun. Geht das auch?

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

User2306
Mitglied



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

Beiträge: 35
Registriert: 30.11.2010

erstellt am: 18. Sep. 2013 10: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

Mein Solution-Prozess sieht jetzt so aus. Das funktioniert aber leider nicht. Vielleicht hat noch jemand eine Idee?

/SOLU

i=1
*dowhile,i                    ! Anfang der DO-Schleife. Pro Durchgang wird einen Lastschritt berechnet
   
!Berechnung: 0=static
ANTYPE,0
!
!Auflagerbedingungen
DK,1, , , , ,UX,UY,UZ,ROTX,RoTY,ROTZ,WARP
!
!Einzellasten
*If,Einzellast,EQ,1,Then
FK,AL+1,Fx,FxE
FK,10000,Fy,FyF
FK,10000,Fz,FzF
FK,1,My,MyA
FK,1,Mz,MzA
FK,AL+1,My,MyE
FK,AL+1,Mz,MzE
FK,10000,Fy,FyE
*Else
!Gleichstreckenlasten
*Do,P,1,AL+1
  FK,P+10000,FY,qy
  FK,P+10000,FZ,qz
*Enddo
*ENDIf
!
!Berechnungsoptionen
!large deflection
NLGEOM,ON
!automatic time stepping, OFF bei Arclen_Verfahren
AUTOTS,ON
!NSUBT,sub-steps (1000),max.number of substeps (1000),min. number of substeps (unendlich) for the automatic time stepping algorithm
NSUBST,5000,5000,,
!nach der Berechnung alles ausgeben
OUTRES,ALL,ALL
!Abbruchkriterien NCNV,Konvergenz,max DOF(default 1.0E6),Anzahl Iterationen(default Infinty),Sekunden(default infinty), CPU !Sekunden(default infinty)
NCNV,1,1e+040,,0,0
NEQIT,50
!Time=1, letzte Laststufe * angesetzter Belastung = max. Belastung
*If,Einzellast,EQ,1,Then
TIME,Fz_E
*Else
TIME,qz_L
*ENDIf

!autots,off                ! User turned off automatic time stepping
  !  deltim,1,1,1                ! Specifies the time step sizes to be used for the current load step (initial, min, max)
  !  time,i                      ! Sets the time for a load step
  !  timint,on                  ! Turn on time integration effects
                                ! Hier Anpassungen am Model anhand des vorheirgen Ergebnisses machen
   
!
!
!Einlesen der zugehörigen Eigenspannungsdatei
ESEL,S,SEC,,1
ISFILE,READ,HEA800_111_20_LFA,ist,,1
ALLSEL,all
solve
*GET,Traglast,ACTIVE,0,SET,TIME,
    !*GET,Querkraft,ELEM,102,FMC,Y                      ! Ergebnis lesen
fy3=23.5*sqrt(1-(Traglast*L1/1551)*(Traglast*L1/1551))
    *if,fy3,EQ,fy2,exit                ! Bedingung fuer stoppen der simulation
*if,fy3,NE,fy2,then
fy2=fy3
*Endif
    *status,Querkraft                    ! Bedingung ueberwachen
    i=i+1
*enddo                          ! Ende der DO-Schleife
!
FINISH

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