PDE-розв'язувачі для диффузійних та пов'язаних з ними моделей


12

Я намагаюсь моделювати основні напівпровідникові моделі в педагогічних цілях - починаючи з моделі Дрифт-дифузії. Хоча я не хочу використовувати напівпровідниковий симулятор, що знаходиться на полиці - я буду вивчати інші (звичайні, недавні або незрозумілі) моделі, я хочу використовувати позарядний PDE-вирішувач.

Але навіть для простого 1D випадку модель дрейфувальної дифузії складається з ряду зв'язаних нелінійних PDE:

Рівняння щільності струму J p = q p ( x ) μ p E ( x ) + q D pp

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

Рівняння безперервності p

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

Рівняння Пуассона

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

і ряд граничних умов.

Я спробував кілька вирішувачів пітонів FEM, FEniCS / Dolfin та SfePy , але не пощастило, через те, що не міг сформулювати їх у слабкій варіаційній формі з тестовими функціями.

Звичайно, є можливість реалізувати числове рішення з нуля, але я ще не вивчив FEM / Numerical глибоко, тому сподіваюся, що це не єдиний варіант, оскільки я не хочу переповнювати числові питання.

Отже, чи є пакет (попередньо відкритий код), який би взяв ці рівняння у такому вигляді і вирішив їх? А може, варіаційна форма, що вимагається інструментами, не така складна? У будь-якому випадку, які мої варіанти?

Спасибі


Редагувати: Спроба сформулювати слабку варіативну форму для FEniCS / Dolfin або SfePy

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 розв’язується рівнянням Пуассона, чи можемо ми використати нещодавно обчислене значення, дозволене в програмному забезпеченні Dolfin / FEniCS, та спростити, як ми ставимось до V у цьому другому сполученому рівнянні? Такі методи працюють в той час, як дискретизують (наприклад, Gummel, ...), що я не роблю в цих готових рішеннях!

JnnJn,Jp,n,p,VJn


1
Чому ви не можете записати їх слабкі форми?
Білл Барт

@BillBarth Я редагував своє запитання, будь ласка, подивіться. Дякую.
Віам

2
Ваша інтеграція по частинах неправильна. Перевірте формулу, відсутні ознаки, у вас більше похідних праворуч, ніж ліворуч, і ви забули про граничний інтеграл.
Вольфганг Бангерт

un

Так, я повинен був бути більш обережним. Будь ласка, перевірте мою редакцію, особливо моє запитання щодо того, як ми ставимось до V, оскільки це повинно було вирішити вже попередній PDE. Чи це впливає на варіативну форму? Дякую.
Віам

Відповіді:


5

Формування Шарфеттера-Гуммеля (SG) зазвичай використовується для вирішення рівнянь щільності струму. Це особлива рецептура, яка долає труднощі у вирішенні нелінійної залежності між потенціалом та щільністю струму.

Стандартний текст, який обговорює, як ці рівняння з використанням методів інтеграції коробки є в цій книзі: Selberherr, S., Аналіз та моделювання напівпровідникових пристроїв. Спрингер-Верлаг 1984

Цей тип моделювання називається Технологія комп'ютерного дизайну (TCAD). На відміну від методу кінцевих елементів (FEM), метод обчислення струмів використовується методом кінцевих об'ємів (FVM). Це тому, що воно вписується у формулювання SG, яке було показано (практикуючими цього методу) для роботи при вирішенні рівнянь щільності струму.

Якщо ви хочете вирішити це за допомогою узагальнених PDE, COMSOL має напівпровідниковий модуль, який вирішує цю проблему за допомогою гібридного методу FEM / FVM.

Окрім цього, комерційні та відкриті коди тренажерів TCAD перелічені тут: http://www.tcadcentral.com

Наскільки мені відомо, узагальнені PDE-розв'язувачі TCAD - це DEVSIM, FLOOPS, PROPHET. У комерційних інструментах, як правило, більшість фізичних рівнянь важко кодуються мовою, складеною на зразок C ++.


Прошу вибачення за надзвичайно пізню відповідь. Я зрозумів, що таке пряме застосування DD (навіть з SG) було досить нестабільним (моя реалізація принаймні у Fenics), тому я відмовився від нього. У пізнішому курсі VLSI я дійсно використовував інструменти Comsol та TCAD. Дякую за всебічну відповідь.
Віам
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.