Estoy tratando de simular modelos básicos de semiconductores con fines pedagógicos, comenzando por el modelo de difusión de deriva. Aunque no quiero usar un simulador de semiconductores estándar, aprenderé otros modelos (comunes, recientes u oscuros), sí quiero usar un solucionador de PDE estándar.
Pero incluso para el caso simple de 1D, el modelo de deriva-difusión consta de una serie de PDE no lineales acopladas:
Ecuaciones de densidad de corriente
Ecuación de continuidad
Ecuación de Poisson
y una serie de condiciones de contorno.
He intentado algunos solucionadores de Python FEM, FEniCS / Dolfin y SfePy , pero sin suerte, debido a que no puedo formularlos en la forma variada débil con funciones de prueba.
Por supuesto, existe la opción de implementar la solución numérica desde cero, pero aún no he estudiado FEM / Numerical en profundidad, así que espero que no sea mi única opción, ya que no quiero estar abrumado con problemas numéricos.
Entonces, ¿hay un paquete (pref. Código abierto) que tome estas ecuaciones, en esa forma, y las resuelva? ¿O tal vez la forma variacional requerida por las herramientas no es tan difícil? En cualquier caso, ¿cuáles son mis opciones?
Gracias
Editar: Intento de formular la forma variacional débil para FEniCS / Dolfin o SfePy
Usando tres PDE (Poisson + dos ecuaciones de continuidad con J sustituido), estamos buscando V, ny p. La ecuación de Poisson (usando una función de prueba ) es directa. Sin embargo, estoy teniendo dificultades con las ecuaciones de continuidad.
El segundo PDE (forma fuerte) donde son constantes, son funciones escalares
Deje denotar una función de prueba para el segundo PDE. Luego
Especialmente preocupante es la integral:
Pero es un vector, y son escalares. Luego, usando la identidad
Dado que V se resuelve mediante la ecuación de Poisson, ¿podemos usar el valor calculado recientemente como se permite en el software Dolfin / FEniCS y simplificar cómo tratamos a V en esta segunda ecuación acoplada? Este tipo de técnicas funcionan mientras discretizan (por ejemplo, Gummel, ...), ¡lo cual no hago en estos solucionadores listos!
Además, las condiciones de contorno se dan en términos de no , ¿cómo implementa esto? ¿Debo resolver las cinco variables , aunque está determinado por V y n?
Respuestas:
La formulación de Scharfetter-Gummel (SG) se usa comúnmente para resolver las ecuaciones de densidad de corriente. Esta es una formulación especial que supera las dificultades para resolver la dependencia no lineal entre el potencial y la densidad de corriente.
En este libro se encuentra un texto estándar que discute cómo estas ecuaciones que utilizan métodos de integración de cajas: Selberherr, S., Análisis y simulación de dispositivos semiconductores. Springer-Verlag 1984
Este tipo de simulación se llama Tecnología de Diseño Asistido por Computadora (TCAD). A diferencia del método de elementos finitos (FEM), el método de volumen finito (FVM) se utiliza para calcular las corrientes. Esto se debe a que encaja en la formulación SG que los expertos en este método han demostrado que funciona al resolver las ecuaciones de densidad de corriente.
Si desea resolver esto utilizando PDE generalizados, COMSOL tiene un módulo de semiconductores que resuelve este problema utilizando un método híbrido FEM / FVM.
Además, los simuladores TCAD comerciales y de código abierto se enumeran aquí: http://www.tcadcentral.com
Que yo sepa, los solucionadores generalizados de PDE TCAD son DEVSIM, FLOOPS, PROPHET. Las herramientas comerciales tienden a tener la mayoría de las ecuaciones físicas codificadas en un lenguaje compilado como C ++.
fuente