Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  ANSYS
  Schleife verlassen über if....exit funktioniert nicht im Batch Mode

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 verlassen über if....exit funktioniert nicht im Batch Mode (1683 / mal gelesen)
SarahFEM
Mitglied



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

Beiträge: 168
Registriert: 05.03.2015

erstellt am: 06. Jun. 2018 18: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

Hallo zusammen,

ich habe in meinem Programm eine Do-Schleife, welche nach Erfüllung eines Abbruchkrtieriums zu beenden ist. Dafür nutze ich die Abfrage:

*if,x,le,0.001,exit

Dies funktioniert einwandfrei im GUI-Mode aber nicht im Batch Mode. Gibt es hier evtl. eine andere Lösung?

Gruß Sarah

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

smittytomcat
Mitglied
Naval Architect / Dipl.-Ing. Schiffbau, selbstständig


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

Beiträge: 1320
Registriert: 23.08.2005

ANSYS
Bricscad
Windows XP Prof 32 bit SP 3
Windoof 7 Prof 64 bit
Dell Precision's
Bleistift
Radiergummi
Dreieck
Papier
Dubbel etc.
Taschenrechner
den eigenen Kopf
...

erstellt am: 06. Jun. 2018 19:25    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 SarahFEM 10 Unities + Antwort hilfreich

Hi,
alternative wäre der *go Befehl mit Label

------------------
Gruß
Gerd
Hunde haben ein Herrchen oder Frauchen - Katzen haben Personal.

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

SarahFEM
Mitglied



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

Beiträge: 168
Registriert: 05.03.2015

erstellt am: 06. Jun. 2018 19:29    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 Antwort!

Problem beim Go-Befehl ist leider, dass man diesen nicht zum Herausspringen aus do-loops verwenden kann:

"This label option may not be mixed with do-loop or if-then-else constructs."

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

smittytomcat
Mitglied
Naval Architect / Dipl.-Ing. Schiffbau, selbstständig


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

Beiträge: 1320
Registriert: 23.08.2005

ANSYS
Bricscad
Windows XP Prof 32 bit SP 3
Windoof 7 Prof 64 bit
Dell Precision's
Bleistift
Radiergummi
Dreieck
Papier
Dubbel etc.
Taschenrechner
den eigenen Kopf
...

erstellt am: 06. Jun. 2018 19: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 Nur für SarahFEM 10 Unities + Antwort hilfreich

.... dann ersetz doch die *do Schleife durch ein gesteuertes Hochzählen.
Wenn z.B. die Laufvariable n kleiner ist als die Grenze  dann wieder hoch zum Label usw und n erhöht man selbst, durch z.B. n = n+1
(ja, ist ne Krücke ich weiß, aber funktioniert)

------------------
Gruß
Gerd
Hunde haben ein Herrchen oder Frauchen - Katzen haben Personal.

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

SarahFEM
Mitglied



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

Beiträge: 168
Registriert: 05.03.2015

erstellt am: 06. Jun. 2018 20: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

Hmm, aber wo mach ich dann die Abfrage? Ich weiß ja vorher noch nicht, wie viele Iterationen notwendig sind.

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

smittytomcat
Mitglied
Naval Architect / Dipl.-Ing. Schiffbau, selbstständig


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

Beiträge: 1320
Registriert: 23.08.2005

ANSYS
Bricscad
Windows XP Prof 32 bit SP 3
Windoof 7 Prof 64 bit
Dell Precision's
Bleistift
Radiergummi
Dreieck
Papier
Dubbel etc.
Taschenrechner
den eigenen Kopf
...

erstellt am: 06. Jun. 2018 20:07    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 SarahFEM 10 Unities + Antwort hilfreich

bau doch Dein Abbruchkriterium ans Ende - wenn es nicht erreicht wird schick ihn wieder hoch zum Label start

------------------
Gruß
Gerd
Hunde haben ein Herrchen oder Frauchen - Katzen haben Personal.

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

SarahFEM
Mitglied



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

Beiträge: 168
Registriert: 05.03.2015

erstellt am: 06. Jun. 2018 20: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

