Drift-difüzyon için PDE çözücüler ve ilgili modeller


12

Drift-difüzyon modelinden başlayarak pedagojik amaçlar için temel yarı iletken modelleri simüle etmeye çalışıyorum. Hazır bir yarı iletken simülatörü kullanmak istemememe rağmen - diğer (ortak, yakın zamanda veya belirsiz) modelleri öğreneceğim, hazır bir PDE çözücüsü kullanmak istiyorum.

Ancak basit 1D durumu için bile, sürüklenme difüzyon modeli bir dizi çift doğrusal olmayan PDE'den oluşur:

Akım yoğunluk denklemleri J p = q p ( x ) μ p E ( x ) + q D pp

Jn=qn(x)μnE(x)+qDnn
Jp=qp(x)μpE(x)+qDpp

Süreklilik denklemi p

nt=1qJn+Un
pt=1qJp+Up

Poisson denklemi

(ϵV)=(pn+ND+NA)

ve bir dizi sınır koşulu.

Bazı python FEM çözücüler, FEniCS / Dolfin ve SfePy denedim , ancak test fonksiyonları ile zayıf varyasyon formunda formüle edemememden dolayı şanssızım .

Elbette sayısal çözümü sıfırdan uygulama seçeneği var ama henüz FEM / Sayısal'ı henüz incelemedim, bu yüzden umarım sayısal sorunlara boğulmak istemediğim için bu benim tek seçeneğim değil.

Öyleyse, bu denklemleri bu formda alıp çözecek bir paket (açık kaynak kodlu) var mı? Ya da belki de araçların gerektirdiği varyasyon formu o kadar da zor değil mi? Her durumda, seçeneklerim nelerdir?

Teşekkürler


Edit: FEniCS / Dolfin veya SfePy için zayıf varyasyon formu formüle girişimi

uV

nt=(C1nV+C2n)+U
C1,C2U,n,p,V

fn

Ωfnnn1ΔtdΩC1Ωfn(nV)dΩC2Ωfn2ndΩΩfnUdΩ

C1Ωfn(nV)dΩ

VV,un,nϕA=Aϕ+ϕA

C1Ωfn(nV)dΩ=C1Ωfn(Vn)+C1ΩfnnV

V, Poisson denklemi ile çözüldüğünden, Dolfin / FEniCS yazılımında izin verilen son zamanlarda hesaplanan değeri kullanabilir ve bu ikinci birleşik denklemde V'ye nasıl davrandığımızı basitleştirebilir miyiz? Bu tür teknikler, bu hazır çözücülerde yapmadığım, ayrıklaştırırken (örneğin Gummel, ...) işe yarar!

JnnJn,Jp,n,p,VJn


1
Neden zayıf formlarını yazamıyorsunuz?
Bill Barth

@BillBarth Sorumu düzenledim, lütfen bir göz atın. Teşekkürler.
Weaam

2
Parçalarla entegrasyonunuz yanlış. Formülü kontrol edin, eksik işaretler var, sağda solda olduğundan daha fazla türev var ve sınır integralini unuttunuz.
Wolfgang Bangerth

un

Evet, daha dikkatli olmalıydım. Lütfen düzenlememi kontrol edin, özellikle de V'nin önceki PDE tarafından çözülmüş olması gerektiğinden nasıl davrandığımla ilgili sorumu kontrol edin. Bunun varyasyonel form üzerinde herhangi bir etkisi var mı? Teşekkür ederim.
Weaam

Yanıtlar:


5

Scharfetter-Gummel (SG) formülasyonu, mevcut yoğunluk denklemlerini çözmek için yaygın olarak kullanılır. Bu, potansiyel ve akım yoğunluğu arasındaki doğrusal olmayan bağımlılığın çözümünde zorlukların üstesinden gelen özel bir formülasyondur.

Kutu entegrasyon yöntemlerini kullanarak bu denklemlerin nasıl olduğunu tartışan standart bir metin: Selberherr, S., Yarıiletken cihazların analizi ve simülasyonu. Springer-Verlag 1984

Teknoloji Bilgisayar Destekli Tasarım (TCAD) adı verilen bu simülasyon türü. Sonlu Elemanlar Yönteminin (FEM) aksine, akımları hesaplamak için Sonlu Hacim Metodu (FVM) kullanılır. Bunun nedeni, mevcut yoğunluk denklemlerini çözerken (bu yöntemin uygulayıcıları tarafından) çalıştığı gösterilen SG formülasyonuna uymasıdır.

Genelleştirilmiş PDE'leri kullanarak bunu çözmek istiyorsanız, COMSOL, bu sorunu melez bir FEM / FVM yöntemi kullanarak çözen bir Yarıiletken Modüle sahiptir.

Ayrıca, ticari ve açık kaynaklı TCAD simülatörleri burada listelenmiştir: http://www.tcadcentral.com

Bildiğim kadarıyla genelleştirilmiş PDE TCAD çözücüleri DEVSIM, FLOOPS, PROPHET. Ticari araçlar, fiziksel denklemlerin çoğunun C ++ gibi derlenmiş bir dilde sabit kodlanmış olma eğilimindedir.


Çok geç cevap verdiğim için özür dilerim. DD'nin böyle bir doğrudan uygulamasının (SG ile bile) oldukça kararsız olduğunu fark ettim (en azından Fenics'deki uygulamam), bu yüzden terk ettim. Daha sonraki bir VLSI kursunda, gerçekten Comsol ve TCAD araçlarını kullandım. Kapsamlı cevabınız için teşekkür ederiz.
Weaam
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.