| | | Wie Sie mit 3D-Druck glattere Oberflächen erhalten, eine Pressemitteilung
|
Autor
|
Thema: Maximum number of iterations exceeded - buoyantPimpleFoam (7192 mal gelesen)
|
Franz Hengel Mitglied Wissenschaftlicher Projektmitarbeiter
Beiträge: 27 Registriert: 27.07.2010 Ubuntu 10.04 Ubuntu 10.10 OF 1.7.1 OF 1.7.x OF 1.6.x Fluent 6.3.26
|
erstellt am: 24. Sep. 2010 11:44 <-- editieren / zitieren --> Unities abgeben:
Hallo! Bin gerade dabei die Gitterunabhängigkeitsprüfung zu machen. Hab schon ein gröberes und ein mittleres Gitter erstellt. Jetzt treten Probleme mit dem feineren Gitter auf. Das Gitter ist ganz einfach, 2D und orthogonal. Ich verwende den buoyantPimpleFoam und lasse den parallel laufen. Der Fehler: Nach einer gewissen Zeit verringert OF die TimeSteps (ca. 10^-6) so weit, dass er schreibt: "die maximale Anzahl der Iteration sei überschritten". Hier ist der FehlerCode: Code: [2] [2] [2] --> FOAM FATAL ERROR: [2] Maximum number of iterations exceeded [2] [2] From function specieThermo<thermo>::T(scalar f, scalar T0, scalar (specieThermo<thermo>::*F)(const scalar) const, scalar (specieThermo<thermo>::*dFdT)(const scalar) const) const [2] in file /home/franz/OpenFOAM/OpenFOAM-1.7.1/src/thermophysicalModels/specie/lnInclude/specieThermoI.H at line 67. [2] FOAM parallel run aborting [2] [2] #0 Foam::error: rintStack(Foam::Ostream&) in "/home/franz/OpenFOAM/OpenFOAM-1.7.1/lib/linuxGccDPOpt/libOpenFOAM.so" [2] #1 Foam::error::abort() in "/home/franz/OpenFOAM/OpenFOAM-1.7.1/lib/linuxGccDPOpt/libOpenFOAM.so" [2] #2 Foam::hRhoThermo<Foam: ureMixture<Foam::constTransport<Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> > > > >::calculate() in "/home/franz/OpenFOAM/OpenFOAM-1.7.1/lib/linuxGccDPOpt/libbasicThermophysicalModels.so" [2] #3 Foam::hRhoThermo<Foam: ureMixture<Foam::constTransport<Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> > > > >::correct() in "/home/franz/OpenFOAM/OpenFOAM-1.7.1/lib/linuxGccDPOpt/libbasicThermophysicalModels.so" [2] #4 [2] in "/home/franz/OpenFOAM/OpenFOAM-1.7.1/applications/bin/linuxGccDPOpt/buoyantPimpleFoam" [2] #5 __libc_start_main in "/lib/tls/i686/cmov/libc.so.6" [2] #6 -------------------------------------------------------------------------- MPI_ABORT was invoked on rank 2 in communicator MPI_COMM_WORLD with errorcode 1.NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes. You may or may not see output from other processes, depending on exactly when Open MPI kills them. -------------------------------------------------------------------------- [2] in "/home/franz/OpenFOAM/OpenFOAM-1.7.1/applications/bin/linuxGccDPOpt/buoyantPimpleFoam" -------------------------------------------------------------------------- mpirun has exited due to process rank 2 with PID 17262 on node franz-desktop exiting without calling "finalize". This may have caused other processes in the application to be terminated by signals sent by mpirun (as reported here). --------------------------------------------------------------------------
Hier die log Datei: Code: Courant Number mean: 0.00014116 max: 0.418925 deltaT = 1.32485e-05 Time = 1.26136diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 DILUPBiCG: Solving for Ux, Initial residual = 0.0960509, Final residual = 8.12021e-07, No Iterations 30 DILUPBiCG: Solving for Uy, Initial residual = 0.0932637, Final residual = 9.11031e-07, No Iterations 30 DILUPBiCG: Solving for h, Initial residual = 0.00311494, Final residual = 6.71892e-07, No Iterations 23 DICPCG: Solving for p_rgh, Initial residual = 0.799219, Final residual = 0.00315167, No Iterations 1 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 time step continuity errors : sum local = 6.1857e-06, global = 2.29221e-06, cumulative = 4.95124e-06 DICPCG: Solving for p_rgh, Initial residual = 0.426235, Final residual = 3.92601e-10, No Iterations 6 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 time step continuity errors : sum local = 6.52342e-13, global = 7.30279e-14, cumulative = 4.95124e-06 DILUPBiCG: Solving for epsilon, Initial residual = 1.03849e-07, Final residual = 1.03849e-07, No Iterations 0 DILUPBiCG: Solving for k, Initial residual = 1.05303e-09, Final residual = 1.05303e-09, No Iterations 0 ExecutionTime = 214.19 s ClockTime = 253 s Courant Number mean: 0.000159986 max: 0.481727 deltaT = 1.3751e-05 Time = 1.26137 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 DILUPBiCG: Solving for Ux, Initial residual = 0.079022, Final residual = 8.47402e-07, No Iterations 30 DILUPBiCG: Solving for Uy, Initial residual = 0.0901351, Final residual = 8.51337e-07, No Iterations 29 DILUPBiCG: Solving for h, Initial residual = 0.00125202, Final residual = 4.85089e-07, No Iterations 24 DICPCG: Solving for p_rgh, Initial residual = 0.226298, Final residual = 0.0019385, No Iterations 1 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 time step continuity errors : sum local = 8.42471e-06, global = -7.12359e-06, cumulative = -2.17235e-06 DICPCG: Solving for p_rgh, Initial residual = 0.376255, Final residual = 5.50436e-10, No Iterations 8 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 time step continuity errors : sum local = 4.36164e-12, global = 1.4155e-12, cumulative = -2.17235e-06 DILUPBiCG: Solving for epsilon, Initial residual = 1.03851e-07, Final residual = 1.03851e-07, No Iterations 0 DILUPBiCG: Solving for k, Initial residual = 1.05327e-09, Final residual = 1.05327e-09, No Iterations 0 ExecutionTime = 215.25 s ClockTime = 254 s Courant Number mean: 0.000196146 max: 2.49239 deltaT = 2.75861e-06 Time = 1.26138 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 DILUPBiCG: Solving for Ux, Initial residual = 0.106542, Final residual = 8.81114e-07, No Iterations 21 DILUPBiCG: Solving for Uy, Initial residual = 0.100916, Final residual = 2.3472e-07, No Iterations 24 DILUPBiCG: Solving for h, Initial residual = 0.0510745, Final residual = 5.92315e-07, No Iterations 21
Normalerweise liegt der timeStep um die 2e-04. Das Gitter hat ca. 130.000 Zellen. Hab adjustTimeStep eingestellt, damit die Courant-Number einen maximalen Wert von 0.5 annimmt. Ist bei irgendjemanden das schon aufgetreten bzw. kann sich wer vorstellen wo der Fehler liegt? Danke LG Franz Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ulrich Heck Mitglied OpenFOAM Tool Entwicklung
Beiträge: 291 Registriert: 08.09.2003 CastNet (DHCAE Tools) OpenFOAM CalculiX
|
erstellt am: 24. Sep. 2010 17:54 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
Hallo Franz, so wie es aussieht werden k und eps-Gleichung nicht mehr gelöst Number of Iterations = 0, da die Anfangsresiduen unter der eingestellten Toleranz liegen. Das kann nicht gut gehen. Würde im Turb.-Modell den Fehler suchen (Toleranz verringern, Anfangswerte überdenken oder am besten mal mit k-omega sst versuchen). Gruss Ulrich Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Franz Hengel Mitglied Wissenschaftlicher Projektmitarbeiter
Beiträge: 27 Registriert: 27.07.2010 Ubuntu 10.04 Ubuntu 10.10 OF 1.7.1 OF 1.7.x OF 1.6.x Fluent 6.3.26
|
erstellt am: 24. Sep. 2010 23:04 <-- editieren / zitieren --> Unities abgeben:
|
ch.lucas Mitglied
Beiträge: 13 Registriert: 17.02.2010
|
erstellt am: 25. Sep. 2010 10:42 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
Hi, der Fehler liegt in den Thermophysical Properties. Der Newton solver der Funktion T der Klasse specieThermo findet innerhalb von 100 Iterationen keinen Lösung. Dies liegt daran, dass entweder dein H oder p Feld stark schwingt und lokal negative wird. In diesem Fall kann der Newton Solver dann auch keine Lösung finden, da es kein gibt. Versuche die Rechnung besser zu initialisieren, geringere Relaxationfaktoren, besseres Gitter ... Gruß Christian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Drakotoal Mitglied Ingenieur (Chemieingenieurwesen)
Beiträge: 8 Registriert: 21.09.2012 Linux Ubuntu 12.04 LTS OpenFOAM 2.1.1
|
erstellt am: 21. Sep. 2012 10:04 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
Hi, Hab schon mal ein paar Sachen in der specieThermo.C Datei verändert: größere maximale Anzahl von Iterationen (von 1000 festgelegt) und größeres "reltol" (von 1e-3 festgelegt). Doch kriege ich noch die gleiche Fehler. Hat irgendjemanden eine Idee ? LG Darwin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
Beiträge: 2466 Registriert: 27.08.2010
|
erstellt am: 21. Sep. 2012 11:43 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
|
Drakotoal Mitglied Ingenieur (Chemieingenieurwesen)
Beiträge: 8 Registriert: 21.09.2012 Linux Ubuntu 12.04 LTS OpenFOAM 2.1.1
|
erstellt am: 21. Sep. 2012 12:36 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
Hi, Ok. Ich habe das Netz (ca. 11000 tetraedrische Zellen) NETGEN generiert und die Geometrie wurde mit FreeCAD herstellt. Ich mache wieder die ganz normalle Einstellung für maxIter und tol. Hier ist die Fehler-Meldung: Code: --> FOAM FATAL ERROR: Maximum number of iterations exceeded From function specieThermo<Thermo>::T(scalar f, scalar T0, scalar (specieThermo<Thermo>::*F)(const scalar) const, scalar (specieThermo<Thermo>::*dFdT)(const scalar) const) const in file /home/opencfd/OpenFOAM/OpenFOAM-2.1.1/src/thermophysicalModels/specie/lnInclude/specieThermoI.H at line 69. FOAM aborting #0 Foam::error: rintStack(Foam::Ostream&) in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #1 Foam::error::abort() in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #2 Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> >::T(double, double, double (Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> >::*)(double) const, double (Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> >::*)(double) const, double (Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> >::*)(double) const) const in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #3 Foam::hPsiThermo<Foam: ureMixture<Foam::constTransport<Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> > > > >::calculate() in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #4 Foam::hPsiThermo<Foam: ureMixture<Foam::constTransport<Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> > > > >::correct() in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #5 in "/opt/openfoam211/platforms/linux64GccDPOpt/bin/rhoPimpleFoam" #6 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6" #7 in "/opt/openfoam211/platforms/linux64GccDPOpt/bin/rhoPimpleFoam" Abandon (core dumped)
Ich habe im Ein- und Auslass die Temperatur festgelegt und der Solver RhoPimpleFoam verwendet. Warum kriege ich ein Fehler mit T ? Eigentlich möchte ich nur das Geschwindigkeitsprofil ansehen: d.h. konstanten Druck und Temperatur.LG Darwin Bearbeitet von Shor-ty: Code-Tags eingefügt Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
Beiträge: 2466 Registriert: 27.08.2010
|
erstellt am: 21. Sep. 2012 13:51 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
|
Drakotoal Mitglied Ingenieur (Chemieingenieurwesen)
Beiträge: 8 Registriert: 21.09.2012 Linux Ubuntu 12.04 LTS OpenFOAM 2.1.1
|
erstellt am: 21. Sep. 2012 14:25 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
Hi, Ne, die Simulation stürzt sofort ab. Aber in meinen Fall sind die RB im Ein- und Auslass schon bekannt: ich muss das Gas-Netzwerk mit einer konstanten Druck (32 bar) einer Anlage modellieren: die Druck ist festgelegt. Und die Massenströmen sind auch bekannt im Ein- und Auslass. LG Darwin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Drakotoal Mitglied Ingenieur (Chemieingenieurwesen)
Beiträge: 8 Registriert: 21.09.2012 Linux Ubuntu 12.04 LTS OpenFOAM 2.1.1
|
erstellt am: 21. Sep. 2012 14:40 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
Hi, Hab ich anderen RB eingestellt. Jetzt kriege ich jetzt die Fehler (Anzahl der Iteration sei überschritten). Zuerst vielen Dank . Du hast recht; es scheint dass, mein Problem in der Einstellung meinen RB liegt. Ich muss jetzt noch mal nachdenken. LG Darwin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Drakotoal Mitglied Ingenieur (Chemieingenieurwesen)
Beiträge: 8 Registriert: 21.09.2012 Linux Ubuntu 12.04 LTS OpenFOAM 2.1.1
|
erstellt am: 21. Sep. 2012 15:28 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
|
Shor-ty Moderator
Beiträge: 2466 Registriert: 27.08.2010
|
erstellt am: 21. Sep. 2012 18:15 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
Zitat: Original erstellt von Drakotoal: Hi,Ne, die Simulation stürzt sofort ab.
Dann ist es ein RB Problem (hast du ja schon gelöst).
Zitat: Original erstellt von Drakotoal:
die Druck ist festgelegt. Und die Massenströmen sind auch bekannt im Ein- und Auslass. Darwin
Soweit ich mich entsinnen kann sind in der Strömungsmechanik keine Massendefekte vorhanden (vgl. Kernfusion/Kernspaltung), sodass der Massenstrom am Inlet = Outlet sein muss. Was du vorn reinschiebst kommt hinten raus. D.h. Massenstromvorgabe am Inlet reicht, weil am Outlet sich der gleiche einstellen muss (Konti-Gleichung). Dein Druckfeld ist bekannt und damit ein FixedValue am Outlet. Das mit der Temperatur T ist auch logisch. Wenn du T am Inlet vorgibst, dann wird das Gas mit der Temperatur durch deine Geometrie strömen. Hast du adiabate Verhältnisse ändert sich dann -- unter der Voraussetung geringfügiger Kompressibilität -- der Wert deiner Temperatur nicht nennenswert. Grüße und schönes Weekend. ------------------ Grüße Tobias H.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Drakotoal Mitglied Ingenieur (Chemieingenieurwesen)
Beiträge: 8 Registriert: 21.09.2012 Linux Ubuntu 12.04 LTS OpenFOAM 2.1.1
|
erstellt am: 24. Sep. 2012 11:18 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
Hi, Hab andere RB eingestellt. Hier ist meine Geometrie (Zuerst hab ich den grünen Teil simuliert). Aber die Simulation stürzt irgendwann (im 0.032 s) ab: d.h. Es rechnet aber irgendwann kriege ich wieder die Fehler-Meldung: Code: --> FOAM FATAL ERROR: Maximum number of iterations exceeded From function specieThermo<Thermo>::T(scalar f, scalar T0, scalar (specieThermo<Thermo>::*F)(const scalar) const, scalar (specieThermo<Thermo>::*dFdT)(const scalar) const) const in file /home/opencfd/OpenFOAM/OpenFOAM-2.1.1/src/thermophysicalModels/specie/lnInclude/specieThermoI.H at line 69. FOAM aborting #0 Foam::error: rintStack(Foam::Ostream&) in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #1 Foam::error::abort() in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #2 Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> >::T(double, double, double (Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> >::*)(double) const, double (Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> >::*)(double) const, double (Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> >::*)(double) const) const in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #3 Foam::hPsiThermo<Foam: ureMixture<Foam::constTransport<Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> > > > >::calculate() in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #4 Foam::hPsiThermo<Foam: ureMixture<Foam::constTransport<Foam::specieThermo<Foam::hConstThermo<Foam: erfectGas> > > > >::correct() in "/opt/openfoam211/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #5 in "/opt/openfoam211/platforms/linux64GccDPOpt/bin/rhoPimpleFoam" #6 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6" #7 in "/opt/openfoam211/platforms/linux64GccDPOpt/bin/rhoPimpleFoam" Abandon (core dumped)
N.B: Solver rhoPimpleFoam + Turbulence Model oneEqEddy LG Darwin Bearbeitet von Shor-ty: Code-Tags eingefügt Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
Beiträge: 2466 Registriert: 27.08.2010
|
erstellt am: 24. Sep. 2012 13:07 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
Hi Darwin, wieso rechnest du mit einem 1-Gleichungsmodell (nur als Interesse) und nicht mit einem 2-Gleichungsmodell? Der Fehler tritt auf, da dir irgendein Wert davonläuft. Schon mal die Zeitschritte angeschaut? Ich wette du hast irgendwo ein Netzproblem, bzw. eine Zelle bei der sich die Gradienten aufschaukeln. Oder immer noch ein RB Problem checkMesh schon angewendet?
------------------ Grüße Tobias H. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Shor-ty Moderator
Beiträge: 2466 Registriert: 27.08.2010 ESI-OpenCFD OpenFOAM v2312
|
erstellt am: 24. Sep. 2012 13:09 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
Zitat: Original erstellt von Drakotoal: Hi,Ok. Ich habe das Netz (ca. 11000 tetraedrische Zellen) NETGEN Darwin
Da fällt mir noch auf, dass das sehr sehr wenig Zellen sind. Ich weiß nicht wie groß deine Geometrie ist, jedoch kann es auch daran liegen, dass du ein "zu" grobes Netz verwendest.
------------------ Grüße Tobias H. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Drakotoal Mitglied Ingenieur (Chemieingenieurwesen)
Beiträge: 8 Registriert: 21.09.2012 Linux Ubuntu 12.04 LTS OpenFOAM 2.1.1
|
erstellt am: 24. Sep. 2012 13:46 <-- editieren / zitieren --> Unities abgeben: Nur für Franz Hengel
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|