Okay, aber dann muss ich ja eine If-Abfrage machen um zu wissen, ob das Abbruchkrititerium erreicht ist. Dann häng ich aber in der If-Bedingung drin und kann nicht mit *go wieder zum Start zurück.

[Diese Nachricht wurde von SarahFEM am 06. Jun. 2018 editiert.]

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

smittytomcat
Mitglied
Naval Architect / Dipl.-Ing. Schiffbau, selbstständig


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

Beiträge: 1320
Registriert: 23.08.2005

ANSYS
Bricscad
Windows XP Prof 32 bit SP 3
Windoof 7 Prof 64 bit
Dell Precision's
Bleistift
Radiergummi
Dreieck
Papier
Dubbel etc.
Taschenrechner
den eigenen Kopf
...

erstellt am: 06. Jun. 2018 20:23    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 SarahFEM 10 Unities + Antwort hilfreich

nee, da *go funktioniert bei einer Konstruktion (eben nochmal geschaut  )
*if,abbr,lt,krit
*go :ende
*endif

*go *start


:ende      ! hier geht es dann weiter zu Sarahs Zufriedenheit

.........

------------------
Gruß
Gerd
Hunde haben ein Herrchen oder Frauchen - Katzen haben Personal.

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

SarahFEM
Mitglied



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

Beiträge: 168
Registriert: 05.03.2015

erstellt am: 06. Jun. 2018 21: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

funktioniert leider nicht, habe meine Schleifen umgeschrieben und im GUI läuft es einwandfrei aber im Batch bricht er wieder nicht ab 

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

smittytomcat
Mitglied
Naval Architect / Dipl.-Ing. Schiffbau, selbstständig


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

Beiträge: 1320
Registriert: 23.08.2005

ANSYS
Bricscad
Windows XP Prof 32 bit SP 3
Windoof 7 Prof 64 bit
Dell Precision's
Bleistift
Radiergummi
Dreieck
Papier
Dubbel etc.
Taschenrechner
den eigenen Kopf
...

erstellt am: 06. Jun. 2018 21:44    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 SarahFEM 10 Unities + Antwort hilfreich

schick doch mal den Text rüber

------------------
Gruß
Gerd
Hunde haben ein Herrchen oder Frauchen - Katzen haben Personal.

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

SarahFEM
Mitglied



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

Beiträge: 168
Registriert: 05.03.2015

erstellt am: 06. Jun. 2018 21: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

In meinem Programm geht es darum, den elektrischen Strom zu senken oder zu erhöhen, bis das Kühlwasser die richtige Temperatur erreicht hat.

:anfang

  *if,abs(Temp-T_Ruecklauf),le,0.1,then
  *go,:ende 
    *endif

                           
    Strom_aktuell=(Strom_hoch+Strom_niedrig)/2
    /output,Strom_aktuell,prm                                    !e
    /com,Strom_aktuell=%Strom_aktuell%
    /output       
                   
         
    parsav,all
               
 
    /input,Hauptschleife,inp    !Hier findet die SImulation statt       
 


    /input,Strom,prm   
    *get,Temp,plnsol,,max       
      *if,Temp,gt,T_Ruecklauf,then 
            Strom_hoch=strom_aktuell   
      *else
            Strom_niedrig=strom_aktuell
      *endif     

    allsel

    *go,:anfang
    :ende

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

smittytomcat
Mitglied
Naval Architect / Dipl.-Ing. Schiffbau, selbstständig


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

Beiträge: 1320
Registriert: 23.08.2005

ANSYS
Bricscad
Windows XP Prof 32 bit SP 3
Windoof 7 Prof 64 bit
Dell Precision's
Bleistift
Radiergummi
Dreieck
Papier
Dubbel etc.
Taschenrechner
den eigenen Kopf
...

erstellt am: 06. Jun. 2018 22:02    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 SarahFEM 10 Unities + Antwort hilfreich

... so, uff ich hoffe jetzt auf den geschätzten Meister Wosch.
Vielleicht noch eine Frage : führst Du die Simulation im Classic oder in der Workbench durch?
Im Moment fällt mir auch nichts mehr ein - sorry

------------------
Gruß
Gerd
Hunde haben ein Herrchen oder Frauchen - Katzen haben Personal.

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

SarahFEM
Mitglied



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

Beiträge: 168
Registriert: 05.03.2015

