Obwohl ich Ihren speziellen Fall nicht kommentieren kann, da Sie nicht genügend Details angegeben haben, kann ich einige Hinweise zu diesem Thema geben, da ich mehrere Jahre meines Lebens damit verbracht habe, diese Konvergenzdiagramme so schön wie möglich aussehen zu lassen. Ich habe nur mit elliptischen und Sattelpunktproblemen gearbeitet und die Anleitung gilt wahrscheinlich überhaupt nicht für parabolische und hyperbolische Probleme.
Eines sollte bereits aus den Kommentaren ersichtlich sein: Es gibt keinen Grund dafür, dass die Diagramme immer wie gerade Linien aussehen, wenn Sie eine Obergrenze für den Fehler haben.
Eine andere zu realisierende Sache ist, dass solche Fehlerschätzungen normalerweise durch einige allgemeine Probleme erfüllt werden, bei denen die Grenz- und Ladedaten als Element eines Sobolev-Raums angegeben werden. Daher gibt es in der Realität viele Probleme mit unterschiedlichen Belastungen, Randbedingungen usw., die dieselbe Schätzung erfüllen - typischerweise mit einer unterschiedlichen Konstante. Bei einer numerischen Lösung für eine Folge von Maschen bleiben nur einige der Probleme nahe genug an der asymptotischen Grenze - wie durch die Schätzung definiert -, damit die Diagramme linear aussehen .
hh→0
Es ist eher eine Kunst als eine Wissenschaft, den preasymptotischen Bereich künstlich so klein wie möglich zu machen und Probleme zu finden, die hauptsächlich nahe der asymptotischen Grenze bleiben. Hier sind einige Tipps:
- sin(x)h<<π
- Stellen Sie sicher, dass es keine anderen Singularitäten als die gibt, die Sie studieren möchten.
- L2
- Stellen Sie sicher, dass die Reihenfolge der Netze verschachtelt ist. Dies verbessert häufig die Monotonie des Diagramms: Das nächste Netz sollte immer besser sein als das vorherige.
- Stellen Sie sicher, dass Sie bei der Bewertung des Fehlers eine ausreichend hohe Integrationsregel verwenden. Ich habe diesen Fehler mehr als einmal gemacht und es hat eine Weile gedauert, bis mir klar wurde, wo das Problem lag.
- Verwenden Sie keine Integrationspunkte, die sich an Elementgrenzen befinden, wenn Sie diskontinuierliche Daten über der Elementgrenze haben. Ich habe diesen Fehler auch einmal gemacht und das Debuggen hat eine Weile gedauert.
Im Allgemeinen denke ich, dass die Fehlerschätzungen nützlicher sind, wenn Sie überprüfen, ob Ihr neu implementierter Finite-Elemente-Code ordnungsgemäß funktioniert, und nicht so nützlich für angewandte Probleme, bei denen die Daten und die Randbedingungen nicht unbedingt gut genug sind, um lineare Konvergenzdiagramme zu erhalten.
Wenn Sie mehr Details zu dem vorliegenden Problem angeben, könnte ich Ihnen möglicherweise spezifischere Tipps geben. Ich denke jedoch, dass diese Tipps Ihnen helfen werden, das Problem zu finden.