| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Ansys |
Autor
|
Thema: Workbench Command (319 / mal gelesen)
|
derberndDD Mitglied
Beiträge: 8 Registriert: 17.08.2015
|
erstellt am: 24. Mrz. 2016 08:23 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe in einer mechanischen Analyse innerhalb der Workbench einen Skript definiert. Dieser generiert mir in Abhängigkeit des Zeitschrittes die Eingangsparameter für die Analysen. Ich möchte jedoch den Skript erweitern und benötige somit zwei geschachtelte Schleifen, welche die Parameter innerhalb meines Projektes beeinflussen. Zu jedem Zeitschritt wird ja der Skript aufgerufen. Ist es möglich eine Variable so zu definieren, dass der Inhalt an den nächsten Zeitschritt übergeben wird? Die innere Schleife soll dabei 10 mal ausgeführt werden und danach erst wieder die äußere Schleife. Für diese Operation benötige ich eine Zählerschleife, die je nach Zeitschritt erhöht wird. Nachdem die Variable den Wert 10 erreicht hat, würde ich diese per Skript auf den Wert 1 setzen. Danke für die Hilfe
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Simon1993 Mitglied Student
Beiträge: 8 Registriert: 16.02.2016
|
erstellt am: 24. Mrz. 2016 08:35 <-- editieren / zitieren --> Unities abgeben: Nur für derberndDD
Also wenn ich das richtig verstanden habe hast du eine *do-Schleife und möchtest jetzt da noch eine reinpacken? Code:
*do,i,1,n !äußere Schleife . . . x=0 *do,i2,1,10 !innere Schleife x=x+1 !bei jedem Schritt wird die Variable x um 1 hochgezählt *enndo !Jetzt hast du hier x=10 und kannst dieses wieder auf 1 setzten x=1 . . . *enndo
Das mit dem Zeitschritt und übergeben habe ich nicht ganz verstanden. Du berechnest quasi etwas mit dem Skript und möchtest das Ergebnis bei der nächsten Berechnung (Zeitschritt) wieder haben? Wie wäre es mit einer Textdatei, in die jedes mal die Variable gespeichert wird und dann beim nächsten Schritt ausgelesen wird? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
derberndDD Mitglied
Beiträge: 8 Registriert: 17.08.2015
|
erstellt am: 24. Mrz. 2016 08:51 <-- editieren / zitieren --> Unities abgeben:
Danke für die schnelle Antwort! Eine Textdatei ist eine Option, jedoch finde ich das nicht besonders elegant. Wahrscheinlich ist das aber das einfachste und ich könnte dies versuchen. Code:
/out,puffer.txt run=1 /out
Wie kann ich die Variable wieder einlesen? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Simon1993 Mitglied Student
Beiträge: 8 Registriert: 16.02.2016
|
erstellt am: 24. Mrz. 2016 09:03 <-- editieren / zitieren --> Unities abgeben: Nur für derberndDD
http://forum.cad.de/foren/ubb/Forum101/HTML/005044.shtmlalso irgendwie so: Code:
*set, Zwischenwert *dim, Zwischenwert, array, 1 *vread, Zwischenwert(1), puffer, txt,,, 1 (F10.2)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
derberndDD Mitglied
Beiträge: 8 Registriert: 17.08.2015
|
erstellt am: 24. Mrz. 2016 09:03 <-- editieren / zitieren --> Unities abgeben:
Hallo, mir ist gerade eine vielleicht bessere Lösung für mein Problem eingefallen. Ich könnte doch eine csv-Datei einlesen und den Inhalt in einem Arrays ablegen. Dies müsste ich im Zeitschritt 1 machen. Danach könnte ich anhand der Anzahl an Zeilen die Anzahl an zu berechnenden Zeitschritte festlegen. Für jeden Zeitschritt bräuchte ich danach nur noch die entsprechende Zeile aus dem Array nutzen. Mit dieser Option bin ich wahrscheinlich flexibler, da ich in Excel,... die Eingangsparameter relativ schnell abändern kann. Ich muss mir nur noch ein entsprechendes Tutorial suchen. Danke Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|