erstellt am: 06. Jun. 2018 22: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

Okay, trotzdem vielen Dank für die Hilfe  

Ich führe die Simulationen in Classic durch

[Diese Nachricht wurde von SarahFEM am 06. Jun. 2018 editiert.]

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

smittytomcat
Mitglied
Naval Architect / Dipl.-Ing. Schiffbau, selbstständig


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

Beiträge: 1320
Registriert: 23.08.2005

ANSYS
Bricscad
Windows XP Prof 32 bit SP 3
Windoof 7 Prof 64 bit
Dell Precision's
Bleistift
Radiergummi
Dreieck
Papier
Dubbel etc.
Taschenrechner
den eigenen Kopf
...

erstellt am: 06. Jun. 2018 22:13    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 SarahFEM 10 Unities + Antwort hilfreich

Gerne - bin auch gespannt auf die Lösung oder wo es klemmt

------------------
Gruß
Gerd
Hunde haben ein Herrchen oder Frauchen - Katzen haben Personal.

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

SarahFEM
Mitglied



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

Beiträge: 168
Registriert: 05.03.2015

erstellt am: 07. Jun. 2018 13:15    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

Gute Nachricht, Fehler nach stundenlanger Suche gefunden 

Und zwar habe ich mir die Wassertemperatur über die Zeile:  *get,Wasserauslauftemperatur_hoch,plnsol,,max  gezogen.

Dies funktionierte leider nicht im Batchmodus bzw. seltsamerweise nur in der ersten Iteration, daher hab ich nun die Temperatur über den Ort bestimmt. Vllt. hat jemand ja irgendwann einmal ein ähnliches Problem und dem hilft diese Lösung.

Insofern funktioniert das Beenden der Schleife über *if....exit einwandfrei, die Bedingung war nur nie erfüllt. Dies habe ich nicht festgestellt, da man in der out-Datei nur die erste Iteration angezeigt bekommt, welche ja gestimmt hat. Mit /gopr und damit der Anzeige aller Zeilen habe ich dann den Fehler gefunden :-)

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

smittytomcat
Mitglied
Naval Architect / Dipl.-Ing. Schiffbau, selbstständig


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

Beiträge: 1320
Registriert: 23.08.2005

ANSYS
Bricscad
Windows XP Prof 32 bit SP 3
Windoof 7 Prof 64 bit
Dell Precision's
Bleistift
Radiergummi
Dreieck
Papier
Dubbel etc.
Taschenrechner
den eigenen Kopf
...

erstellt am: 07. Jun. 2018 13:31    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 SarahFEM 10 Unities + Antwort hilfreich

hi, das ist ja eine super Nachricht.
Aber zu den Ergebnissen - kann es sein das nicht alle Substeps  abgespeichert werden und er damit keine Element-Results berechnet?

------------------
Gruß
Gerd
Hunde haben ein Herrchen oder Frauchen - Katzen haben Personal.

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

SarahFEM
Mitglied



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

Beiträge: 168
Registriert: 05.03.2015

erstellt am: 07. Jun. 2018 14: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

Hmm, eigentlich müsste er dies doch abgespeichert haben, zumal ich auch die Datei abgespeichert habe und er mir diese auch als Temperaturfeld angezeigt hatte. In dem GUI-Modus lief dies auch problemlos.

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

RAL
Mitglied
koffeinbetriebender Taschenrechner


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

Beiträge: 238
Registriert: 10.01.2009

Geodreieck, Bleistift, Rechenschieber, Kaffeemaschine und Würfel

erstellt am: 11. Jun. 2018 22:57    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 SarahFEM 10 Unities + Antwort hilfreich

moin.
vermute das Problem liegt beim PLNSOL wegen PLOT nodal solution.
Der batch-mode unterstützt manche Grafikgeschichten nicht. s. a. /UI

Was sagt denn der log-/error file bei PLNSOL? Falls du nicht an die Ergebnisse rankommst, ggfs via *GET oder *VGET auslesen und dann über min/max zu Fuss weiter. Ist wahrscheinlich brutal langsam. Vllt geht was über *GET, pRnsol damit könntest du den Grafikteil austricksen.

frohes schaffen
ral


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