Hot News:

Unser Angebot:

  Foren auf CAD.de
  OpenFOAM
  Zeitschritte unabhängig der writeControl im Controldict speichern

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
  
Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs
Autor Thema:  Zeitschritte unabhängig der writeControl im Controldict speichern (1240 / mal gelesen)
cfdtobi
Mitglied
Student


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

Beiträge: 67
Registriert: 16.07.2015

erstellt am: 29. Jun. 2016 14: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

Hallo zusammen,

gibt es in OF eine Möglichkeit den lezten komplett berechneten Zeitschritt unabhängig des im controlDict vorgegebenen writeIntervals zu speichern?

Hintergrund ist der, dass wenn ich mein writeIntervall auf große Intervalle anpasse, um nicht zu viele Daten zu erzeugen, meine wallTime aber zu einem ungeschickten Zeitpunkt abläuft, eventuell einiges an Rechenzeit verloren geht.

Bps. writeIntervall 1 Sekunde - wallTime beim Stand 1,99 Sek zu Ende, würde ja bedeuten dass 0.99 Sekunden verloren wären.

Lässt sich so etwas umsetzten?
Eventuell ala:

"Schreibe jeden Zeitschritt und lösche nach 3 Zeitschritten den ersten abgelegten" (oder so ähnlich)

Viele Grüße
Tobi

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

Shor-ty
Moderator





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

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 29. Jun. 2016 15: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 cfdtobi 10 Unities + Antwort hilfreich

Hi Tobi,

was ist -wallTime ? 

Und ja das ist möglich mit purge, siehe hier: OpenFOAM UserGuide

------------------
Viele Grüße,
Tobias Holzmann

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

cfdtobi
Mitglied
Student


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

Beiträge: 67
Registriert: 16.07.2015

erstellt am: 29. Jun. 2016 16:18    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

Hey Tobi,
danke für die schnelle Antwort - schaue ich mir gleich an.

Meinte mit wallTime die vorgegebene Laufzeit am cluster.

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

cfdtobi
Mitglied
Student


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

Beiträge: 67
Registriert: 16.07.2015

erstellt am: 29. Jun. 2016 16: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

Ok purgeWrite habe ich soweit verstanden...
Aber ist es mit dieser Funktion dann auch möglich gewissen Zeitschritte trotzdem zu behalten (über das vorgegebene writeIntervall)?

also prinzipiell über purge immer nur die letzten beiden Zeitschritte speichern, und zusätzlich jeden 50. Zeitschritt behalten?

Hoffe das ist halbwegs verständlich?!

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

Shor-ty
Moderator





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

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 29. Jun. 2016 17:05    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 cfdtobi 10 Unities + Antwort hilfreich

Nicht das ich wüsste, purge behält nur die angegebenen letzten Zeitschritte. purge = 5; letzten 5.
Wie du das lösen kannst ist aber sehr simple. Du kannst ja ein kleines bash-Skript schreiben, dass dir das überprüft.
Beispiel:

Code:

|-> 0
|-> 50
|-> 100
|-> 150
|-> 121.25
|-> 121.50
|-> 121.75

Dann sollte das Skript halt alle x Sekunden prüfen ob du 200 hast. In C++ würde ich das mit dem % Operator und regulären Ausdrücken machen. Damit FOAM dir den Zeitschritt nicht löscht, könntest du den dann beispielsweise temporär umbenennen zu time_200. Nach der Simulation muss man halt den Präfix wieder entfernen. Das wäre jetzt die von mir schnellste Lösung. Gibt sicherlich auch elegantere aber deswegen mag ich die bash; einfach, schnell und unkompliziert (außer bei Datenmanipulationen, aber dafür ist se ja nicht ausgelegt).

Hoff es hilft dir weiter.

Code:

pimpleFoam > log & saveData.sh &

------------------
Viele Grüße,
Tobias Holzmann

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

cfdtobi
Mitglied
Student


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

Beiträge: 67
Registriert: 16.07.2015

erstellt am: 30. Jun. 2016 13: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

ah OF kann das doch...
Habe das eben an nem cavity - icoFoam - Case getestet:
Aus dem controlDict:
Code:

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
17

18 application     icoFoam;

20 startFrom       startTime;

22 startTime       0;

24 stopAt          endTime;

26 endTime         0.5;

28 deltaT          0.001;

30 writeControl    adjustableRunTime;

32 writeInterval   0.003;

34 purgeWrite      2;

36 writeFormat     ascii;

38 writePrecision  6;

40 writeCompression on;

42 timeFormat      general;

44 timePrecision   6;

46 runTimeModifiable true;

48 secondaryWriteControl    adjustableRuntime;
49 secondaryWriteInterval   0.025;
50 secondaryPurgeWrite      0;

49 // ************************************************************************* //


liefert dann das Ergebnis, dass alle 0.025 Sekunden ein Zeitschritt fix stehen bleibt, die Zwischenschritte dann aber durch purge gelöscht werden.

Grüße
Tobi

[Diese Nachricht wurde von cfdtobi am 30. Jun. 2016 editiert.]

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

Shor-ty
Moderator





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

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 30. Jun. 2016 14:24    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 cfdtobi 10 Unities + Antwort hilfreich

Hey Tobi,

danke für die Rückmeldung. Das wusste ich noch nicht (wie soll man auch alle Funktionen auswendig können  ?). Eine Frage, wie bist DU drauf gekommen? Nachdem du das nun erwähnt hast, hab ich mir die Klasse Time mal näher angeschaut und dann sieht mans.

------------------
Viele Grüße,
Tobias Holzmann

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

cfdtobi
Mitglied
Student


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

Beiträge: 67
Registriert: 16.07.2015

erstellt am: 30. Jun. 2016 14: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

Haben hier nen fleißigen Praktikanten der das gefunden hat. ;-)

Wollte das, wie du vorher beschrieben hattest, über ein bash-skript regeln.

So ist das natürlich auch ganz praktisch.

Quelle:
http://openfoam.org/release/2-2-0/runtime-control/

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

Shor-ty
Moderator





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

Beiträge: 2466
Registriert: 27.08.2010

ESI-OpenCFD OpenFOAM v2312

erstellt am: 30. Jun. 2016 18: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 Nur für cfdtobi 10 Unities + Antwort hilfreich

Ich hätte auch gern nen Diplomant / Bachelorant oder Masterrand der mir einiges an Arbeit abnimmt ...

Nungut ,.. danke für die Info Tobi!

------------------
Viele Grüße,
Tobias Holzmann

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)2025 CAD.de | Impressum | Datenschutz