[{"data":1,"prerenderedAt":200},["ShallowReactive",2],{"$f2tono57u09u9i":3},{"slug":4,"publishedAt":5,"category":6,"title":7,"summary":8,"image":9,"imageAlt":14,"readingMinutes":15,"serviceId":16,"keywords":17,"imageCaption":23,"sections":24,"sources":187},"ai-agents-for-cfd","2026-10-19","guides","KI-Agenten für CFD: Der Fall lief. Stimmt die Antwort?","KI-Agenten für CFD schreiben und starten OpenFOAM-Fälle aus einem Satz. Die meisten laufen durch, weniger sind richtig. Was Benchmarks messen und wie man einen Fall prüft.",{"src":10,"thumbnail":11,"width":12,"height":13},"\u002Fassets\u002Fcfd-cases\u002Fexternal\u002Fimages\u002F08.webp","\u002Fbrand\u002Fstudies\u002Fexternal.svg",1448,1086,"DEEB-FLOW-Illustration von Geschwindigkeitskonturen um quer angeströmte Rohre",12,"review",[18,19,20,21,22],"KI-Agenten für CFD","LLM OpenFOAM","Foam-Agent","ChatCFD","CFD-Automatisierung mit KI","Konzeptillustration aus der DEEB-FLOW-Fallbibliothek. Sie ist kein Ergebnis dieses Artikels.",[25,32,39,81,89,101,120,143,160,169,180],{"id":26,"title":27,"paragraphs":28},"the-log-says-done","Das Protokoll meldet: fertig",[29,30,31],"Das Protokoll endet so, wie man es sich von einem Protokoll wünscht. Der Solver hat seine Endzeit erreicht, die Residuen sind gefallen, und der Agent meldet, dass die Simulation abgeschlossen ist. In einer Untersuchung von 2026, die Coding-Agenten an OpenFOAM testete, haben sich die Forschenden die Netze hinter solchen Rechnungen angesehen. In zwei von vier Fällen mit Umströmung eines Hindernisses, die mit einem der Modelle erstellt wurden, bildete das Netz das Hindernis nicht ab.","Man kann die Umströmung eines Zylinders ohne den Zylinder simulieren. Sie konvergiert wunderbar.","KI-Agenten für CFD können heute aus einem Satz Text einen OpenFOAM-Fall schreiben, ihn starten, die Fehler lesen und beheben, und bei Benchmark-Aufgaben laufen die meisten dieser Fälle bis zum Ende. Richtig sind weniger davon. Dieser Artikel trennt beides anhand der Zahlen der Forschenden selbst, zeigt die Fehler, die jede Protokollprüfung bestehen, und gibt eine Prüfroutine für jeden Fall, den Ihnen ein Agent übergibt. Ich habe keinen Agenten zu verkaufen und nichts gegen sie. Ich möchte nur, dass man sie prüft.",{"id":33,"title":34,"paragraphs":35},"what-agents-do","Was machen diese Agenten eigentlich?",[36,37,38],"Die Idee ist bei allen Systemen der letzten zwei Jahre dieselbe. Ein großes Sprachmodell erhält Ihre Anfrage. Es sucht ähnliche Tutorial-Fälle und Dokumentation heraus, schreibt die Falldateien, startet Vernetzer und Solver, liest das Protokoll und ändert die Dateien, wenn etwas fehlschlägt. Das wiederholt es, bis die Rechnung durchläuft oder es aufgibt.","Die bekannten Systeme unterscheiden sich darin, wie sie diese Schleife organisieren. Foam-Agent teilt die Arbeit auf mehrere Agenten auf, mit einer mehrstufigen Suche für verschiedene Teile einer Simulation, einer Dateierzeugung, die die Dictionaries untereinander konsistent hält, und einer Fehlerkorrekturschleife, die Fehlschläge ohne menschliches Zutun beheben soll. ChatCFD ergänzt strukturierte Wissensbasen, einen Fehlerlokalisierer und eine Komponente, die eine physikalische Zusammenfassung des Ergebnisses schreibt. Forschende haben außerdem allgemeine Coding-Agenten getestet, die nur eine auf OpenFOAM ausgerichtete Anweisung erhielten.","OpenFOAM ist das naheliegende Ziel. Ein Fall ist ein Ordner mit Text-Dictionaries, der Solver läuft von der Kommandozeile, und das Protokoll ist Text. Ein Sprachmodell kann jeden Teil davon lesen und schreiben, was man von einem Solver mit grafischer Oberfläche nicht sagen kann.",{"id":40,"title":41,"paragraphs":42},"success-rates","Was messen die Erfolgsquoten?",[43,44,75,76],"Hier lohnt es sich, langsamer zu werden.",{"table":45},{"head":46,"rows":51},[47,48,49,50],"System","Aufgabensatz","Genannte Zahl","Was als Erfolg galt",[52,57,62,67,70],[53,54,55,56],"Foam-Agent (2025)","110 Aufgaben, von den Autoren festgelegt","83,6 % mit Claude 3.5 Sonnet","Eine Erfolgsquote; die Kurzfassung definiert sie nicht",[58,59,60,61],"ChatCFD (2025, überarbeitet 2026)","315 Fälle, von den Autoren festgelegt","82,1 % erfolgreiche Ausführung","Die Rechnung läuft durch",[63,64,65,66],"ChatCFD, dieselbe Arbeit","Dieselben 315 Fälle","68,12 % physikalische Treue","Das Maß der Autoren dafür, ob das Ergebnis wissenschaftlich sinnvoll ist",[68,64,69,61],"Foam-Agent, gemessen von den ChatCFD-Autoren","42,3 % erfolgreiche Ausführung",[71,72,73,74],"Ein allgemeiner Coding-Agent (Xiao et al., 2026)","9 aus Tutorials abgeleitete Aufgaben","9 von 9 mit angepasster Anweisung abgeschlossen, 4 von 9 mit der Standardanweisung","Läuft bis zur Endzeit; 7 der 9 hatten gegenüber der Referenz einen normierten mittleren quadratischen Fehler unter 0,1","Drei Dinge fallen auf.",{"list":77},[78,79,80],"**Dasselbe Werkzeug schneidet auf verschiedenen Aufgabensätzen sehr unterschiedlich ab.** Foam-Agent meldet 83,6 % auf den Aufgaben seiner Autoren und erreicht 42,3 % auf denen von ChatCFD. Keine der beiden Zahlen ist falsch. Sie messen verschiedene Aufgaben, und eine Erfolgsquote sagt wenig, solange man die Aufgaben nicht kennt.","**Durchlaufen und richtig sein sind getrennte Noten.** Nach eigenen Angaben erreicht ChatCFD 82,1 % durchgelaufene Rechnungen und 68,12 % physikalische Treue. Wenn jeder treue Fall auch ein durchgelaufener ist, was wahrscheinlich scheint, dann war etwa jede sechste durchgelaufene Rechnung nach dem eigenen Maß der Autoren physikalisch nicht sinnvoll. Das ist meine Rechnung mit ihren Zahlen, und es ist die nützlichste Zahl in der Tabelle.","**Manche Maße prüfen tatsächlich die Antwort.** Die Kennzahlen, die Xiao und Kollegen angeben, enthalten einen Fehler gegenüber Referenzfällen; deshalb kann die letzte Zeile sagen, wie nah 7 der 9 Rechnungen der Referenz kamen, und nicht nur, ob sie durchliefen. Das ist die richtige Art von Maß. Darauf gut abzuschneiden ist schwerer, und deshalb sollte man immer fragen, zu welcher Art eine Zahl gehört.",{"id":82,"title":83,"paragraphs":84},"quiet-errors","Warum sind die schweren Fehler die leisen?",[85,86,87,88],"Die Untersuchung von Xiao und Kollegen an der Peking-Universität aus dem Jahr 2026 ist die offenste Arbeit in diesem kleinen Feld, und sie lohnt sich wegen ihrer Fehlschläge.","Bei tutorialähnlichen Fällen hat ein sorgfältig angeleiteter Agent jede Rechnung abgeschlossen und kam bei den meisten nah an die Referenz. Bei ebenen Umströmungen von Hindernissen, bei denen das Netz erstellt statt kopiert werden musste, änderte sich das. Mit einem Modell bildete das Netz in zwei von vier Fällen das Hindernis nicht ab. In einer anderen Rechnung verwendete der Agent ein Tutorial-Netz weiter, ohne die Geometrie anzupassen. Ein stärkeres Modell erzeugte bessere Netze, und ein Netztyp brauchte trotzdem wiederholte menschliche Anleitung. In vorläufigen Tests mit Hochgeschwindigkeitsverbrennung erreichte der Agent keine stabile Konfiguration, indem er Dateien anhand des Protokolls änderte.","Gut konnte der Agent Fehler beheben, die Meldungen erzeugen. Eine nicht unterstützte Einstellung, ein fehlender Eintrag, ein falsch geschriebenes Schlüsselwort: Das Protokoll nennt das Problem, und der Agent repariert es. Das Fazit der Autoren ist deutlich. Ein im Netz fehlendes Hindernis oder andere physikalische Probleme sind für Agenten schwer zu erkennen, und menschliche Aufsicht bleibt unverzichtbar.","Die Agenten sind also bei den Fehlern am besten, die sich ankündigen, und bei denen am schwächsten, die schweigen. Für Ingenieure ist das genau verkehrt herum, denn die Fehler, die sich ankündigen, waren nie die gefährlichen. Ein Solver, der abstürzt, hat Ihnen etwas mitgeteilt. Ein Solver, der auf der falschen Geometrie konvergiert, hat Ihnen nichts mitgeteilt, und das sehr überzeugend.",{"id":90,"title":91,"paragraphs":92},"error-families","Die leisen Fehler, nach Familien",[93,94],"Das sind die Fehlerklassen, die jede Protokollprüfung bestehen. Keine davon ist KI-spezifisch; Menschen machen sie alle. Der Unterschied ist, dass ein Agent, der aus Tutorials kopiert, sie in hohem Tempo macht, und dass ein Agent, der nur das Protokoll liest, keine Möglichkeit hat, sie zu bemerken.",{"list":95},[96,97,98,99,100],"**Geometrie.** Ein fehlendes oder falsch platziertes Element, oder ein in Millimetern skaliertes Netz, obwohl die Eckpunkte in Metern geschrieben wurden.","**Einheiten.** Inkompressible OpenFOAM-Solver arbeiten mit kinematischem Druck, also Druck geteilt durch Dichte, in m²\u002Fs². Für Kräfte braucht es dann eine Referenzdichte, die jemand angeben muss.","**Geerbte Einstellungen.** Viskosität, Turbulenzgrößen, Einlassprofile und Endzeit des Tutorials, von dem der Fall ausging, stehen gelassen, weil sich nichts beschwert hat.","**Plausible Randbedingungen, die für dieses Problem falsch sind.** Eine Wandfunktion auf einem Netz, dessen y+ niemand geprüft hat, oder eine Nullgradientenbedingung, wo ein fester Wert hingehört hätte.","**Eine zu kurze Rechnung.** Ein instationärer Fall, gestoppt, bevor die Strömung ihren periodischen Zustand erreicht hat, und dann gemittelt.",{"id":102,"title":103,"paragraphs":104},"worked-example","Ein Rechenbeispiel: zwei Fehler, die perfekt aussehen",[105,106,109,110,113,114,115,118,119],"**Fehler 1: der Millimeterzylinder.** Nehmen wir einen Standardbenchmark: die Umströmung eines Zylinders mit 0,1 m Durchmesser in einem Kanal, mit einer mittleren Einströmgeschwindigkeit von 1 m\u002Fs und einer kinematischen Viskosität von 0,001 m²\u002Fs. Die Reynolds-Zahl ist 100, und die Strömung löst Wirbel ab.",{"formula":107},[108],"Re = U D \u002F ν = 1 × 0.1 \u002F 0.001 = 100","Nehmen wir nun an, der Agent geht von einem Tutorial aus, dessen blockMesh-Dictionary alle Eckpunkte mit 0,001 skaliert, und schreibt die neuen Eckpunkte in Metern. Der Zylinder hat jetzt 0,1 mm Durchmesser.",{"formula":111},[112],"Re = 1 × 0.0001 \u002F 0.001 = 0.1","Das ist schleichende Strömung. Es gibt keine Wirbelablösung, der Solver konvergiert schnell und glatt, und das Residuendiagramm ist das schönste der Woche. Das Werkzeug checkMesh gibt die Begrenzungsbox des Gebiets aus, ein Blick auf seine Ausgabe genügt also, um das zu bemerken. Ein Agent, der das Protokoll liest, schaut dort nie hin, weil nichts schiefgegangen ist.","**Fehler 2: Kräfte 18 % zu niedrig und Beiwerte exakt richtig.** In einem inkompressiblen OpenFOAM-Fall multipliziert das Funktionsobjekt forces den kinematischen Druck mit einer Referenzdichte, rhoInf, um Pascal und dann Newton zu erhalten. Angenommen, das Fluid ist Luft mit 1,225 kg\u002Fm³, und der Agent lässt rhoInf wie in vielen Tutorials auf 1. Dann ist jede Kraft um denselben Faktor zu niedrig.",{"formula":116},[117],"1 \u002F 1.225 = 0.816","Das Funktionsobjekt für die Kraftbeiwerte teilt durch ½ ρ U² A mit demselben rhoInf, die Dichte kürzt sich also, und der Widerstandsbeiwert ist korrekt. Das Beiwertdiagramm sieht perfekt aus, und der Bericht, der den Widerstand in Newton angibt, ist falsch. Ich mag dieses Beispiel, weil es genau die Prüfung übersteht, die ein sorgfältiger Mensch zuerst machen würde: den Vergleich von C_D mit einem veröffentlichten Wert.","Beide Zahlenreihen sind hier illustrativ. Die Mechanismen sind echt.",{"id":121,"title":122,"paragraphs":123},"test-case","Ein Testfall mit bekannten Antworten",[124,125,126,141,142],"Wenn Ihr Team einen Agenten oder einen neuen Ingenieur bewerten will, geben Sie ihm ein Problem mit veröffentlichter Referenz. Der DFG-Benchmark für die laminare Zylinderumströmung, Fall 2D-2 von Schäfer und Turek (1996), ist eine gute Wahl: zweidimensional, günstig, instationär und auf mehrere Stellen dokumentiert.","Der Aufbau auf der FeatFlow-Benchmarkseite ist ein Kanal von 2,2 m Länge und 0,41 m Höhe mit einem Zylinder von 0,05 m Radius, zentriert bei (0,2; 0,2). Die Einströmung ist parabolisch mit einem Maximum von 1,5 m\u002Fs und einem Mittelwert von 1,0 m\u002Fs, die kinematische Viskosität beträgt 0,001 m²\u002Fs und die Dichte 1, was Re = 100 bezogen auf den Durchmesser ergibt. Die Referenzwerte auf dem feinsten Netz sind:",{"table":127},{"head":128,"rows":131},[129,130],"Größe","Referenzwert",[132,135,138],[133,134],"Maximaler Widerstandsbeiwert","3.2200",[136,137],"Maximaler Auftriebsbeiwert","0.9859",[139,140],"Strouhal-Zahl","0.30188","Lassen Sie den Agenten den Fall aus einer Beschreibung in Alltagssprache erstellen, ohne den Benchmark zu nennen, und vergleichen Sie. Eine Strouhal-Zahl nahe 0,30 und ein maximaler Widerstandsbeiwert nahe 3,2 auf einem vernünftigen Netz sprechen für einen soliden Aufbau. Überhaupt keine Schwingung bedeutet, dass etwas fehlt: der Zylinder, die Instationarität, die Auflösung oder die Endzeit.","Beachten Sie, dass der Zylinder leicht neben der Kanalmitte liegt, bei 0,2 m in einem 0,41 m hohen Kanal. Lassen Sie ihn dort. Ein Agent, der die Geometrie in eine symmetrische Lage „aufräumt“, hat den Benchmark verändert, und seine Antwort lässt sich nicht mehr mit der Referenz vergleichen.",{"id":144,"title":145,"paragraphs":146},"review-routine","Wie ich einen Fall prüfen würde, den ein Agent geschrieben hat",[147,148,159],"In dieser Reihenfolge. Das meiste dauert Minuten.",{"list":149,"ordered":158},[150,151,152,153,154,155,156,157],"**Schreiben Sie auf, was Sie erwarten, bevor Sie die Ergebnisse öffnen.** Die Größen, auf die es Ihnen ankommt, und einen groben Bereich für jede, aus einer Handrechnung, einer Korrelation oder einer früheren Studie.","**Schauen Sie auf das Netz vor der Strömung.** Starten Sie checkMesh, lesen Sie die Begrenzungsbox und öffnen Sie die Geometrie. Ist jedes Element da, in der richtigen Größe, an der richtigen Stelle?","**Vergleichen Sie den Fall mit dem Tutorial, aus dem er stammt.** Der Agent sagt Ihnen, was er geändert hat. Gefährlich sind die Zeilen, die er nicht angefasst hat: Viskosität, Turbulenzeingaben, Endzeit, Schreibintervall, Einstellungen der Funktionsobjekte.","**Prüfen Sie Einheiten und Referenzwerte.** Kinematischer oder statischer Druck, rhoInf, die Viskosität im Transport-Dictionary und die von Hand aus den Falldateien berechnete Reynolds-Zahl.","**Lesen Sie jede Randbedingungsdatei,** Feld für Feld, und fragen Sie, ob sie das physikalische Problem beschreibt. Das Protokoll kann das nicht beantworten.","**Prüfen Sie Konvergenz und Bilanzen.** Masse hinein gleich Masse heraus, und auch die Energie, wenn sie gelöst wird. Was konvergiert heißen sollte, erklärt der Artikel zur Konvergenz in diesem Blog.","**Vergleichen Sie mit etwas Unabhängigem.** Ein Benchmark, eine Korrelation, eine Messung oder ein früherer verifizierter Fall. Das ist der Unterschied zwischen Verifikation und Validierung, den ein eigener Artikel in diesem Blog erklärt.","**Wenn die Zahlen eine Entscheidung tragen sollen, prüfen Sie das Netz.** Eine Netzunabhängigkeitsstudie gilt für das Netz eines Agenten genauso wie für Ihres.",true,"Das dauert länger, als die Anweisung zu schreiben. Und viel kürzer, als den Fall zu schreiben.",{"id":161,"title":162,"paragraphs":163},"where-agents-help","Wo KI-Agenten für CFD heute helfen",[164,165,166,167,168],"Wo es schon einen verifizierten Fall gibt und der Agent darin Parameter ändert: eine Reihe von Einlassgeschwindigkeiten, eine Gruppe geometrischer Varianten eines validierten Entwurfs, ein Stapel Skripte zur Nachbearbeitung. Die gefährlichen Entscheidungen wurden einmal von einem Menschen getroffen, und der Agent wiederholt die sicheren.","Wo die Arbeit Routine ist: Dictionaries für Funktionsobjekte, Auswertelinien, Skripte, die einen Ordner mit Ergebnissen in eine Tabelle verwandeln.","Wo der Fehler laut ist: ein Fall, der nicht startet, ein Dictionary mit Syntaxfehler, ein fehlender Bibliothekseintrag. Hier sind die veröffentlichten Agenten schon gut und sparen echte Zeit.","Und in der Lehre, mit Vorsicht. Wer als Studierender in einer Minute einen vollständigen, laufenden Fall sieht, versteht die Struktur von OpenFOAM schneller. Derselben Person muss man beibringen, dem Fall zu misstrauen, und diese Lektion ist mehr wert als der Fall.","Wo ich sie nicht ohne vollständige Prüfung einsetzen würde: neue Physik, dreidimensionale industrielle Geometrie, reagierende oder mehrphasige Strömungen und alles ohne Referenz zum Vergleich. Die Untersuchung von 2026 nennt 3D- und industriell relevante Fälle als künftige Arbeit, und ihre Verbrennungstests haben sich nicht stabilisiert. So steht das Feld in diesem Jahr.",{"id":170,"title":171,"paragraphs":172},"before-adopting","Was ich vor der Einführung fragen würde",[173,174],"Wenn jemand einen KI-Agenten für den CFD-Aufbau in Ihrem Team vorschlägt, stellen Sie vier Fragen.",{"list":175},[176,177,178,179],"**Welches Erfolgsmaß steckt hinter der Zahl?** Eine durchgelaufene Rechnung und ein Ergebnis nahe an einer Referenz sind verschiedene Zahlen, manchmal weit auseinander.","**Auf wessen Fällen?** Ein Satz von Tutorial-Varianten sagt wenig über Ihre Geometrie.","**Was prüft der Agent, bevor er Erfolg meldet?** Wenn die Antwort das Protokoll ist, wissen Sie jetzt, was er übersieht.","**Wer prüft den Fall, und woran?** Wenn niemand, produziert der Agent sehr schnelle, sehr ordentliche Unsicherheit.",{"id":181,"title":182,"paragraphs":183},"short-version","Kurz gesagt",[184,185,186],"Agenten für CFD sind real und werden schnell besser. Sie beheben die Fehler, die Meldungen ausgeben, und übersehen die, die schweigen. Behandeln Sie den Fall eines Agenten wie den eines fähigen neuen Kollegen in seiner ersten Woche: dankbar für die gesparte Zeit, und jede Datei lesend, bevor irgendetwas das Haus verlässt.","Wenn Sie diesen Monat auf einer Konferenz sind, auf der KI auf jeder Folie steht, stellen Sie dem Vortragenden eine Frage: Wie viele der durchgelaufenen Fälle waren richtig?","Zur größeren Frage, ob trainierte Modelle die Simulation ersetzen werden, lesen Sie den Artikel „Wird KI die CFD ersetzen?“ in diesem Blog. Wenn Sie ein von einem Agenten erstelltes oder übernommenes Modell haben und es Datei für Datei prüfen lassen möchten, ist genau dafür eine Modellprüfung da.",[188,191,194,197],{"href":189,"label":190},"https:\u002F\u002Farxiv.org\u002Fhtml\u002F2602.11689v1","Xiao, Zhang, Xu, Mao, Li and Chen (2026), arXiv 2602.11689: a preliminary assessment of coding agents for CFD workflows",{"href":192,"label":193},"https:\u002F\u002Farxiv.org\u002Fabs\u002F2505.04997v1","Yue, Somasekharan, Cao and Pan (2025), arXiv 2505.04997: Foam-Agent, towards automated intelligent CFD workflows",{"href":195,"label":196},"https:\u002F\u002Farxiv.org\u002Fabs\u002F2506.02019","Fan et al. (2025, revised 2026), arXiv 2506.02019: ChatCFD, an LLM-driven agent for end-to-end CFD automation",{"href":198,"label":199},"https:\u002F\u002Fwwwold.mathematik.tu-dortmund.de\u002F~featflow\u002Fen\u002Fbenchmarks\u002Fcfdbenchmarking\u002Fflow\u002Fdfg_benchmark2_re100.html","FeatFlow, TU Dortmund: DFG flow around cylinder benchmark 2D-2, time-periodic case (Re = 100)",1792438041482]