Skip to content

Implementation of bubble depletion check in the "estimate_depletion_voltage" function #423

Closed
@zpdg

Description

@zpdg

Hi, everyone. I use SSD.jl (V0.10.2) to simulate a p-type BEGe detector ($r \times h= 40 \times 42.6$ mm, bias voltage = 4500 V). The expected depletion voltage would be above 3000 V.

However, the result of estimate_depletion_voltage is around 1400 V. So, I change the bias to 2000 V and the is_depleted does return a "true", but there is a bubble in the center of the detector (in the field plot). The hole might end up in the bubble instead of the contact. So, 2000 V might be able to deplete the detector but not enough to get rid of the bubble.

The code "estimate_depletion_voltage" only makes sure that the potential in the detector is within the range of 0 ~ bias voltage but couldn't avoid the bubble inside, while the bubble reflects a local minimum of potential inside detector (not on the boundaries).

The config is uploaded in the siggen format. (I load it with sim=Simulation{T}(siggentodict(readsiggen("./test.txt"))))
test.txt

I found that the issue #250 and #311 has talked about the problem. The docstring in the code of old_estimate_depletion_voltage shows the idea of the bubble check ("No bubble" should be equivalent to "the gradient of the superposition field $EP_i + U_D * EP_0$ becomes nowhere zero inside"). However, the result of old_estimate_depletion_voltage is also around 1400 V.
Image

I also used the siggen to calculate the depletion voltage. The result is 3560 V, which seems correct. There are three steps to calculate the depletion voltage in siggen:

  1. find the voltage that makes sure "the gradient of the superposition field $EP_i + U_D * EP_0$ becomes nowhere zero inside"
    Image
  2. find the voltage that make sure no bubble exists
    Image
  3. The depletion voltage is chosen to be the bigger one
     

Is my understanding of this correct? Will you add the implementation of the bubble depletion check in the "estimate_depletion_voltage" function? I can contribute on this, but it might take me some time since I am not very familiar to julia.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions