Capacitance Calculation for a Parallel-Plate Capacitor: Maxwell Matrix vs. Theoretical Value #426
-
Hello, and thank you for developing such a useful library for radiation detectors. I’m currently testing it by developing a simple program to simulate a capacitor composed of two rectangular electrodes (each 2 x 2 x 0.1 cm) placed in a vacuum, with a 0.99 cm gap between their nearest sides (details in the last part). The theoretical capacitance of this setup is approximately 0.36 pF, calculated using this online calculator. However, when I calculate the capacitance matrix using SolidStateDetector (see the attached script) and then derive the capacitance using Eq. (34) from this paper, I get around 0.83 pF.
Could anyone help me understand why there’s such a discrepancy between these two capacitance values? Contents of the geometry yaml file are as follows:
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Hi, first of all thanks for your interest and for reaching out with this question. The mutual capacitance is calculated as given in Eq. (8) of the paper you were quoting and as explained in our documentation:
Now, the size of the world chosen for the simulation might influence the result. plot(sim.weighting_potentials[1], x = 0, contours_equal_potential = true, levels = 0:0.1:1, linecolor = :white)
plot!(sim.detector, st = :slice, x = 0, label = "", xlims = (-0.05,0.05), ylims = (-0.05,0.05)) Contact 1Contact 2Here, not only the volume between the plates contribute to the total capacitance but also the non-vanishing weighting potential gradients, especially left and right of the 2x2x0.99 cm^3 volume enclosed by the contact plates. The result of
For your simulations, you might wanna restrict your world to this smaller 2x2x1cm^3 volume (including contacts) by adjusting the grid section in your config file grid:
coordinates: cartesian
axes:
x:
from: -1
to: 1
boundaries:
left: reflecting
right: reflecting
y:
from: -1
to: 1
boundaries:
left: reflecting
right: reflecting
z:
from: -0.5
to: 0.5
boundaries: # beware, there was a typo in your config file
left: fixed
right: fixed In this case, the weighting potential is only calculated in a part of the previous world plot(sim.weighting_potentials[2], x = 0, contours_equal_potential = true, levels = 0:0.1:1, linecolor = :white)
plot!(sim.detector, st = :slice, x = 0, label = "", xlims = (-0.01,0.01), ylims = (-0.005,0.005)) Contact 1Contact 2with a resulting
which agrees perfectly with the quoted value. Small drawback: your method In general, it should be noted that the surroundings of the radiation detector can significantly influence its capacitance. |
Beta Was this translation helpful? Give feedback.
Hi, first of all thanks for your interest and for reaching out with this question.
This question is indeed a tricky one, but let me try to answer it.
The mutual capacitance is calculated as given in Eq. (8) of the paper you were quoting and as explained in our documentation:
ϵ0 * ϵr
Now, the size of the world chosen for the simulation might influence the result.
In your configuration file, the weighting potentials look like this:
p…