Quantcast
Channel: Latest Discussions - COMSOL Forums
Viewing all articles
Browse latest Browse all 26527

Convection-diffusion equation and/or advection equation: incorrect solutions

$
0
0
Hi,

I have been working with the convection-diffusion module of the COMSOL Multiphysics module (version 4.3a).
I want to study how a charge density (a cloud of electrons) drifts horizontally and diffuses in all directions.
My question divides into three parts:

1.) 2D convection and diffusion

I started with only 2 dimensions and I defined a block of Silicon of 1 mm height and 2 mm length. The max time is set to 15 ns. In the convection-diffusion module, I set f (source) = 0, d_a (damping) = 1, and "beta" (the drift velocity) to 1.4E5 m/s in the x direction and 0 in y. (This comes from supposing a voltage of 2000 V, and a electron mobility of 1400 cm^2/(V*s).)

The diffusion coefficient "c" I set to isotropic and I varied the value.

The initial conditions for the density "u" I put to a 2D Gaussian shape,
u = exp(-((sqrt((x-DelX)^2+(y-DelY)^2)))^2/radius^2),
where DelX = 0.01, DelY = 0.05, and radius = 0.01

"u" is defined as a "Space charged density" (C/m^3).

The mesh was set to "physics-controlled" and "extremely fine".

When I set the diffusion coefficient c = 3.6E-1 [m^2/s], I see the following:
At time = 0 ns, I get a nice round blob, as expected
(see file "2D_ConvDiff_ExtrFineMesh_Circle_h0_2mm_0ns.jpg")
At time > 0 ns (for instance 3.5 ns and 7 ns), this blob moves to the right, slightly diffused in all directions
However, there seems to be a strange ripple in the tail after the blob...
(see file "2D_ConvDiff_ExtrFineMesh_Circle_h0_2mm_3p5ns.jpg")

So, my question is: why do I get these ripples?

2.) 2D addvection

When I set the diffusion coefficient to 0 (or even a very small value like 3.6E-3 [m^2/s]), the solution seems so "explode".
Unrealistic large values for w appear in the geometry and the results does not make sense anymore.
As a matter of fact, with the diffusion, c, set to 0, the equation is actually equally to an "advection equation", where I expect the density shape to move horizontally from left to right without diffusion.
However, the solution always seems to "explode" into huge values for u (of the order of 1E18, whereas the maximum should actually be 1.0).

So, my question is: how come with diffusion set to 0, the calculation collapses in 2D?

3.) 1D addvection

Next, I tried to do the same (with diffusion set to 0) in 1 dimension.
The line-length is 0.2 mm, the drift velocity (beta) is 1.4E5 m/s and the maximum time is set to 1.5 ns.

The initial density "u" I set to a Gaussian shape:
u = exp(-(x-DelX)^2/radius^2),
where DelX = 0.04 mm (to make sure the Gauss is well within the bounds of the line) and radius = 0.01 mm.

Now, I get a result similar to case 1) (however, now I have diffusion set to 0).
At time = 0 ns, I get a nice Gaussian shape
(see file "1D_DriftOnly_ExtrFineMesh_h0_0p2mm_0ns.jpg")
At time > 0 ns (for instance 3.5 ns and 7 ns), the curve moves to the right.
However, again, there appear strange ripples after the tail of the curve
(see file "1D_DriftOnly_ExtrFineMesh_h0_0p2mm_3p5ns.jpg")

So, my question is: why do I get these ripples again?

Best regards,

Machiel Kolstein

Viewing all articles
Browse latest Browse all 26527

Trending Articles