Re: PN junction Simulation with Mathematica
- To: mathgroup at smc.vnet.net
- Subject: [mg74137] Re: PN junction Simulation with Mathematica
- From: "Michael Weyrauch" <michael.weyrauch at gmx.de>
- Date: Mon, 12 Mar 2007 22:04:20 -0500 (EST)
- References: <et36tn$qjb$1@smc.vnet.net>
Hello, unfortuately you do not provide proper Mathematica code that one could easily run through, but looking at your equations I am pretty sure that the problem rests with Nd[x] and Na[x] in the equation for the electric field. If it is a fixed distribution of charges then it this should go into the boundary conditions. Mathematica tries to solve for that, and there is no differential equation for that.... Regards Michael <e-touch at libero.it> schrieb im Newsbeitrag news:et36tn$qjb$1 at smc.vnet.net... > Dear MathGroup > I'm a student and I'm trying to simulate the bahaviour of a p-n junction = > by solving the continuity equations for charge carriers and the poisson e= > quation. > It is a system of coupled PDEs > 1)d/dt P[x,t]=-k*P[x,t]*d/dx El[x,t] > -k*El[x,t]*d/dx P[x,t] > +k2 dd/dx2 P[x,t]; > > 2)d/dt N[x,t]=+k*N[x,t]*d/dx El[x,t] > +k*El[x,t]*d/dx N[x,t] > +k2 dd/dx2 N[x,t]; > > 3)d/dx El[x,t]=P[x,t]-N[x,t]+Nd[x]-Na[x] > > Where I want to find P[x,t],N[x,t] and El[x,t]. > Nd[x] and Na[x] are functions wich define the distribution of fixed charg= > es(and the initial conditions for P and N) > > The first two equations without the terms with El[x,t] are just simply di= > ffusion equations and I have no problems to solve them...but when I try t= > o couple them with the Electric field I get only error messages: > > "NDSolve::pdord: Some of the functions have zero differential order so th= > e \ > equations will be solved as a system of differential-algebraic equations.= > " > "NDSolve::bcart: Warning: An insufficient number of boundary conditions h= > ave \ > been specified for the direction of independent variable x. Artificial \ > boundary effects may be present in the solution." > "LinearSolve::sing: Matrix SparseArray[<180030>,<<1>>] is singular." > "NDSolve::icfail: Unable to find initial conditions which satisfy the res= > idual \ > function within specified tolerances. Try giving initial conditions for = > both \ > values and derivatives of the functions." > > I insert in NDSolve all the initials conditions wich have physically sens= > e... > -P[x,0]=UnitStep[-x] > -P[100,t]=0 > -P[-100,t]=1 > -N[x,0]=UnitStep[x] > -N[100,t]=1 > -N[-100,t]=0 > -El[x,0]=0 > -El[100,t]=0 should be not necessary > -El[-100,t]=0 should be not necessary > > I saw in the archive that somebody already tried to solve his kind of pro= > blem, but it didn't get help from those posts... > I'm prety new of Mathematica, so, if someone could help me or tell if the= > re is another way to solve this problem it would be really helpful. > Thank you > > Matteo=0A=0A=0A------------------------------------------------------=0AP= > assa a Infostrada. ADSL e Telefono senza limiti e senza canone Telecom=0A= > http://click.libero.it/infostrada=0A > >