Son birkaç gündür bu hatayı hata ayıklamaya çalışıyorum.
Poisson denklemini, bilinmeyenlerin hücre merkezlerinde ve hücre yüzlerindeki akılarda tanımlandığı, muntazam olmayan bir sonlu hacim ağında bir adım yük dağılımı (elektrostatik / yarı iletken fiziğinde ortak bir sorun) için çözüyorum.
ücret profili (kaynak terim) tarafından verilir,
ve sınır koşulları,
ve etki alanı .
Advection-difüzyon-reaksiyon denklemini çözmek için geliştirilen kodu kullanıyorum (notlarımı buraya yazdım, http://danieljfarrell.github.io/FVM ). Adveksiyon-difüzyon-reaksiyon denklemi Poisson denkleminin daha genel bir halidir. Aslında Poisson denklemi, adveksiyon hızı sıfıra ayarlanarak ve geçici terim kaldırılarak geri kazanılabilir.
Kod, üniform, üniform olmayan ve rastgele ızgaralar için bir dizi duruma karşı test edilmiştir ve adveksiyon-difüzyon-reaksiyon denklemi için her zaman makul bir çözüm üretir ( http://danieljfarrell.github.io/FVM/examples.html ).
Kodun nerede bozulduğunu göstermek için aşağıdaki örneği yaptım. Ben kurulumu muntazam 20 hücre geçirilir ve daha sonra hale düzgün olmayan bir tek hücre kaldırarak. Sol şekilde hücreyi çıkardım ve sağda Kaldırıldı. 9. hücre, kaynak terimin (yani yükün) işaretini değiştirdiği bölgeyi kapsar. Hata , reaksiyon teriminin işaretini değiştirdiği bir bölgede ızgara tekdüze olmadığında görünür . Aşağıda görebileceğiniz gibi.
Bu soruna neden olabilecek bir fikir var mı? Takdir yetkisine ilişkin daha fazla bilginin yararlı olup olmayacağını bana bildirin (bu soruya çok fazla ayrıntı eklemek istemedim).