{"id":812,"date":"2026-07-30T12:22:33","date_gmt":"2026-07-30T12:22:33","guid":{"rendered":"https:\/\/matforge.org\/?p=812","raw":"https:\/\/matforge.org\/?p=812"},"modified":"2026-07-30T12:22:33","modified_gmt":"2026-07-30T12:22:33","slug":"validation-and-verification-for-pde-simulations-practical-framework","status":"publish","type":"post","link":"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/","title":{"rendered":"Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen","raw":"Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen"},"content":{"rendered":"<span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Reading Time: <\/span> <span class=\"rt-time\"> 9<\/span> <span class=\"rt-label rt-postfix\">minutes<\/span><\/span><p>Validierung und Verifizierung (V&amp;V) sind wesentliche Qualit\u00e4tssicherungsprozesse f\u00fcr PDE-Simulationen. Die Verifizierung stellt sicher, dass Ihr Code die Gleichungen richtig l\u00f6st (das L\u00f6sen der Gleichungen richtig). Die Validierung best\u00e4tigt, dass Ihr Modell die reale Physik (L\u00f6sen der richtigen Gleichungen) genau darstellt. Ein robustes V&amp;V-Framework kombiniert die Code-Verifizierung \u00fcber Methoden wie die Methode der hergestellten L\u00f6sungen, die L\u00f6sungspr\u00fcfung mit Netzkonvergenzstudien und die Validierung gegen\u00fcber Benchmark-Problemen oder experimentellen Daten. Die Einhaltung etablierter Standards wie ASME V&amp; V 10\/20 tr\u00e4gt zur Gew\u00e4hrleistung der Glaubw\u00fcrdigkeit und Reproduzierbarkeit im wissenschaftlichen Rechnen bei.<\/p>\n<h2>Vorstellung<\/h2>\n<p>Partielle Differentialgleichungssimulationen (PDE) untermauern unz\u00e4hlige wissenschaftliche und technische Entscheidungen &#8211; von der Materialwissenschaft bis zur Str\u00f6mungsdynamik. Eine Simulation ist jedoch nur so vertrauensw\u00fcrdig wie die dahinter liegenden Verifizierungs- und Validierungs-Prozesse. Die Konsequenzen einer unzureichenden V &amp; V k\u00f6nnen schwerwiegend sein: falsche Forschungsergebnisse, fehlerhafte technische Konstruktionen und verschwendete Rechenressourcen.<\/p>\n<p>Dieser Leitfaden bietet ein praktisches, implementierungsorientiertes Framework f\u00fcr V &amp; V in PDE-Simulationen. Wir werden den theoretischen Jargon durchschneiden und Ihnen umsetzbare Verfahren geben, die Sie auf Ihre endlichen Volumenl\u00f6ser (wie FIPY), Finite-Elemente-Codes oder jede PDE-basierte Simulationssoftware anwenden k\u00f6nnen.<\/p>\n<h2>Verstehen der V &amp; V-Unterscheidung<\/h2>\n<p>Vor dem Eintauchen in Verfahren ist es wichtig, den grundlegenden Unterschied zwischen Verifizierung und Validierung zu verstehen. Diese Unterscheidung wird oft verwechselt, bildet aber die Grundlage jedes glaubw\u00fcrdigen V &amp; V-Programms.<\/p>\n<h3>Verifizierung: L\u00f6sen wir die Gleichungen richtig?<\/h3>\n<p>Die \u00dcberpr\u00fcfung fragt: <strong> &#8222;Haben wir das Modell richtig aufgebaut?&#8220;<\/strong> Es ist ein mathematischer und Codequalit\u00e4tsprozess, der best\u00e4tigt:<\/p>\n<ul>\n<li>Die numerische Implementierung l\u00f6st die ma\u00dfgeblichen PDEs korrekt<\/li>\n<li>Diskretisierungsfehler werden richtig gesch\u00e4tzt und kontrolliert<\/li>\n<li>Iterative L\u00f6ser konvergieren zur richtigen L\u00f6sung<\/li>\n<li>Programmierfehler und Logikfehler werden eliminiert<\/li>\n<\/ul>\n<p>Bei der Verifizierung geht es um <strong>Interne Konsistenz<\/strong> &#8211; das Verhalten des Codes verh\u00e4lt sich genau so, wie es das mathematische Modell vorschreibt, unabh\u00e4ngig davon, ob dieses Modell physikalisch korrekt ist.<\/p>\n<h3>Validierung: L\u00f6sen wir die richtigen Gleichungen?<\/h3>\n<p>Validierung fragt: <strong> &#8222;Haben wir das richtige Modell erstellt?&#8220;<\/strong> Es wird bewertet, ob die Simulation das reale physikalische System f\u00fcr den vorgesehenen Zweck genau darstellt:<\/p>\n<ul>\n<li>Stimmen die Modellausgaben mit experimentellen Beobachtungen innerhalb der Unsicherheitsgrenzen \u00fcberein?<\/li>\n<li>Sind die gew\u00e4hlten Physik und Randbedingungen angemessen?<\/li>\n<li>Tut das Modell \u00fcber den erwarteten Betriebsbereich zuverl\u00e4ssig?<\/li>\n<\/ul>\n<p>Bei der Validierung geht es um <strong>Externe Genauigkeit<\/strong> &#8211; das Vertrauen, dass dem Modell bei der Entscheidungsfindung vertraut werden kann.<\/p>\n<p><strong>Key Takeaway<\/strong>: Die \u00dcberpr\u00fcfung muss vor der Validierung liegen. Sie k\u00f6nnen einen nicht \u00fcberpr\u00fcften Code nicht validieren. Dies validiert lediglich die fehlerhafte Implementierung.<\/p>\n<h2>Code\u00fcberpr\u00fcfung: Der Nachweis Ihrer Implementierung ist korrekt<\/h2>\n<p>Die Code\u00fcberpr\u00fcfung ist der rigorose Prozess, um zu demonstrieren, dass Ihr PDE-Solver das zugrunde liegende mathematische Modell korrekt implementiert. In der Praxis werden zwei Hauptans\u00e4tze verwendet.<\/p>\n<h3>1. Methode der hergestellten L\u00f6sungen (MMS)<\/h3>\n<p>Die Methode der hergestellten L\u00f6sungen ist der Goldstandard f\u00fcr die Codeverifizierung in der Computerwissenschaft. Es bietet eine systematische, mathematisch strenge M\u00f6glichkeit, Ihren Solver zu testen, ohne sich auf bereits vorhandene analytische L\u00f6sungen zu verlassen, die m\u00f6glicherweise nicht Ihren spezifischen Randbedingungen oder Gleichungsformen entsprechen.<\/p>\n<h4>Wie MMS funktioniert<\/h4>\n<ol>\n<li><strong>W\u00e4hlen Sie eine analytische L\u00f6sung<\/strong> (u_m(mathbf{x}) ), die glatt und ausreichend differenzierbar ist (z. ))<\/li>\n<li><strong>substitute<\/strong> (u_m ) in Ihren regierenden PDE-Operator (mathcal{L}), um den erforderlichen Quellbegriff (s) zu berechnen:<br \/> [<br \/> s(mathbf{x}, t) = mathcal{L}(U_M)<br \/> ]<\/li>\n<li><strong>Simulation durchf\u00fchren<\/strong> mit dem hergestellten Quellbegriff( s ) und geeigneten Grenz-\/Anfangsbedingungen abgeleitet von ( u_m )<\/li>\n<li><strong>Vergleiche<\/strong> Die numerische L\u00f6sung (U_H) zur exakt hergestellten L\u00f6sung ( U_M )<\/li>\n<li><strong>Maschenverfeinerungsstudien<\/strong>, um zu \u00fcberpr\u00fcfen, ob die beobachtete Genauigkeit der theoretischen Reihenfolge Ihres Diskretisierungsschemas entspricht<\/li>\n<\/ol>\n<p>Die Kraft von MMS liegt in seiner Universalit\u00e4t: Sie k\u00f6nnen jeden Code f\u00fcr jeden PDE \u00fcberpr\u00fcfen, unabh\u00e4ngig von den Randbedingungen, da Sie eine kompatible L\u00f6sung auf Anfrage herstellen.<\/p>\n<p><strong>Practical tip<\/strong>: Verwenden Sie symbolische Berechnungstools (Symy, Mathematica, Maple), um analytische Derivate zu berechnen, die f\u00fcr (S) erforderlich sind, insbesondere f\u00fcr komplexe nichtlineare PDEs. Automatisieren Sie den Prozess mit Skripten, um Testf\u00e4lle systematisch zu generieren.<\/p>\n<h4>MMS-Ressourcen<\/h4>\n<p>F\u00fcr detaillierte MMS-Verfahren und Beispiele:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.osti.gov\/biblio\/759450\">Code-\u00dcberpr\u00fcfung nach der Methode der hergestellten L\u00f6sungen (OSTI) <\/a> &#8211; Grundlagenpapier von Salari &amp; Knupp<\/li>\n<li><a href=\"https:\/\/www.comsol.com\/blogs\/verify-simulations-with-the-method-of-manufactured-solutions\">COMSOL-Blog: Simulationen mit MMS \u00fcberpr\u00fcfen<\/a> \u2013 praktische Implementierungshandbuch<\/li>\n<li><a href=\"https:\/\/pylith.readthedocs.io\/en\/v4.2.0\/developer\/testing\/mmstests.html\">Pylith MMS-Dokumentation<\/a> \u2013 Beispiele f\u00fcr Geophysik-Codes<\/li>\n<\/ul>\n<h3>2. Reihenfolge der Genauigkeitspr\u00fcfung<\/h3>\n<p>Die Reihenfolge der Genauigkeitstests \u00fcberpr\u00fcft, ob Ihr Code die erwartete Konvergenzrate unter Netzverfeinerung erreicht. Bei einem Finite-Volumen-Schema zweiter Ordnung sollte die Halbierung des Netzabstands den Fehler um ungef\u00e4hr den Faktor 4 verringern.<\/p>\n<h4>Verfahren<\/h4>\n<ol>\n<li>W\u00e4hlen Sie ein Problem mit einer bekannten exakten L\u00f6sung (kann aus MMS- oder Lehrbuch-Benchmarks stammen)<\/li>\n<li>L\u00f6sen Sie eine Folge von zunehmend verfeinerten Netzen (z. B. 32 \u00d7 32, 64 \u00d7 64, 128 \u00d7 128)<\/li>\n<li>Berechnen Sie die Fehlernorm (L1, L2 oder L\u221e) auf jeder Verfeinerungsebene<\/li>\n<li>Plotfehler vs. Mesh-Gr\u00f6\u00dfe in einem Log-Log-Plot und berechnen Sie die beobachtete Reihenfolge:<br \/> [<br \/> text{order} = frac{log(e_{coarse}\/e_{fine})}{log(h_{coarse}\/h_{fine})}<br \/>]<\/li>\n<li>Best\u00e4tigen Sie, dass die beobachtete Reihenfolge der theoretischen Diskretisierungsreihenfolge innerhalb der Toleranz entspricht (\u00b1 0,1\u20130,2 aufgrund von Grenzeffekten, Maschinengenauigkeit)<\/li>\n<\/ol>\n<p>Dies ist eine <strong>minimale Anforderung<\/strong> f\u00fcr jeden PDE-Code, der Korrektheit beansprucht.<\/p>\n<p><strong>Common Pitfall<\/strong>: Zu grobe Maschen oder zu einfache Probleme, die nicht alle Begriffe in der PDE aus\u00fcben. Testen Sie komplexe, realistische Szenarien, einschlie\u00dflich Nichtlinearit\u00e4ten, Diskontinuit\u00e4ten und gekoppelter Physik.<\/p>\n<h3>3. Cross-Code-Vergleich (Vorsicht)<\/h3>\n<p>Das Vergleichen von Ergebnissen zwischen zwei verschiedenen Codes kann n\u00fctzlich sein, aber <strong>Ersatz ist kein Ersatz f\u00fcr die \u00dcberpr\u00fcfung gegen analytische L\u00f6sungen<\/strong>. Beide Codes k\u00f6nnten den gleichen systematischen Fehler enthalten. Verwenden Sie den Cross-Code-Vergleich nur als Erg\u00e4nzungspr\u00fcfung nach ordnungsgem\u00e4\u00dfer MMS- oder Auftragspr\u00fcfung.<\/p>\n<h2>L\u00f6sungs\u00fcberpr\u00fcfung: Quantifizierung numerischer Fehler<\/h2>\n<p>Sogar ein verifizierter Code erzeugt numerische Approximationen mit inh\u00e4renten Fehlern. Die L\u00f6sungs\u00fcberpr\u00fcfung sch\u00e4tzt diese Fehler f\u00fcr einen bestimmten Simulationslauf.<\/p>\n<h3>Diskretisierungsfehlersch\u00e4tzung<\/h3>\n<p>Die Hauptquellen f\u00fcr numerische Fehler in PDE-Simulationen sind:<\/p>\n<ul>\n<li><strong>Diskretisierungsfehler<\/strong> (Mesh\/Grid-Aufl\u00f6sung)<\/li>\n<li><strong>Iterationsfehler<\/strong> (Solver-Konvergenztoleranzen)<\/li>\n<li><strong>Abrundenfehler<\/strong> (Gleitkommagenauigkeit)<\/li>\n<\/ul>\n<p>Diskretisierungsfehler sind typischerweise dominant. Richardson-Extrapolation kann eine Fehlersch\u00e4tzung liefern, indem die Ergebnisse von zwei Netzen verwendet werden:<\/p>\n<p>[<br \/> varepsilon_{richardson} = frac{u_{h_1} &#8211; u_{h_2}}{r^{p} &#8211; 1}<br \/> ]<\/p>\n<p>wobei (r) das Verfeinerungsverh\u00e4ltnis und (p) die beobachtete Genauigkeitsreihenfolge ist.<\/p>\n<h3>Konvergenzkriterien<\/h3>\n<p>Stellen Sie immer sicher, dass iterative Solver (z. B. Newton-Methode, lineare Systeml\u00f6ser) auf die gew\u00fcnschte Toleranz konvergiert sind, bevor Sie den Ergebnissen vertrauen. \u00dcberpr\u00fcfen Sie:<\/p>\n<ul>\n<li>Restreduktion um mehrere Gr\u00f6\u00dfenordnungen<\/li>\n<li>L\u00f6sungs\u00e4nderungen zwischen Iterationen unter dem Schwellenwert<\/li>\n<li>Konservierungsfehler (bei Finite-Volumen-Methoden)<\/li>\n<\/ul>\n<p><strong>Warnung<\/strong>: &#8222;konvergiert&#8220; bedeutet nicht &#8222;korrigieren&#8220;. Ein iterativer Solver kann zu einer falschen L\u00f6sung konvergieren, wenn die anf\u00e4ngliche Vermutung schlecht oder das Problem schlecht konditioniert ist. Aus diesem Grund sind sowohl Verifizierung als auch Validierung notwendig.<\/p>\n<h2>Validierung: Vergleich mit der Realit\u00e4t<\/h2>\n<p>Die Validierung beurteilt, ob Ihr Simulationsmodell f\u00fcr den beabsichtigten Zweck ausreichend genau ist, indem Vorhersagen mit unabh\u00e4ngigen experimentellen Daten verglichen werden.<\/p>\n<h3>Benchmark-Probleme<\/h3>\n<p>Benchmark-Probleme sind standardisierte Testf\u00e4lle mit gut charakterisierten experimentellen oder High-Fidelity-Referenzdaten. Sie dienen als objektive Validierungsziele.<\/p>\n<h4>Common PDE Benchmark Categories<\/h4>\n<ul>\n<li><strong>Fluiddynamik<\/strong>: Vorbei an einem Zylinder (RE=20\u20131000), Deckel-gesteuerter Hohlraum, Rayleigh-B\u00e9nard-Konvektion<\/li>\n<li><strong>Transportgleichungen<\/strong>: 1D-Advektionsdiffusion mit bekannten analytischen L\u00f6sungen<\/li>\n<li><strong>Phasenfeld<\/strong>: Allen-Cahn, Cahn-Hilliard-Muster gegen Mikroskopie<\/li>\n<li><strong>Diffusionsreaktion<\/strong>: Fisher-KPP-Wellengeschwindigkeitsvalidierung<\/li>\n<\/ul>\n<p>Repositories wie <a href=\"https:\/\/github.com\/pdebench\/PDEBench\"> pdebench <\/a> bieten standardisierte Datens\u00e4tze zum Vergleichen von maschinellem Lernen und numerischen Methoden.<\/p>\n<h3>Best Practices f\u00fcr die Validierung<\/h3>\n<ol>\n<li><strong>Unabh\u00e4ngige Daten verwenden<\/strong>: Niemals mit demselben Datensatz validieren, der f\u00fcr die Kalibrierung oder Code\u00fcberpr\u00fcfung verwendet wird<\/li>\n<li><strong>Unsicherheit quantifizieren<\/strong>: experimentelle Messungen haben Unsicherheit; Modellvorhersagen haben numerische Fehler. Vergleichen Sie innerhalb der kombinierten Unsicherheitsgrenzen<\/li>\n<li><strong>Mehrere Validierungspunkte<\/strong>: Testen Sie \u00fcber den Parameterraum, nicht nur eine Betriebsbedingung<\/li>\n<li><strong>Dokumentenvalidierungsbasis<\/strong>: Erfassen Sie, welche Probleme verwendet wurden, Ergebnisse und Pass-\/Fail-Kriterien<\/li>\n<\/ol>\n<p><strong>Kritischer Fehler<\/strong>: Verwenden von experimentellen Daten, um Modellparameter (Kalibrierung) zu optimieren und dann die Validierung mit denselben Daten zu beanspruchen. Das ist kreisf\u00f6rmige Argumentation. Reservieren Sie einen separaten Validierungsdatensatz.<\/p>\n<h3>Wenn experimentelle Daten nicht verf\u00fcgbar sind<\/h3>\n<p>F\u00fcr viele Forschungsprobleme sind qualitativ hochwertige experimentelle Daten knapp. In solchen F\u00e4llen:<\/p>\n<ul>\n<li>Verwenden Sie High-Fidelity-Referenzl\u00f6sungen (z. B. DNS f\u00fcr turbulente Str\u00f6mungen), falls verf\u00fcgbar<\/li>\n<li>Vergleichen Sie mit analytischen L\u00f6sungen f\u00fcr vereinfachte F\u00e4lle<\/li>\n<li>F\u00fchren Sie einen Cross-Code-Vergleich mit mehreren unabh\u00e4ngigen, gut verifizierten Codes durch<\/li>\n<li>Seien Sie transparent \u00fcber die Einschr\u00e4nkung und charakterisieren Sie die pr\u00e4diktive Unsicherheit durch Sensitivit\u00e4tsanalyse<\/li>\n<\/ul>\n<h2>Standards und Frameworks<\/h2>\n<p>Die \u00dcbernahme etablierter Standards verleiht Ihrem V&amp;V-Prozess Glaubw\u00fcrdigkeit und stellt die Vollst\u00e4ndigkeit sicher.<\/p>\n<h3>ASME V &amp; V-Standards<\/h3>\n<p>Die American Society of Mechanical Engineers (ASME) hat eine Reihe von Standards f\u00fcr die Glaubw\u00fcrdigkeit der Computermodellierung entwickelt:<\/p>\n<ul>\n<li><strong><a href=\"https:\/\/www.asme.org\/codes-standards\/find-codes-standards\/standard-for-verification-and-validation-in-computational-solid-mechanics\"> ASME. V &amp; V 10 <\/a> <\/strong> &#8211; Computational Solid Mechanics<\/li>\n<li><strong><a href=\"https:\/\/www.asme.org\/codes-standards\/find-codes-standards\/standard-for-verification-and-validation-in-computational-fluid-dynamics-and-heat-transfer\"> ASME. V&amp;V 20<\/a><\/strong> \u2013 CFD und W\u00e4rme\u00fcbertragung<\/li>\n<li><strong><a href=\"https:\/\/www.asme.org\/codes-standards\/publications-information\/verification-validation-uncertainty\">ASME V&amp;V 40<\/a><\/strong> \u2013 Risikobasiertes Framework f\u00fcr Medizinprodukte (anpassbar an andere Felder)<\/li>\n<li><strong><a href=\"https:\/\/www.asme.org\/codes-standards\/vvuq-standards\">VVUQ 1<\/a><\/strong> \u2013 Terminologiestandardisierung<\/li>\n<\/ul>\n<p>Diese Standards bieten strukturierte Verfahren f\u00fcr:<\/p>\n<ul>\n<li>Planung von V &amp; V-Aktivit\u00e4ten<\/li>\n<li>Quantifizierung der numerischen Unsicherheit<\/li>\n<li>Bewertung der Glaubw\u00fcrdigkeit des Modells anhand von Beweisen<\/li>\n<li>Dokumentationsanforderungen<\/li>\n<\/ul>\n<h3>Rahmenhierarchie<\/h3>\n<p>Ein umfassendes V&amp;V-Framework folgt dieser Hierarchie:<\/p>\n<ol>\n<li><strong>Code\u00fcberpr\u00fcfung<\/strong> \u2192 Beweisen Sie, dass der Code korrekt ist<\/li>\n<li><strong>L\u00f6sungs\u00fcberpr\u00fcfung<\/strong> \u2192 Numerischer Fehler f\u00fcr diesen Lauf sch\u00e4tzen<\/li>\n<li><strong>Validierung<\/strong> \u2192 Vergleiche mit experimentellen\/Referenzdaten<\/li>\n<li><strong>Unsicherheitsquantifizierung<\/strong> \u2192 Eingabeunsicherheit an die Ausgaben weitergeben<\/li>\n<li><strong>Vorhersagef\u00e4higkeit<\/strong> \u2192 Vertrauen in die Entscheidungsnutzung herstellen<\/li>\n<\/ol>\n<h2>h\u00e4ufige Fehler und wie man sie vermeidet<\/h2>\n<p>Basierend auf der Literatur und dem Expertenkonsens finden Sie hier die h\u00e4ufigsten V&amp;v-Fehler:<\/p>\n<h3>\u00dcberpr\u00fcfungsfehler<\/h3>\n<ul>\n<li><strong>Vorausgesetzt, der Code ist fehlerfrei<\/strong> \u2013 selbst weit verbreitete Codes enthalten unentdeckte Fehler. Regelm\u00e4\u00dfige Regressionstests mit MMS-F\u00e4llen fangen neue Fehler ein.<\/li>\n<li><strong>Vernachl\u00e4ssigung der Auftragsgenauigkeit<\/strong> \u2013 Ohne die theoretischen Konvergenzraten zu best\u00e4tigen, k\u00f6nnen Sie sich nicht auf die Fehlersch\u00e4tzungen verlassen.<\/li>\n<li><strong>Cross-Code-Vergleich als einzige Verifizierung<\/strong> \u2013 Zwei falsche Codes k\u00f6nnen zustimmen. Schlie\u00dfen Sie immer analytische oder hergestellte L\u00f6sungen ein.<\/li>\n<li><strong>Einmalige \u00dcberpr\u00fcfung<\/strong> \u2013 Die Verifizierung sollte fortlaufend erfolgen, keine einmalige Aktivit\u00e4t. Jede Code\u00e4nderung erfordert eine erneute Verifizierung der betroffenen Module.<\/li>\n<\/ul>\n<h3>Validierungsfehler<\/h3>\n<ul>\n<li><strong>Kalibrierung vs. Validierungsverwirrung <\/strong> &#8211; Abstimmungsparameter auf experimentelle Daten und dann &#8222;Validieren&#8220; mit denselben Daten erh\u00f6hen das Vertrauen k\u00fcnstlich. Halten Sie die Kalibrierungs- und Validierungsdatens\u00e4tze getrennt.<\/li>\n<li><strong>Ignorieren der experimentellen Unsicherheit<\/strong> \u2013 Eine Diskrepanz von 5% kann statistisch unbedeutend sein, wenn der experimentelle Fehler 10% betr\u00e4gt. Messen Sie immer die Messunsicherheit.<\/li>\n<li><strong>Extrapolation<\/strong> &#8211; Validierung eines Modells in einem Regime (z. B. niedrige Reynolds-Zahl) und dann in einem v\u00f6llig anderen Regime (hohe Re, Turbulenzen) ohne zus\u00e4tzliche Validierung ist ungerechtfertigt.<\/li>\n<li><strong>Schlechte Dokumentation<\/strong> \u2013 Ohne detaillierte Aufzeichnungen \u00fcber Validierungsprobleme, Ergebnisse und Entscheidungen kann die Glaubw\u00fcrdigkeit nicht von anderen (oder sich selbst Monate sp\u00e4ter) bewertet werden.<\/li>\n<\/ul>\n<h3>Allgemeine V &amp; V-Fehler<\/h3>\n<ul>\n<li><strong>Schlecht charakterisierte Eingaben<\/strong> \u2013 M\u00fcll rein, M\u00fcll raus. Die Unsicherheit der Materialeigenschaften, Randbedingungen oder Geometrie muss quantifiziert und weitergegeben werden.<\/li>\n<li><strong>Kein unabh\u00e4ngiger Peer Review<\/strong> \u2013 V&amp;V sollte von Experten \u00fcberpr\u00fcft werden, die nicht an der Entwicklung beteiligt sind. Dies erwischt Best\u00e4tigungsvoreingenommenheit und Versehen.<\/li>\n<li><strong>Mangel an Reproduzierbarkeit<\/strong> \u2013 Alle V&amp;V-F\u00e4lle sollten mit versionsgesteuerten Eingabedateien und Skripten automatisiert werden, damit andere Ihre Ergebnisse genau reproduzieren k\u00f6nnen.<\/li>\n<\/ul>\n<h2>Implementierung eines praktischen V&amp;V-Workflows f\u00fcr PDE-Codes<\/h2>\n<p>Hier ist ein schrittweises Framework, das Sie f\u00fcr Ihre PDE-Simulationsprojekte implementieren k\u00f6nnen:<\/p>\n<h3>Phase 1: Code-Verifizierung (vor jeder Produktion)<\/h3>\n<ol>\n<li><strong>MMS-Testsuite entwickeln<\/strong> Abdeckung:\n<ul>\n<li>Jeder PDE-Typ Ihr Code l\u00f6st (Diffusion, Advektion, Reaktion, gekoppelt)<\/li>\n<li>Alle Randbedingungstypen (Dirichlet, Neumann, Mixed)<\/li>\n<li>Komplex Geometrien, falls zutreffend<\/li>\n<\/ul>\n<\/li>\n<li><strong>Auftragsgenauigkeitstests automatisieren<\/strong> bei repr\u00e4sentativen Problemen. Integration in Continuous Integration (CI), damit jeder Code-Commit diese Tests ausf\u00fchrt.<\/li>\n<li><strong>Konvergenz iterativer Solver<\/strong> auf strenge Toleranzen verifizieren (Restreduktion \u2265 10\u207b\u2076 f\u00fcr lineare L\u00f6sung).<\/li>\n<li><strong>Ergebnisse zur Dokumenten\u00fcberpr\u00fcfung<\/strong> Mit Konvergenzdiagrammen, Fehlertabellen und Pass-\/Fail-Kriterien.<\/li>\n<\/ol>\n<h3>Phase 2: L\u00f6sungspr\u00fcfung (f\u00fcr jeden Simulationsfall)<\/h3>\n<ol>\n<li><strong>Mesh-Konvergenzstudie<\/strong> mit mindestens 3 Mesh-Ebenen (grob, mittel, fein)<\/li>\n<li><strong>Diskretisierungsfehlersch\u00e4tzung<\/strong> (Richardson Extrapolation oder Multi-Grid-Methoden)<\/li>\n<li><strong>Solver-Konvergenz \u00fcberpr\u00fcfen<\/strong> \u2013 Best\u00e4tigen Sie Residuen und L\u00f6sungs\u00e4nderungen erf\u00fcllen Toleranzen<\/li>\n<li><strong>Metriken f\u00fcr die Qualit\u00e4t der Metrik aufzeichnen<\/strong> (Orthogonalit\u00e4t, Seitenverh\u00e4ltnisse)<\/li>\n<li><strong>Berichte gesch\u00e4tzte numerische Unsicherheit<\/strong> in wichtigen Interessensbest\u00e4nden<\/li>\n<\/ol>\n<h3>Phase 3: Validierung (Building Glaubw\u00fcrdigkeit)<\/h3>\n<ol>\n<li><strong>Select appropriate benchmark problems<\/strong> matching your application domain<\/li>\n<li><strong>Validierungsf\u00e4lle<\/strong> mit denselben Mesh-Aufl\u00f6sungs- und Solvereinstellungen wie Produktionsl\u00e4ufe<\/li>\n<li><strong>Validierungsfehler quantifizieren<\/strong> anhand von Referenzdaten, Ber\u00fccksichtigung der experimentellen \/ Benchmark-Unsicherheit<\/li>\n<li><strong>Formularfehler beurteilen<\/strong> \u2013 Wenn Abweichungen die numerische Unsicherheit \u00fcberschreiten, fehlende Physik oder falsche Annahmen identifizieren<\/li>\n<li><strong>Document Validation Evidence<\/strong> mit Vergleichsdiagrammen, Fehlermetriken und Schlussfolgerungen zur Angemessenheit f\u00fcr den beabsichtigten Gebrauch<\/li>\n<\/ol>\n<h3>Phase 4: Unsicherheitsquantifizierung (erweitert)<\/h3>\n<p>Bei kritischen Entscheidungen propagieren Sie Eingabeunsicherheiten (Materialeigenschaften, Randbedingungen) bis zu Ausgaben mit:<\/p>\n<ul>\n<li><strong>Sampling-Methoden<\/strong> (Monte Carlo, Latin Hypercube)<\/li>\n<li><strong>Polynome Chaos-Erweiterungen<\/strong> f\u00fcr effiziente Ausbreitung<\/li>\n<li><strong>Sensitivit\u00e4tsanalyse<\/strong> zur Identifizierung dominanter Unsicherheitsquellen<\/li>\n<\/ul>\n<p>Das umfassende <a href=\"https:\/\/www.aoe.vt.edu\/content\/dam\/aoe_vt_edu\/people\/faculty\/cjroy\/Publications-Articles\/VVUQ-CMAME.Final-Accepted-FIGURES.pdf\"> vvuq-Framework von Roy et al. <\/a> integriert V &amp; V mit Unsicherheitsquantifizierung.<\/p>\n<h2>Besondere \u00dcberlegungen zu Finite-Volumen-PDE-Solvern<\/h2>\n<p>FIPY und \u00e4hnliche endliche Volumencodes haben spezifische V&amp; V-\u00dcberlegungen:<\/p>\n<h3>Diskretisierungspr\u00fcfung<\/h3>\n<ul>\n<li>\u00dcberpr\u00fcfen Sie <strong>Face Gradient <\/strong> Berechnungen mit hergestellten L\u00f6sungen, die Quellbegriffe ungleich Null erzeugen<\/li>\n<li>Testen Sie <strong>Verschiedene Netztypen<\/strong> (strukturiert vs. unstrukturiert), da die Fehlerkonstanten unterschiedlich sind<\/li>\n<li>Validierung von <strong>Flusserhaltung<\/strong> durch Berechnen von Integralbilanzen \u2013 Finite-Volumen-Methoden sollten Mengen exakt erhalten (bis zu Solver-Toleranz)<\/li>\n<\/ul>\n<h3>\u00dcbliche FIPY-spezifische \u00dcberpr\u00fcfungen<\/h3>\n<p>Wenn Sie FIPY verwenden, stellen Sie sicher, dass Sie Folgendes \u00fcberpr\u00fcft haben:<\/p>\n<ul>\n<li>Korrekte Implementierung von Randbedingungsarten (Festwert, Gradient, etc.)<\/li>\n<li>Umgang mit anisotropen oder tensorwerten Diffusionskoeffizienten<\/li>\n<li>Time-Stepping-Schemata f\u00fcr vor\u00fcbergehende Probleme (Einhaltung der CFL-Bedingung)<\/li>\n<li>Gekoppelte Physik-Wechselwirkungen (z. B. Elektrochemie + Diffusion)<\/li>\n<\/ul>\n<p>Informationen zu integrierten \u00dcberpr\u00fcfungsproblemen finden Sie in der <a href=\"https:\/\/pages.nist.gov\/fipy\/en\/benchmark_patched_2c7ac213b\/index.html\">FIPY-Benchmark-Dokumentation<\/a>.<\/p>\n<h2>Fallstudie: \u00dcberpr\u00fcfung einer Phasenfeldsimulation<\/h2>\n<p>Gehen wir durch ein konkretes Beispiel. Angenommen, Sie implementieren ein Cahn-Hilliard-Phasenfeldmodell in FIPY:<\/p>\n<ol>\n<li><strong>Code-\u00dcberpr\u00fcfung mit MMS<\/strong>:\n<ul>\n<li>W\u00e4hlen Sie eine hergestellte L\u00f6sung, die die Cahn-Hilliard-Gleichung mit einem Forcing-Term erf\u00fcllt<\/li>\n<li>Erzeugen Sie exakte L\u00f6sung und Quellenbegriff symbolisch<\/li>\n<li>Ausf\u00fchren auf einem 2D-Mesh und Vergewissern Sie sich, dass der L2-Fehler bei zweiter Ordnung konvergiert <\/li>\n<\/ul>\n<\/li>\n<li><strong>L\u00f6sungs\u00fcberpr\u00fcfung<\/strong>:\n<ul>\n<li>Run Mesh-Verfeinerung (z. B. 50\u00d750, 100\u00d7100, 200\u00d7200)<\/li>\n<li>Compute-Schnittstellenbreite und freie Energie auf jedem Netz<\/li>\n<li>Verwenden Sie die Richardson-Extrapolation, um den Diskretisierungsfehler in der Energie zu sch\u00e4tzen<\/li>\n<p>\u203a <\/ul>\n<\/li>\n<li><strong>Validierung<\/strong>:\n<ul>\n<li>Simulieren Sie die spinodale Zerlegung und vergleichen Sie die charakteristische L\u00e4ngenskala mit analytischen Vorhersagen oder ver\u00f6ffentlichten Ergebnissen<\/li>\n<li>Validieren Sie die Kinetik der Coarsing-Kinetik (L \u221d t^{1\/3}) \u00fcbereinstimmt Theorie<\/li>\n<\/ul>\n<\/li>\n<li><strong>Dokumentation<\/strong>:\n<ul>\n<li>Speichern Sie alle Eingabedateien, Skripte und Ergebnisse in einem versionsgesteuerten Repository<\/li>\n<li>Erstellen Sie einen Verifizierungsbericht mit Plots und Tabellen<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h2>Entscheidungsleitfaden: Wann verwenden Sie welche V&amp;V-Methode?<\/h2>\n<table>\n<thead>\n<tr>\n<th>Lage<\/th>\n<th>Empfohlener Ansatz<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Neuer PDE-Code oder wesentliche \u00dcberarbeitung<\/td>\n<td>Volle MMS-Suite + Auftragsgenauigkeitspr\u00fcfung<\/td>\n<\/tr>\n<tr>\n<td>Kleinere Fehlerbehebung<\/td>\n<td>Gezielte MMS-Tests f\u00fcr betroffene Module<\/td>\n<\/tr>\n<tr>\n<td>Produktionssimulation<\/td>\n<td>L\u00f6sungspr\u00fcfung (Mesh-Studie) obligatorisch<\/td>\n<\/tr>\n<tr>\n<td>Modellentwicklungsphase<\/td>\n<td>Validierung vor 3+ Benchmark-Problemen<\/td>\n<\/tr>\n<tr>\n<td>Regulierungs- oder High-Stakes-Nutzung<\/td>\n<td>Volles ASME V&amp;V 40 Framework mit unabh\u00e4ngiger Peer Review<\/td>\n<\/tr>\n<tr>\n<td>Forschungscode ohne experimentelle Daten<\/td>\n<td>Dokumentenbeschr\u00e4nkungen; Verwenden Sie mehrere unabh\u00e4ngige \u00dcberpr\u00fcfungsmethoden<\/td>\n<\/tr>\n<tr>\n<td>Leistungsoptimierung<\/td>\n<td>Nach der Optimierung erneut verifizieren, um keine Korrektheitsregression zu gew\u00e4hrleisten<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>Bottom Line<\/strong>: Die Strenge von V &amp; V sollte mit den Folgen des Scheiterns \u00fcbereinstimmen. Der akademische Forschungskodex erfordert noch eine grundlegende \u00dcberpr\u00fcfung, aber die vollst\u00e4ndige V &amp; V 40-Konformit\u00e4t kann \u00fcbertrieben sein. Industrie- oder sicherheitskritische Anwendungen erfordern umfassende, dokumentierte V&amp;V.<\/p>\n<h2>Verwandte Anleitungen<\/h2>\n<p>Zu verwandten Themen in wissenschaftlichen Simulations-Workflows:<\/p>\n<ul>\n<li><a href=\"\/from-equations-to-simulations-the-modeling-pipeline\/\">Von Gleichungen zu Simulationen: Die Modellierungspipeline<\/a> \u2013 End-to-End-Simulationsentwicklungsprozess<\/li>\n<li><a href=\"\/using-fipy-for-phase-field-modeling\/\">Verwendung von FIPY f\u00fcr Phasenfeldmodellierung<\/a> \u2013 Praktischer PDE-Implementierungshandbuch<\/li>\n<li><a href=\"\/introduction-to-materials-modeling-for-beginners\/\">Einf\u00fchrung in die Materialmodellierung f\u00fcr Anf\u00e4nger<\/a> \u2013 Grundlagenkonzepte f\u00fcr Neuank\u00f6mmlinge<\/li>\n<\/ul>\n<h2>Zusammenfassung und n\u00e4chste Schritte<\/h2>\n<p>Validierung und \u00dcberpr\u00fcfung sind keine optionalen Add-Ons. Sie sind integraler PDE-Simulationen. Der hier beschriebene praktische Rahmen liefert eine Roadmap:<\/p>\n<ol>\n<li><strong>Start mit der Code-Verifizierung<\/strong> Mit der Methode der hergestellten L\u00f6sungen zur Festlegung der Basiskorrektheit<\/li>\n<li><strong>Numerische Fehler quantifizieren<\/strong> durch L\u00f6sungs\u00fcberpr\u00fcfung f\u00fcr jeden Produktionslauf<\/li>\n<li><strong>Validierungsnachweise<\/strong> mit Benchmark-Problemen und unabh\u00e4ngigen Daten<\/li>\n<li><strong>Standards<\/strong> wie ASME V&amp; V 10\/20, um Ihren Prozess zu strukturieren<\/li>\n<li><strong>Vermeiden Sie h\u00e4ufige Fehler<\/strong> \u2013 insbesondere die Verifizierungs-\/Validierungsverwirrung und zirkul\u00e4re Kalibrierung<\/li>\n<li><strong>Dokumente alles<\/strong> f\u00fcr Reproduzierbarkeit und Peer-Review<\/li>\n<\/ol>\n<p>Die Implementierung eines einfachen V&amp;V-Programms (MMS-Tests + Mesh-Konvergenz) erh\u00f6ht das Vertrauen in Ihre Simulationsergebnisse erheblich und spart Zeit, um Fehler fr\u00fchzeitig einzufangen.<\/p>\n<p><strong>N\u00e4chste Schritte<\/strong>: Pr\u00fcfen Sie Ihren aktuellen Simulationsworkflow. \u00dcberspringen Sie die \u00dcberpr\u00fcfung vollst\u00e4ndig? Nur Single-Mesh-Berechnungen ausf\u00fchren? F\u00fcgen Sie Ihrem n\u00e4chsten Projekt mindestens einen \u00dcberpr\u00fcfungstest (MMS oder Bestellgenauigkeit) hinzu und messen Sie den Unterschied in der Vertrauensstellung und der Fehlererkennung.<\/p>\n<h2>Ben\u00f6tigen Sie Hilfe bei der Implementierung von V &amp; V f\u00fcr Ihr Simulationsprojekt?<\/h2>\n<p>Die Etablierung eines robusten V &amp; V-Prozesses erfordert Fachwissen und Vorabinvestitionen. Wenn Sie Probleme haben mit:<\/p>\n<ul>\n<li>Einrichten hergestellter L\u00f6sungstests f\u00fcr Ihren PDE-Code<\/li>\n<li>Entwerfen von Netzkonvergenzstudien f\u00fcr komplexe Geometrien<\/li>\n<li>Validierungsergebnisse interpretieren und Unsicherheit quantifizieren<\/li>\n<li>Vorbereitung der V &amp; V-Dokumentation f\u00fcr die Ver\u00f6ffentlichung oder beh\u00f6rdliche Einreichung<\/li>\n<\/ul>\n<p>Unser Team von Computational Science-Experten kann helfen. Wir spezialisieren uns auf die Erstellung von Verifizierungs-Frameworks f\u00fcr wissenschaftliche Python-Codes, einschlie\u00dflich FIPY-basierter Simulationen. <a href=\"https:\/\/matforge.org\/category\/issue-tracking-tickets-technical-requests\/\">Wenden Sie sich \u00fcber unser Issue-Tracking-System<\/a>, um die Glaubw\u00fcrdigkeitsbed\u00fcrfnisse Ihres Projekts zu besprechen.<\/p>\n<hr>\n<p><strong>Referenzen und Weiterlesen<\/strong><\/p>\n<ul>\n<li>Roy, C. J. (2005). &#8222;\u00dcberpr\u00fcfung von Code- und L\u00f6sungspr\u00fcfungsverfahren f\u00fcr die Computersimulation.&#8220; <em>Journal of Computational Physics <\/em>.<\/li>\n<li>Oberkampf, W. L. &amp; Roy, C. J. (2010). <em>\u00dcberpr\u00fcfung und Validierung im wissenschaftlichen Rechnen <\/em>. Cambridge University Press.<\/li>\n<li>AIAA-Leitfaden zur Verifizierung und Validierung von Simulationen der computergest\u00fctzten Fluiddynamik (1998).<\/li>\n<li>ASME V&amp;V-Standards: <a href=\"https:\/\/www.asme.org\/codes-standards\/find-codes-standards\/standard-for-verification-and-validation-in-computational-solid-mechanics\"> v &amp; v. 10 <\/a>, <a. href=\"https:\/\/www.asme.org\/codes-standards\/find-codes-standards\/standard-for-verification-and-validation-in-computational-fluid-dynamics-and-heat-transfer\"> V &amp; V. 20 , <a href=\"https:\/\/www.asme.org\/codes-standards\/vvuq-standards\"> vvuq 1 <\/a>.<\/a.><\/li>\n<\/ul>\n","protected":false,"raw":"<p>Validierung und Verifizierung (V&amp;V) sind wesentliche Qualit\u00e4tssicherungsprozesse f\u00fcr PDE-Simulationen. Die Verifizierung stellt sicher, dass Ihr Code die Gleichungen richtig l\u00f6st (das L\u00f6sen der Gleichungen richtig). Die Validierung best\u00e4tigt, dass Ihr Modell die reale Physik (L\u00f6sen der richtigen Gleichungen) genau darstellt. Ein robustes V&amp;V-Framework kombiniert die Code-Verifizierung \u00fcber Methoden wie die Methode der hergestellten L\u00f6sungen, die L\u00f6sungspr\u00fcfung mit Netzkonvergenzstudien und die Validierung gegen\u00fcber Benchmark-Problemen oder experimentellen Daten. Die Einhaltung etablierter Standards wie ASME V&amp; V 10\/20 tr\u00e4gt zur Gew\u00e4hrleistung der Glaubw\u00fcrdigkeit und Reproduzierbarkeit im wissenschaftlichen Rechnen bei.<\/p>\n<h2>Vorstellung<\/h2>\n<p>Partielle Differentialgleichungssimulationen (PDE) untermauern unz\u00e4hlige wissenschaftliche und technische Entscheidungen - von der Materialwissenschaft bis zur Str\u00f6mungsdynamik. Eine Simulation ist jedoch nur so vertrauensw\u00fcrdig wie die dahinter liegenden Verifizierungs- und Validierungs-Prozesse. Die Konsequenzen einer unzureichenden V &amp; V k\u00f6nnen schwerwiegend sein: falsche Forschungsergebnisse, fehlerhafte technische Konstruktionen und verschwendete Rechenressourcen.<\/p>\n<p>Dieser Leitfaden bietet ein praktisches, implementierungsorientiertes Framework f\u00fcr V &amp; V in PDE-Simulationen. Wir werden den theoretischen Jargon durchschneiden und Ihnen umsetzbare Verfahren geben, die Sie auf Ihre endlichen Volumenl\u00f6ser (wie FIPY), Finite-Elemente-Codes oder jede PDE-basierte Simulationssoftware anwenden k\u00f6nnen.<\/p>\n<h2>Verstehen der V &amp; V-Unterscheidung<\/h2>\n<p>Vor dem Eintauchen in Verfahren ist es wichtig, den grundlegenden Unterschied zwischen Verifizierung und Validierung zu verstehen. Diese Unterscheidung wird oft verwechselt, bildet aber die Grundlage jedes glaubw\u00fcrdigen V &amp; V-Programms.<\/p>\n<h3>Verifizierung: L\u00f6sen wir die Gleichungen richtig?<\/h3>\n<p>Die \u00dcberpr\u00fcfung fragt: <strong> \"Haben wir das Modell richtig aufgebaut?\"<\/strong> Es ist ein mathematischer und Codequalit\u00e4tsprozess, der best\u00e4tigt:<\/p>\n<ul>\n<li>Die numerische Implementierung l\u00f6st die ma\u00dfgeblichen PDEs korrekt<\/li>\n<li>Diskretisierungsfehler werden richtig gesch\u00e4tzt und kontrolliert<\/li>\n<li>Iterative L\u00f6ser konvergieren zur richtigen L\u00f6sung<\/li>\n<li>Programmierfehler und Logikfehler werden eliminiert<\/li>\n<\/ul>\n<p>Bei der Verifizierung geht es um <strong>Interne Konsistenz<\/strong> - das Verhalten des Codes verh\u00e4lt sich genau so, wie es das mathematische Modell vorschreibt, unabh\u00e4ngig davon, ob dieses Modell physikalisch korrekt ist.<\/p>\n<h3>Validierung: L\u00f6sen wir die richtigen Gleichungen?<\/h3>\n<p>Validierung fragt: <strong> \"Haben wir das richtige Modell erstellt?\"<\/strong> Es wird bewertet, ob die Simulation das reale physikalische System f\u00fcr den vorgesehenen Zweck genau darstellt:<\/p>\n<ul>\n<li>Stimmen die Modellausgaben mit experimentellen Beobachtungen innerhalb der Unsicherheitsgrenzen \u00fcberein?<\/li>\n<li>Sind die gew\u00e4hlten Physik und Randbedingungen angemessen?<\/li>\n<li>Tut das Modell \u00fcber den erwarteten Betriebsbereich zuverl\u00e4ssig?<\/li>\n<\/ul>\n<p>Bei der Validierung geht es um <strong>Externe Genauigkeit<\/strong> - das Vertrauen, dass dem Modell bei der Entscheidungsfindung vertraut werden kann.<\/p>\n<p><strong>Key Takeaway<\/strong>: Die \u00dcberpr\u00fcfung muss vor der Validierung liegen. Sie k\u00f6nnen einen nicht \u00fcberpr\u00fcften Code nicht validieren. Dies validiert lediglich die fehlerhafte Implementierung.<\/p>\n<h2>Code\u00fcberpr\u00fcfung: Der Nachweis Ihrer Implementierung ist korrekt<\/h2>\n<p>Die Code\u00fcberpr\u00fcfung ist der rigorose Prozess, um zu demonstrieren, dass Ihr PDE-Solver das zugrunde liegende mathematische Modell korrekt implementiert. In der Praxis werden zwei Hauptans\u00e4tze verwendet.<\/p>\n<h3>1. Methode der hergestellten L\u00f6sungen (MMS)<\/h3>\n<p>Die Methode der hergestellten L\u00f6sungen ist der Goldstandard f\u00fcr die Codeverifizierung in der Computerwissenschaft. Es bietet eine systematische, mathematisch strenge M\u00f6glichkeit, Ihren Solver zu testen, ohne sich auf bereits vorhandene analytische L\u00f6sungen zu verlassen, die m\u00f6glicherweise nicht Ihren spezifischen Randbedingungen oder Gleichungsformen entsprechen.<\/p>\n<h4>Wie MMS funktioniert<\/h4>\n<ol>\n<li><strong>W\u00e4hlen Sie eine analytische L\u00f6sung<\/strong> (u_m(mathbf{x}) ), die glatt und ausreichend differenzierbar ist (z. ))<\/li>\n<li><strong>substitute<\/strong> (u_m ) in Ihren regierenden PDE-Operator (mathcal{L}), um den erforderlichen Quellbegriff (s) zu berechnen:<br> [<br> s(mathbf{x}, t) = mathcal{L}(U_M)<br> ]<\/li>\n<li><strong>Simulation durchf\u00fchren<\/strong> mit dem hergestellten Quellbegriff( s ) und geeigneten Grenz-\/Anfangsbedingungen abgeleitet von ( u_m )<\/li>\n<li><strong>Vergleiche<\/strong> Die numerische L\u00f6sung (U_H) zur exakt hergestellten L\u00f6sung ( U_M )<\/li>\n<li><strong>Maschenverfeinerungsstudien<\/strong>, um zu \u00fcberpr\u00fcfen, ob die beobachtete Genauigkeit der theoretischen Reihenfolge Ihres Diskretisierungsschemas entspricht<\/li>\n<\/ol>\n<p>Die Kraft von MMS liegt in seiner Universalit\u00e4t: Sie k\u00f6nnen jeden Code f\u00fcr jeden PDE \u00fcberpr\u00fcfen, unabh\u00e4ngig von den Randbedingungen, da Sie eine kompatible L\u00f6sung auf Anfrage herstellen.<\/p>\n<p><strong>Practical tip<\/strong>: Verwenden Sie symbolische Berechnungstools (Symy, Mathematica, Maple), um analytische Derivate zu berechnen, die f\u00fcr (S) erforderlich sind, insbesondere f\u00fcr komplexe nichtlineare PDEs. Automatisieren Sie den Prozess mit Skripten, um Testf\u00e4lle systematisch zu generieren.<\/p>\n<h4>MMS-Ressourcen<\/h4>\n<p>F\u00fcr detaillierte MMS-Verfahren und Beispiele:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.osti.gov\/biblio\/759450\">Code-\u00dcberpr\u00fcfung nach der Methode der hergestellten L\u00f6sungen (OSTI) <\/a> - Grundlagenpapier von Salari &amp; Knupp<\/li>\n<li><a href=\"https:\/\/www.comsol.com\/blogs\/verify-simulations-with-the-method-of-manufactured-solutions\">COMSOL-Blog: Simulationen mit MMS \u00fcberpr\u00fcfen<\/a> \u2013 praktische Implementierungshandbuch<\/li>\n<li><a href=\"https:\/\/pylith.readthedocs.io\/en\/v4.2.0\/developer\/testing\/mmstests.html\">Pylith MMS-Dokumentation<\/a> \u2013 Beispiele f\u00fcr Geophysik-Codes<\/li>\n<\/ul>\n<h3>2. Reihenfolge der Genauigkeitspr\u00fcfung<\/h3>\n<p>Die Reihenfolge der Genauigkeitstests \u00fcberpr\u00fcft, ob Ihr Code die erwartete Konvergenzrate unter Netzverfeinerung erreicht. Bei einem Finite-Volumen-Schema zweiter Ordnung sollte die Halbierung des Netzabstands den Fehler um ungef\u00e4hr den Faktor 4 verringern.<\/p>\n<h4>Verfahren<\/h4>\n<ol>\n<li>W\u00e4hlen Sie ein Problem mit einer bekannten exakten L\u00f6sung (kann aus MMS- oder Lehrbuch-Benchmarks stammen)<\/li>\n<li>L\u00f6sen Sie eine Folge von zunehmend verfeinerten Netzen (z. B. 32 \u00d7 32, 64 \u00d7 64, 128 \u00d7 128)<\/li>\n<li>Berechnen Sie die Fehlernorm (L1, L2 oder L\u221e) auf jeder Verfeinerungsebene<\/li>\n<li>Plotfehler vs. Mesh-Gr\u00f6\u00dfe in einem Log-Log-Plot und berechnen Sie die beobachtete Reihenfolge:<br> [<br> text{order} = frac{log(e_{coarse}\/e_{fine})}{log(h_{coarse}\/h_{fine})}<br>]<\/li>\n<li>Best\u00e4tigen Sie, dass die beobachtete Reihenfolge der theoretischen Diskretisierungsreihenfolge innerhalb der Toleranz entspricht (\u00b1 0,1\u20130,2 aufgrund von Grenzeffekten, Maschinengenauigkeit)<\/li>\n<\/ol>\n<p>Dies ist eine <strong>minimale Anforderung<\/strong> f\u00fcr jeden PDE-Code, der Korrektheit beansprucht.<\/p>\n<p><strong>Common Pitfall<\/strong>: Zu grobe Maschen oder zu einfache Probleme, die nicht alle Begriffe in der PDE aus\u00fcben. Testen Sie komplexe, realistische Szenarien, einschlie\u00dflich Nichtlinearit\u00e4ten, Diskontinuit\u00e4ten und gekoppelter Physik.<\/p>\n<h3>3. Cross-Code-Vergleich (Vorsicht)<\/h3>\n<p>Das Vergleichen von Ergebnissen zwischen zwei verschiedenen Codes kann n\u00fctzlich sein, aber <strong>Ersatz ist kein Ersatz f\u00fcr die \u00dcberpr\u00fcfung gegen analytische L\u00f6sungen<\/strong>. Beide Codes k\u00f6nnten den gleichen systematischen Fehler enthalten. Verwenden Sie den Cross-Code-Vergleich nur als Erg\u00e4nzungspr\u00fcfung nach ordnungsgem\u00e4\u00dfer MMS- oder Auftragspr\u00fcfung.<\/p>\n<h2>L\u00f6sungs\u00fcberpr\u00fcfung: Quantifizierung numerischer Fehler<\/h2>\n<p>Sogar ein verifizierter Code erzeugt numerische Approximationen mit inh\u00e4renten Fehlern. Die L\u00f6sungs\u00fcberpr\u00fcfung sch\u00e4tzt diese Fehler f\u00fcr einen bestimmten Simulationslauf.<\/p>\n<h3>Diskretisierungsfehlersch\u00e4tzung<\/h3>\n<p>Die Hauptquellen f\u00fcr numerische Fehler in PDE-Simulationen sind:<\/p>\n<ul>\n<li><strong>Diskretisierungsfehler<\/strong> (Mesh\/Grid-Aufl\u00f6sung)<\/li>\n<li><strong>Iterationsfehler<\/strong> (Solver-Konvergenztoleranzen)<\/li>\n<li><strong>Abrundenfehler<\/strong> (Gleitkommagenauigkeit)<\/li>\n<\/ul>\n<p>Diskretisierungsfehler sind typischerweise dominant. Richardson-Extrapolation kann eine Fehlersch\u00e4tzung liefern, indem die Ergebnisse von zwei Netzen verwendet werden:<\/p>\n<p>[<br> varepsilon_{richardson} = frac{u_{h_1} - u_{h_2}}{r^{p} - 1}<br> ]<\/p>\n<p>wobei (r) das Verfeinerungsverh\u00e4ltnis und (p) die beobachtete Genauigkeitsreihenfolge ist.<\/p>\n<h3>Konvergenzkriterien<\/h3>\n<p>Stellen Sie immer sicher, dass iterative Solver (z. B. Newton-Methode, lineare Systeml\u00f6ser) auf die gew\u00fcnschte Toleranz konvergiert sind, bevor Sie den Ergebnissen vertrauen. \u00dcberpr\u00fcfen Sie:<\/p>\n<ul>\n<li>Restreduktion um mehrere Gr\u00f6\u00dfenordnungen<\/li>\n<li>L\u00f6sungs\u00e4nderungen zwischen Iterationen unter dem Schwellenwert<\/li>\n<li>Konservierungsfehler (bei Finite-Volumen-Methoden)<\/li>\n<\/ul>\n<p><strong>Warnung<\/strong>: \"konvergiert\" bedeutet nicht \"korrigieren\". Ein iterativer Solver kann zu einer falschen L\u00f6sung konvergieren, wenn die anf\u00e4ngliche Vermutung schlecht oder das Problem schlecht konditioniert ist. Aus diesem Grund sind sowohl Verifizierung als auch Validierung notwendig.<\/p>\n<h2>Validierung: Vergleich mit der Realit\u00e4t<\/h2>\n<p>Die Validierung beurteilt, ob Ihr Simulationsmodell f\u00fcr den beabsichtigten Zweck ausreichend genau ist, indem Vorhersagen mit unabh\u00e4ngigen experimentellen Daten verglichen werden.<\/p>\n<h3>Benchmark-Probleme<\/h3>\n<p>Benchmark-Probleme sind standardisierte Testf\u00e4lle mit gut charakterisierten experimentellen oder High-Fidelity-Referenzdaten. Sie dienen als objektive Validierungsziele.<\/p>\n<h4>Common PDE Benchmark Categories<\/h4>\n<ul>\n<li><strong>Fluiddynamik<\/strong>: Vorbei an einem Zylinder (RE=20\u20131000), Deckel-gesteuerter Hohlraum, Rayleigh-B\u00e9nard-Konvektion<\/li>\n<li><strong>Transportgleichungen<\/strong>: 1D-Advektionsdiffusion mit bekannten analytischen L\u00f6sungen<\/li>\n<li><strong>Phasenfeld<\/strong>: Allen-Cahn, Cahn-Hilliard-Muster gegen Mikroskopie<\/li>\n<li><strong>Diffusionsreaktion<\/strong>: Fisher-KPP-Wellengeschwindigkeitsvalidierung<\/li>\n<\/ul>\n<p>Repositories wie <a href=\"https:\/\/github.com\/pdebench\/PDEBench\"> pdebench <\/a> bieten standardisierte Datens\u00e4tze zum Vergleichen von maschinellem Lernen und numerischen Methoden.<\/p>\n<h3>Best Practices f\u00fcr die Validierung<\/h3>\n<ol>\n<li><strong>Unabh\u00e4ngige Daten verwenden<\/strong>: Niemals mit demselben Datensatz validieren, der f\u00fcr die Kalibrierung oder Code\u00fcberpr\u00fcfung verwendet wird<\/li>\n<li><strong>Unsicherheit quantifizieren<\/strong>: experimentelle Messungen haben Unsicherheit; Modellvorhersagen haben numerische Fehler. Vergleichen Sie innerhalb der kombinierten Unsicherheitsgrenzen<\/li>\n<li><strong>Mehrere Validierungspunkte<\/strong>: Testen Sie \u00fcber den Parameterraum, nicht nur eine Betriebsbedingung<\/li>\n<li><strong>Dokumentenvalidierungsbasis<\/strong>: Erfassen Sie, welche Probleme verwendet wurden, Ergebnisse und Pass-\/Fail-Kriterien<\/li>\n<\/ol>\n<p><strong>Kritischer Fehler<\/strong>: Verwenden von experimentellen Daten, um Modellparameter (Kalibrierung) zu optimieren und dann die Validierung mit denselben Daten zu beanspruchen. Das ist kreisf\u00f6rmige Argumentation. Reservieren Sie einen separaten Validierungsdatensatz.<\/p>\n<h3>Wenn experimentelle Daten nicht verf\u00fcgbar sind<\/h3>\n<p>F\u00fcr viele Forschungsprobleme sind qualitativ hochwertige experimentelle Daten knapp. In solchen F\u00e4llen:<\/p>\n<ul>\n<li>Verwenden Sie High-Fidelity-Referenzl\u00f6sungen (z. B. DNS f\u00fcr turbulente Str\u00f6mungen), falls verf\u00fcgbar<\/li>\n<li>Vergleichen Sie mit analytischen L\u00f6sungen f\u00fcr vereinfachte F\u00e4lle<\/li>\n<li>F\u00fchren Sie einen Cross-Code-Vergleich mit mehreren unabh\u00e4ngigen, gut verifizierten Codes durch<\/li>\n<li>Seien Sie transparent \u00fcber die Einschr\u00e4nkung und charakterisieren Sie die pr\u00e4diktive Unsicherheit durch Sensitivit\u00e4tsanalyse<\/li>\n<\/ul>\n<h2>Standards und Frameworks<\/h2>\n<p>Die \u00dcbernahme etablierter Standards verleiht Ihrem V&amp;V-Prozess Glaubw\u00fcrdigkeit und stellt die Vollst\u00e4ndigkeit sicher.<\/p>\n<h3>ASME V &amp; V-Standards<\/h3>\n<p>Die American Society of Mechanical Engineers (ASME) hat eine Reihe von Standards f\u00fcr die Glaubw\u00fcrdigkeit der Computermodellierung entwickelt:<\/p>\n<ul>\n<li><strong><a href=\"https:\/\/www.asme.org\/codes-standards\/find-codes-standards\/standard-for-verification-and-validation-in-computational-solid-mechanics\"> ASME. V &amp; V 10 <\/a> <\/strong> - Computational Solid Mechanics<\/li>\n<li><strong><a href=\"https:\/\/www.asme.org\/codes-standards\/find-codes-standards\/standard-for-verification-and-validation-in-computational-fluid-dynamics-and-heat-transfer\"> ASME. V&amp;V 20<\/a><\/strong> \u2013 CFD und W\u00e4rme\u00fcbertragung<\/li>\n<li><strong><a href=\"https:\/\/www.asme.org\/codes-standards\/publications-information\/verification-validation-uncertainty\">ASME V&amp;V 40<\/a><\/strong> \u2013 Risikobasiertes Framework f\u00fcr Medizinprodukte (anpassbar an andere Felder)<\/li>\n<li><strong><a href=\"https:\/\/www.asme.org\/codes-standards\/vvuq-standards\">VVUQ 1<\/a><\/strong> \u2013 Terminologiestandardisierung<\/li>\n<\/ul>\n<p>Diese Standards bieten strukturierte Verfahren f\u00fcr:<\/p>\n<ul>\n<li>Planung von V &amp; V-Aktivit\u00e4ten<\/li>\n<li>Quantifizierung der numerischen Unsicherheit<\/li>\n<li>Bewertung der Glaubw\u00fcrdigkeit des Modells anhand von Beweisen<\/li>\n<li>Dokumentationsanforderungen<\/li>\n<\/ul>\n<h3>Rahmenhierarchie<\/h3>\n<p>Ein umfassendes V&amp;V-Framework folgt dieser Hierarchie:<\/p>\n<ol>\n<li><strong>Code\u00fcberpr\u00fcfung<\/strong> \u2192 Beweisen Sie, dass der Code korrekt ist<\/li>\n<li><strong>L\u00f6sungs\u00fcberpr\u00fcfung<\/strong> \u2192 Numerischer Fehler f\u00fcr diesen Lauf sch\u00e4tzen<\/li>\n<li><strong>Validierung<\/strong> \u2192 Vergleiche mit experimentellen\/Referenzdaten<\/li>\n<li><strong>Unsicherheitsquantifizierung<\/strong> \u2192 Eingabeunsicherheit an die Ausgaben weitergeben<\/li>\n<li><strong>Vorhersagef\u00e4higkeit<\/strong> \u2192 Vertrauen in die Entscheidungsnutzung herstellen<\/li>\n<\/ol>\n<h2>h\u00e4ufige Fehler und wie man sie vermeidet<\/h2>\n<p>Basierend auf der Literatur und dem Expertenkonsens finden Sie hier die h\u00e4ufigsten V&amp;v-Fehler:<\/p>\n<h3>\u00dcberpr\u00fcfungsfehler<\/h3>\n<ul>\n<li><strong>Vorausgesetzt, der Code ist fehlerfrei<\/strong> \u2013 selbst weit verbreitete Codes enthalten unentdeckte Fehler. Regelm\u00e4\u00dfige Regressionstests mit MMS-F\u00e4llen fangen neue Fehler ein.<\/li>\n<li><strong>Vernachl\u00e4ssigung der Auftragsgenauigkeit<\/strong> \u2013 Ohne die theoretischen Konvergenzraten zu best\u00e4tigen, k\u00f6nnen Sie sich nicht auf die Fehlersch\u00e4tzungen verlassen.<\/li>\n<li><strong>Cross-Code-Vergleich als einzige Verifizierung<\/strong> \u2013 Zwei falsche Codes k\u00f6nnen zustimmen. Schlie\u00dfen Sie immer analytische oder hergestellte L\u00f6sungen ein.<\/li>\n<li><strong>Einmalige \u00dcberpr\u00fcfung<\/strong> \u2013 Die Verifizierung sollte fortlaufend erfolgen, keine einmalige Aktivit\u00e4t. Jede Code\u00e4nderung erfordert eine erneute Verifizierung der betroffenen Module.<\/li>\n<\/ul>\n<h3>Validierungsfehler<\/h3>\n<ul>\n<li><strong>Kalibrierung vs. Validierungsverwirrung <\/strong> - Abstimmungsparameter auf experimentelle Daten und dann \"Validieren\" mit denselben Daten erh\u00f6hen das Vertrauen k\u00fcnstlich. Halten Sie die Kalibrierungs- und Validierungsdatens\u00e4tze getrennt.<\/li>\n<li><strong>Ignorieren der experimentellen Unsicherheit<\/strong> \u2013 Eine Diskrepanz von 5% kann statistisch unbedeutend sein, wenn der experimentelle Fehler 10% betr\u00e4gt. Messen Sie immer die Messunsicherheit.<\/li>\n<li><strong>Extrapolation<\/strong> - Validierung eines Modells in einem Regime (z. B. niedrige Reynolds-Zahl) und dann in einem v\u00f6llig anderen Regime (hohe Re, Turbulenzen) ohne zus\u00e4tzliche Validierung ist ungerechtfertigt.<\/li>\n<li><strong>Schlechte Dokumentation<\/strong> \u2013 Ohne detaillierte Aufzeichnungen \u00fcber Validierungsprobleme, Ergebnisse und Entscheidungen kann die Glaubw\u00fcrdigkeit nicht von anderen (oder sich selbst Monate sp\u00e4ter) bewertet werden.<\/li>\n<\/ul>\n<h3>Allgemeine V &amp; V-Fehler<\/h3>\n<ul>\n<li><strong>Schlecht charakterisierte Eingaben<\/strong> \u2013 M\u00fcll rein, M\u00fcll raus. Die Unsicherheit der Materialeigenschaften, Randbedingungen oder Geometrie muss quantifiziert und weitergegeben werden.<\/li>\n<li><strong>Kein unabh\u00e4ngiger Peer Review<\/strong> \u2013 V&amp;V sollte von Experten \u00fcberpr\u00fcft werden, die nicht an der Entwicklung beteiligt sind. Dies erwischt Best\u00e4tigungsvoreingenommenheit und Versehen.<\/li>\n<li><strong>Mangel an Reproduzierbarkeit<\/strong> \u2013 Alle V&amp;V-F\u00e4lle sollten mit versionsgesteuerten Eingabedateien und Skripten automatisiert werden, damit andere Ihre Ergebnisse genau reproduzieren k\u00f6nnen.<\/li>\n<\/ul>\n<h2>Implementierung eines praktischen V&amp;V-Workflows f\u00fcr PDE-Codes<\/h2>\n<p>Hier ist ein schrittweises Framework, das Sie f\u00fcr Ihre PDE-Simulationsprojekte implementieren k\u00f6nnen:<\/p>\n<h3>Phase 1: Code-Verifizierung (vor jeder Produktion)<\/h3>\n<ol>\n<li><strong>MMS-Testsuite entwickeln<\/strong> Abdeckung: <ul> <li>Jeder PDE-Typ Ihr Code l\u00f6st (Diffusion, Advektion, Reaktion, gekoppelt)<\/li> <li>Alle Randbedingungstypen (Dirichlet, Neumann, Mixed)<\/li> <li>Komplex Geometrien, falls zutreffend<\/li> <\/ul><\/li>\n<li><strong>Auftragsgenauigkeitstests automatisieren<\/strong> bei repr\u00e4sentativen Problemen. Integration in Continuous Integration (CI), damit jeder Code-Commit diese Tests ausf\u00fchrt.<\/li>\n<li><strong>Konvergenz iterativer Solver<\/strong> auf strenge Toleranzen verifizieren (Restreduktion \u2265 10\u207b\u2076 f\u00fcr lineare L\u00f6sung).<\/li>\n<li><strong>Ergebnisse zur Dokumenten\u00fcberpr\u00fcfung<\/strong> Mit Konvergenzdiagrammen, Fehlertabellen und Pass-\/Fail-Kriterien.<\/li>\n<\/ol>\n<h3>Phase 2: L\u00f6sungspr\u00fcfung (f\u00fcr jeden Simulationsfall)<\/h3>\n<ol>\n<li><strong>Mesh-Konvergenzstudie<\/strong> mit mindestens 3 Mesh-Ebenen (grob, mittel, fein)<\/li>\n<li><strong>Diskretisierungsfehlersch\u00e4tzung<\/strong> (Richardson Extrapolation oder Multi-Grid-Methoden)<\/li>\n<li><strong>Solver-Konvergenz \u00fcberpr\u00fcfen<\/strong> \u2013 Best\u00e4tigen Sie Residuen und L\u00f6sungs\u00e4nderungen erf\u00fcllen Toleranzen<\/li>\n<li><strong>Metriken f\u00fcr die Qualit\u00e4t der Metrik aufzeichnen<\/strong> (Orthogonalit\u00e4t, Seitenverh\u00e4ltnisse)<\/li>\n<li><strong>Berichte gesch\u00e4tzte numerische Unsicherheit<\/strong> in wichtigen Interessensbest\u00e4nden<\/li>\n<\/ol>\n<h3>Phase 3: Validierung (Building Glaubw\u00fcrdigkeit)<\/h3>\n<ol>\n<li><strong>Select appropriate benchmark problems<\/strong> matching your application domain<\/li>\n<li><strong>Validierungsf\u00e4lle<\/strong> mit denselben Mesh-Aufl\u00f6sungs- und Solvereinstellungen wie Produktionsl\u00e4ufe<\/li>\n<li><strong>Validierungsfehler quantifizieren<\/strong> anhand von Referenzdaten, Ber\u00fccksichtigung der experimentellen \/ Benchmark-Unsicherheit<\/li>\n<li><strong>Formularfehler beurteilen<\/strong> \u2013 Wenn Abweichungen die numerische Unsicherheit \u00fcberschreiten, fehlende Physik oder falsche Annahmen identifizieren<\/li>\n<li><strong>Document Validation Evidence<\/strong> mit Vergleichsdiagrammen, Fehlermetriken und Schlussfolgerungen zur Angemessenheit f\u00fcr den beabsichtigten Gebrauch<\/li>\n<\/ol>\n<h3>Phase 4: Unsicherheitsquantifizierung (erweitert)<\/h3>\n<p>Bei kritischen Entscheidungen propagieren Sie Eingabeunsicherheiten (Materialeigenschaften, Randbedingungen) bis zu Ausgaben mit:<\/p>\n<ul>\n<li><strong>Sampling-Methoden<\/strong> (Monte Carlo, Latin Hypercube)<\/li>\n<li><strong>Polynome Chaos-Erweiterungen<\/strong> f\u00fcr effiziente Ausbreitung<\/li>\n<li><strong>Sensitivit\u00e4tsanalyse<\/strong> zur Identifizierung dominanter Unsicherheitsquellen<\/li>\n<\/ul>\n<p>Das umfassende <a href=\"https:\/\/www.aoe.vt.edu\/content\/dam\/aoe_vt_edu\/people\/faculty\/cjroy\/Publications-Articles\/VVUQ-CMAME.Final-Accepted-FIGURES.pdf\"> vvuq-Framework von Roy et al. <\/a> integriert V &amp; V mit Unsicherheitsquantifizierung.<\/p>\n<h2>Besondere \u00dcberlegungen zu Finite-Volumen-PDE-Solvern<\/h2>\n<p>FIPY und \u00e4hnliche endliche Volumencodes haben spezifische V&amp; V-\u00dcberlegungen:<\/p>\n<h3>Diskretisierungspr\u00fcfung<\/h3>\n<ul>\n<li>\u00dcberpr\u00fcfen Sie <strong>Face Gradient <\/strong> Berechnungen mit hergestellten L\u00f6sungen, die Quellbegriffe ungleich Null erzeugen<\/li>\n<li>Testen Sie <strong>Verschiedene Netztypen<\/strong> (strukturiert vs. unstrukturiert), da die Fehlerkonstanten unterschiedlich sind<\/li>\n<li>Validierung von <strong>Flusserhaltung<\/strong> durch Berechnen von Integralbilanzen \u2013 Finite-Volumen-Methoden sollten Mengen exakt erhalten (bis zu Solver-Toleranz)<\/li>\n<\/ul>\n<h3>\u00dcbliche FIPY-spezifische \u00dcberpr\u00fcfungen<\/h3>\n<p>Wenn Sie FIPY verwenden, stellen Sie sicher, dass Sie Folgendes \u00fcberpr\u00fcft haben:<\/p>\n<ul>\n<li>Korrekte Implementierung von Randbedingungsarten (Festwert, Gradient, etc.)<\/li>\n<li>Umgang mit anisotropen oder tensorwerten Diffusionskoeffizienten<\/li>\n<li>Time-Stepping-Schemata f\u00fcr vor\u00fcbergehende Probleme (Einhaltung der CFL-Bedingung)<\/li>\n<li>Gekoppelte Physik-Wechselwirkungen (z. B. Elektrochemie + Diffusion)<\/li>\n<\/ul>\n<p>Informationen zu integrierten \u00dcberpr\u00fcfungsproblemen finden Sie in der <a href=\"https:\/\/pages.nist.gov\/fipy\/en\/benchmark_patched_2c7ac213b\/index.html\">FIPY-Benchmark-Dokumentation<\/a>.<\/p>\n<h2>Fallstudie: \u00dcberpr\u00fcfung einer Phasenfeldsimulation<\/h2>\n<p>Gehen wir durch ein konkretes Beispiel. Angenommen, Sie implementieren ein Cahn-Hilliard-Phasenfeldmodell in FIPY:<\/p>\n<ol>\n<li><strong>Code-\u00dcberpr\u00fcfung mit MMS<\/strong>: <ul> <li>W\u00e4hlen Sie eine hergestellte L\u00f6sung, die die Cahn-Hilliard-Gleichung mit einem Forcing-Term erf\u00fcllt<\/li> <li>Erzeugen Sie exakte L\u00f6sung und Quellenbegriff symbolisch<\/li> <li>Ausf\u00fchren auf einem 2D-Mesh und Vergewissern Sie sich, dass der L2-Fehler bei zweiter Ordnung konvergiert <\/li> <\/ul><\/li>\n<li><strong>L\u00f6sungs\u00fcberpr\u00fcfung<\/strong>: <ul> <li>Run Mesh-Verfeinerung (z. B. 50\u00d750, 100\u00d7100, 200\u00d7200)<\/li> <li>Compute-Schnittstellenbreite und freie Energie auf jedem Netz<\/li><li>Verwenden Sie die Richardson-Extrapolation, um den Diskretisierungsfehler in der Energie zu sch\u00e4tzen<\/li>\u203a <\/ul><\/li>\n<li><strong>Validierung<\/strong>: <ul> <li>Simulieren Sie die spinodale Zerlegung und vergleichen Sie die charakteristische L\u00e4ngenskala mit analytischen Vorhersagen oder ver\u00f6ffentlichten Ergebnissen<\/li> <li>Validieren Sie die Kinetik der Coarsing-Kinetik (L \u221d t^{1\/3}) \u00fcbereinstimmt Theorie<\/li> <\/ul><\/li>\n<li><strong>Dokumentation<\/strong>: <ul> <li>Speichern Sie alle Eingabedateien, Skripte und Ergebnisse in einem versionsgesteuerten Repository<\/li> <li>Erstellen Sie einen Verifizierungsbericht mit Plots und Tabellen<\/li> <\/ul><\/li>\n<\/ol>\n<h2>Entscheidungsleitfaden: Wann verwenden Sie welche V&amp;V-Methode?<\/h2>\n<table>\n<thead>\n<tr>\n<th>Lage<\/th>\n<th>Empfohlener Ansatz<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Neuer PDE-Code oder wesentliche \u00dcberarbeitung<\/td>\n<td>Volle MMS-Suite + Auftragsgenauigkeitspr\u00fcfung<\/td>\n<\/tr>\n<tr>\n<td>Kleinere Fehlerbehebung<\/td>\n<td>Gezielte MMS-Tests f\u00fcr betroffene Module<\/td>\n<\/tr>\n<tr>\n<td>Produktionssimulation<\/td>\n<td>L\u00f6sungspr\u00fcfung (Mesh-Studie) obligatorisch<\/td>\n<\/tr>\n<tr>\n<td>Modellentwicklungsphase<\/td>\n<td>Validierung vor 3+ Benchmark-Problemen<\/td>\n<\/tr>\n<tr>\n<td>Regulierungs- oder High-Stakes-Nutzung<\/td>\n<td>Volles ASME V&amp;V 40 Framework mit unabh\u00e4ngiger Peer Review<\/td>\n<\/tr>\n<tr>\n<td>Forschungscode ohne experimentelle Daten<\/td>\n<td>Dokumentenbeschr\u00e4nkungen; Verwenden Sie mehrere unabh\u00e4ngige \u00dcberpr\u00fcfungsmethoden<\/td>\n<\/tr>\n<tr>\n<td>Leistungsoptimierung<\/td>\n<td>Nach der Optimierung erneut verifizieren, um keine Korrektheitsregression zu gew\u00e4hrleisten<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>Bottom Line<\/strong>: Die Strenge von V &amp; V sollte mit den Folgen des Scheiterns \u00fcbereinstimmen. Der akademische Forschungskodex erfordert noch eine grundlegende \u00dcberpr\u00fcfung, aber die vollst\u00e4ndige V &amp; V 40-Konformit\u00e4t kann \u00fcbertrieben sein. Industrie- oder sicherheitskritische Anwendungen erfordern umfassende, dokumentierte V&amp;V.<\/p>\n<h2>Verwandte Anleitungen<\/h2>\n<p>Zu verwandten Themen in wissenschaftlichen Simulations-Workflows:<\/p>\n<ul>\n<li><a href=\"\/from-equations-to-simulations-the-modeling-pipeline\/\">Von Gleichungen zu Simulationen: Die Modellierungspipeline<\/a> \u2013 End-to-End-Simulationsentwicklungsprozess<\/li>\n<li><a href=\"\/using-fipy-for-phase-field-modeling\/\">Verwendung von FIPY f\u00fcr Phasenfeldmodellierung<\/a> \u2013 Praktischer PDE-Implementierungshandbuch<\/li>\n<li><a href=\"\/introduction-to-materials-modeling-for-beginners\/\">Einf\u00fchrung in die Materialmodellierung f\u00fcr Anf\u00e4nger<\/a> \u2013 Grundlagenkonzepte f\u00fcr Neuank\u00f6mmlinge<\/li>\n<\/ul>\n<h2>Zusammenfassung und n\u00e4chste Schritte<\/h2>\n<p>Validierung und \u00dcberpr\u00fcfung sind keine optionalen Add-Ons. Sie sind integraler PDE-Simulationen. Der hier beschriebene praktische Rahmen liefert eine Roadmap:<\/p>\n<ol>\n<li><strong>Start mit der Code-Verifizierung<\/strong> Mit der Methode der hergestellten L\u00f6sungen zur Festlegung der Basiskorrektheit<\/li>\n<li><strong>Numerische Fehler quantifizieren<\/strong> durch L\u00f6sungs\u00fcberpr\u00fcfung f\u00fcr jeden Produktionslauf<\/li>\n<li><strong>Validierungsnachweise<\/strong> mit Benchmark-Problemen und unabh\u00e4ngigen Daten<\/li>\n<li><strong>Standards<\/strong> wie ASME V&amp; V 10\/20, um Ihren Prozess zu strukturieren<\/li>\n<li><strong>Vermeiden Sie h\u00e4ufige Fehler<\/strong> \u2013 insbesondere die Verifizierungs-\/Validierungsverwirrung und zirkul\u00e4re Kalibrierung<\/li>\n<li><strong>Dokumente alles<\/strong> f\u00fcr Reproduzierbarkeit und Peer-Review<\/li>\n<\/ol>\n<p>Die Implementierung eines einfachen V&amp;V-Programms (MMS-Tests + Mesh-Konvergenz) erh\u00f6ht das Vertrauen in Ihre Simulationsergebnisse erheblich und spart Zeit, um Fehler fr\u00fchzeitig einzufangen.<\/p>\n<p><strong>N\u00e4chste Schritte<\/strong>: Pr\u00fcfen Sie Ihren aktuellen Simulationsworkflow. \u00dcberspringen Sie die \u00dcberpr\u00fcfung vollst\u00e4ndig? Nur Single-Mesh-Berechnungen ausf\u00fchren? F\u00fcgen Sie Ihrem n\u00e4chsten Projekt mindestens einen \u00dcberpr\u00fcfungstest (MMS oder Bestellgenauigkeit) hinzu und messen Sie den Unterschied in der Vertrauensstellung und der Fehlererkennung.<\/p>\n<h2>Ben\u00f6tigen Sie Hilfe bei der Implementierung von V &amp; V f\u00fcr Ihr Simulationsprojekt?<\/h2>\n<p>Die Etablierung eines robusten V &amp; V-Prozesses erfordert Fachwissen und Vorabinvestitionen. Wenn Sie Probleme haben mit:<\/p>\n<ul>\n<li>Einrichten hergestellter L\u00f6sungstests f\u00fcr Ihren PDE-Code<\/li>\n<li>Entwerfen von Netzkonvergenzstudien f\u00fcr komplexe Geometrien<\/li>\n<li>Validierungsergebnisse interpretieren und Unsicherheit quantifizieren<\/li>\n<li>Vorbereitung der V &amp; V-Dokumentation f\u00fcr die Ver\u00f6ffentlichung oder beh\u00f6rdliche Einreichung<\/li>\n<\/ul>\n<p>Unser Team von Computational Science-Experten kann helfen. Wir spezialisieren uns auf die Erstellung von Verifizierungs-Frameworks f\u00fcr wissenschaftliche Python-Codes, einschlie\u00dflich FIPY-basierter Simulationen. <a href=\"https:\/\/matforge.org\/category\/issue-tracking-tickets-technical-requests\/\">Wenden Sie sich \u00fcber unser Issue-Tracking-System<\/a>, um die Glaubw\u00fcrdigkeitsbed\u00fcrfnisse Ihres Projekts zu besprechen.<\/p>\n<hr>\n<p><strong>Referenzen und Weiterlesen<\/strong><\/p>\n<ul>\n<li>Roy, C. J. (2005). \"\u00dcberpr\u00fcfung von Code- und L\u00f6sungspr\u00fcfungsverfahren f\u00fcr die Computersimulation.\" <em>Journal of Computational Physics <\/em>.<\/li>\n<li>Oberkampf, W. L. &amp; Roy, C. J. (2010). <em>\u00dcberpr\u00fcfung und Validierung im wissenschaftlichen Rechnen <\/em>. Cambridge University Press.<\/li>\n<li>AIAA-Leitfaden zur Verifizierung und Validierung von Simulationen der computergest\u00fctzten Fluiddynamik (1998).<\/li>\n<li>ASME V&amp;V-Standards: <a href=\"https:\/\/www.asme.org\/codes-standards\/find-codes-standards\/standard-for-verification-and-validation-in-computational-solid-mechanics\"> v &amp; v. 10 <\/a>, <a. href=\"https:\/\/www.asme.org\/codes-standards\/find-codes-standards\/standard-for-verification-and-validation-in-computational-fluid-dynamics-and-heat-transfer\"> V &amp; V. 20 , <a href=\"https:\/\/www.asme.org\/codes-standards\/vvuq-standards\"> vvuq 1 <\/a>.<\/a.><\/li>\n<\/ul>\n"},"excerpt":{"rendered":"<p><span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Reading Time: <\/span> <span class=\"rt-time\"> 9<\/span> <span class=\"rt-label rt-postfix\">minutes<\/span><\/span>Validierung und Verifizierung (V&amp;V) sind wesentliche Qualit\u00e4tssicherungsprozesse f\u00fcr PDE-Simulationen. Die Verifizierung stellt sicher, dass Ihr Code die Gleichungen richtig l\u00f6st (das L\u00f6sen der Gleichungen richtig). Die Validierung best\u00e4tigt, dass Ihr Modell die reale Physik (L\u00f6sen der richtigen Gleichungen) genau darstellt. Ein robustes V&amp;V-Framework kombiniert die Code-Verifizierung \u00fcber Methoden wie die Methode der hergestellten L\u00f6sungen, die [&hellip;]<\/p>\n","protected":false,"raw":""},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_locale":"de_DE","_original_post":"https:\/\/matforge.org\/?p=182","iawp_total_views":0,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-812","post","type-post","status-publish","format-standard","hentry","category-simulation-modeling-projects","de-DE"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen - matforge.org<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen - matforge.org\" \/>\n<meta property=\"og:description\" content=\"Reading Time:  9 minutesValidierung und Verifizierung (V&amp;V) sind wesentliche Qualit\u00e4tssicherungsprozesse f\u00fcr PDE-Simulationen. Die Verifizierung stellt sicher, dass Ihr Code die Gleichungen richtig l\u00f6st (das L\u00f6sen der Gleichungen richtig). Die Validierung best\u00e4tigt, dass Ihr Modell die reale Physik (L\u00f6sen der richtigen Gleichungen) genau darstellt. Ein robustes V&amp;V-Framework kombiniert die Code-Verifizierung \u00fcber Methoden wie die Methode der hergestellten L\u00f6sungen, die [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/\" \/>\n<meta property=\"og:site_name\" content=\"matforge.org\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-30T12:22:33+00:00\" \/>\n<meta name=\"author\" content=\"Tomas Delgado\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tomas Delgado\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"14\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/matforge.org\\\/de\\\/validation-and-verification-for-pde-simulations-practical-framework\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/matforge.org\\\/de\\\/validation-and-verification-for-pde-simulations-practical-framework\\\/\"},\"author\":{\"name\":\"Tomas Delgado\",\"@id\":\"https:\\\/\\\/matforge.org\\\/#\\\/schema\\\/person\\\/518cdd1f18dd092f4ed738d68e540061\"},\"headline\":\"Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen\",\"datePublished\":\"2026-07-30T12:22:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/matforge.org\\\/de\\\/validation-and-verification-for-pde-simulations-practical-framework\\\/\"},\"wordCount\":2823,\"commentCount\":0,\"articleSection\":[\"Simulation & amp; Modellierungsprojekte\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/matforge.org\\\/de\\\/validation-and-verification-for-pde-simulations-practical-framework\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/matforge.org\\\/de\\\/validation-and-verification-for-pde-simulations-practical-framework\\\/\",\"url\":\"https:\\\/\\\/matforge.org\\\/de\\\/validation-and-verification-for-pde-simulations-practical-framework\\\/\",\"name\":\"Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen - matforge.org\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/matforge.org\\\/#website\"},\"datePublished\":\"2026-07-30T12:22:33+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/matforge.org\\\/#\\\/schema\\\/person\\\/518cdd1f18dd092f4ed738d68e540061\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/matforge.org\\\/de\\\/validation-and-verification-for-pde-simulations-practical-framework\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/matforge.org\\\/de\\\/validation-and-verification-for-pde-simulations-practical-framework\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/matforge.org\\\/de\\\/validation-and-verification-for-pde-simulations-practical-framework\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/matforge.org\\\/de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/matforge.org\\\/#website\",\"url\":\"https:\\\/\\\/matforge.org\\\/\",\"name\":\"matforge.org\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/matforge.org\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/matforge.org\\\/#\\\/schema\\\/person\\\/518cdd1f18dd092f4ed738d68e540061\",\"name\":\"Tomas Delgado\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/202f82c9f4f4534a3ba77bf8a8fbef09cf8489f52bdf819082f21390da4e7c9a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/202f82c9f4f4534a3ba77bf8a8fbef09cf8489f52bdf819082f21390da4e7c9a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/202f82c9f4f4534a3ba77bf8a8fbef09cf8489f52bdf819082f21390da4e7c9a?s=96&d=mm&r=g\",\"caption\":\"Tomas Delgado\"},\"sameAs\":[\"http:\\\/\\\/matforge.org\"],\"url\":\"https:\\\/\\\/matforge.org\\\/author\\\/tomas-delgado\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen - matforge.org","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/","og_locale":"de_DE","og_type":"article","og_title":"Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen - matforge.org","og_description":"Reading Time:  9 minutesValidierung und Verifizierung (V&amp;V) sind wesentliche Qualit\u00e4tssicherungsprozesse f\u00fcr PDE-Simulationen. Die Verifizierung stellt sicher, dass Ihr Code die Gleichungen richtig l\u00f6st (das L\u00f6sen der Gleichungen richtig). Die Validierung best\u00e4tigt, dass Ihr Modell die reale Physik (L\u00f6sen der richtigen Gleichungen) genau darstellt. Ein robustes V&amp;V-Framework kombiniert die Code-Verifizierung \u00fcber Methoden wie die Methode der hergestellten L\u00f6sungen, die [&hellip;]","og_url":"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/","og_site_name":"matforge.org","article_published_time":"2026-07-30T12:22:33+00:00","author":"Tomas Delgado","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Tomas Delgado","Gesch\u00e4tzte Lesezeit":"14\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/#article","isPartOf":{"@id":"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/"},"author":{"name":"Tomas Delgado","@id":"https:\/\/matforge.org\/#\/schema\/person\/518cdd1f18dd092f4ed738d68e540061"},"headline":"Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen","datePublished":"2026-07-30T12:22:33+00:00","mainEntityOfPage":{"@id":"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/"},"wordCount":2823,"commentCount":0,"articleSection":["Simulation & amp; Modellierungsprojekte"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/","url":"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/","name":"Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen - matforge.org","isPartOf":{"@id":"https:\/\/matforge.org\/#website"},"datePublished":"2026-07-30T12:22:33+00:00","author":{"@id":"https:\/\/matforge.org\/#\/schema\/person\/518cdd1f18dd092f4ed738d68e540061"},"breadcrumb":{"@id":"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/matforge.org\/de\/validation-and-verification-for-pde-simulations-practical-framework\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/matforge.org\/de\/"},{"@type":"ListItem","position":2,"name":"Validierung und Verifikation f\u00fcr PDE-Simulationen: ein praktischer Rahmen"}]},{"@type":"WebSite","@id":"https:\/\/matforge.org\/#website","url":"https:\/\/matforge.org\/","name":"matforge.org","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/matforge.org\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Person","@id":"https:\/\/matforge.org\/#\/schema\/person\/518cdd1f18dd092f4ed738d68e540061","name":"Tomas Delgado","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/secure.gravatar.com\/avatar\/202f82c9f4f4534a3ba77bf8a8fbef09cf8489f52bdf819082f21390da4e7c9a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/202f82c9f4f4534a3ba77bf8a8fbef09cf8489f52bdf819082f21390da4e7c9a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/202f82c9f4f4534a3ba77bf8a8fbef09cf8489f52bdf819082f21390da4e7c9a?s=96&d=mm&r=g","caption":"Tomas Delgado"},"sameAs":["http:\/\/matforge.org"],"url":"https:\/\/matforge.org\/author\/tomas-delgado\/"}]}},"_links":{"self":[{"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/posts\/812","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/comments?post=812"}],"version-history":[{"count":1,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/posts\/812\/revisions"}],"predecessor-version":[{"id":996,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/posts\/812\/revisions\/996"}],"wp:attachment":[{"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/media?parent=812"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/categories?post=812"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/matforge.org\/wp-json\/wp\/v2\/tags?post=812"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}