FastFieldSolvers Forum
FastFieldSolvers Forum
Home | Profile | Register | Active Topics | Members | Search | FAQ
Username:
Password:
Save Password
 All Forums
 FastFieldSolvers
 FasterCap and FastCap2
 When should the dielectric around the metal be con
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

teny

China
14 Posts

Posted - Sep 03 2023 :  14:32:14  Show Profile  Reply with Quote
Dear Enrico,
When using FasterCap, I encountered some confusion and would like to consult with you.
* conductor | dielectric | offset
* name | constant | in space
*
C cube3.qui 1.000000 0.0 0.0 0.0
C cube3.qui 2.000000 2.0 0.0 0.0
Is it not accurate enough to describe the metal cube embedded in different electrolytes in this way?"
Do we need to introduce two more dielectric structures#65311;
D cube4.qui 2.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0
D cube5.qui 1.0 2.0 0.0 0.0 0.0 0.0 0.0 0.0

"Is it correct that the computed results show C12 != C21?"



Enrico

530 Posts

Posted - Sep 09 2023 :  14:21:09  Show Profile  Reply with Quote
Hi Teny,

C12 should be almost equal to C21.

I am not sure from your input file if the specification is correct or not; however something is strange. I would expect e.g. a dielectric cube containing the second conductor cube3.qui, defining an enclosing dielectric volume, with a 2 to 1 relative dielectric interface.

I am not sure what is the purpose of cube4.qui.

In general, you should specify the dielectric interface between the different dielectric materials. Usually this is a closed surface; it may be open if the 'far away' parts of the dielectric interface are distant enough to play a limited role in the calculations.

Best Regards,
Enrico

Go to Top of Page

teny

China
14 Posts

Posted - Sep 11 2023 :  07:12:52  Show Profile  Reply with Quote
quote:
Originally posted by Enrico

Hi Teny,

C12 should be almost equal to C21.

I am not sure from your input file if the specification is correct or not; however something is strange. I would expect e.g. a dielectric cube containing the second conductor cube3.qui, defining an enclosing dielectric volume, with a 2 to 1 relative dielectric interface.

I am not sure what is the purpose of cube4.qui.

In general, you should specify the dielectric interface between the different dielectric materials. Usually this is a closed surface; it may be open if the 'far away' parts of the dielectric interface are distant enough to play a limited role in the calculations.

Best Regards,
Enrico




Dear Enrico,
I've created a simple test case.
test.lst

C in_cube.qui 3.0 0.0 0.0 0.0 0xd8d8d8ff


* dielectric medium
D big_cube.qui 1.0 3.0 0.0 0.0 0.0 2.000000000 2.000000000 2.000000000 - 0xa793b4ff



C out_cube.qui 1.0 0.0 0.0 0.0 0xd8d8d8ff


in_cube.qui
T 5 2.000000000 2.000000000 2.000000000 3.000000000 3.000000000 2.000000000 3.000000000 2.000000000 2.000000000
T 5 2.000000000 3.000000000 2.000000000 3.000000000 3.000000000 2.000000000 2.000000000 2.000000000 2.000000000
T 5 2.000000000 2.000000000 2.000000000 2.000000000 3.000000000 3.000000000 2.000000000 3.000000000 2.000000000
T 5 2.000000000 2.000000000 3.000000000 2.000000000 3.000000000 3.000000000 2.000000000 2.000000000 2.000000000
T 5 3.000000000 2.000000000 2.000000000 3.000000000 2.000000000 3.000000000 2.000000000 2.000000000 2.000000000
T 5 2.000000000 2.000000000 2.000000000 3.000000000 2.000000000 3.000000000 2.000000000 2.000000000 3.000000000
T 5 2.000000000 2.000000000 3.000000000 3.000000000 2.000000000 3.000000000 3.000000000 3.000000000 3.000000000
T 5 2.000000000 3.000000000 3.000000000 2.000000000 2.000000000 3.000000000 3.000000000 3.000000000 3.000000000
T 5 3.000000000 2.000000000 2.000000000 3.000000000 3.000000000 2.000000000 3.000000000 3.000000000 3.000000000
T 5 3.000000000 2.000000000 3.000000000 3.000000000 2.000000000 2.000000000 3.000000000 3.000000000 3.000000000
T 5 3.000000000 3.000000000 2.000000000 2.000000000 3.000000000 2.000000000 3.000000000 3.000000000 3.000000000
T 5 2.000000000 3.000000000 2.000000000 2.000000000 3.000000000 3.000000000 3.000000000 3.000000000 3.000000000
out_cube.qui
T 3 6.000000000 2.000000000 2.000000000 7.000000000 3.000000000 2.000000000 7.000000000 2.000000000 2.000000000
T 3 6.000000000 3.000000000 2.000000000 7.000000000 3.000000000 2.000000000 6.000000000 2.000000000 2.000000000
T 3 6.000000000 2.000000000 2.000000000 6.000000000 3.000000000 3.000000000 6.000000000 3.000000000 2.000000000
T 3 6.000000000 2.000000000 3.000000000 6.000000000 3.000000000 3.000000000 6.000000000 2.000000000 2.000000000
T 3 7.000000000 2.000000000 2.000000000 7.000000000 2.000000000 3.000000000 6.000000000 2.000000000 2.000000000
T 3 6.000000000 2.000000000 2.000000000 7.000000000 2.000000000 3.000000000 6.000000000 2.000000000 3.000000000
T 3 6.000000000 2.000000000 3.000000000 7.000000000 2.000000000 3.000000000 7.000000000 3.000000000 3.000000000
T 3 6.000000000 3.000000000 3.000000000 6.000000000 2.000000000 3.000000000 7.000000000 3.000000000 3.000000000
T 3 7.000000000 2.000000000 2.000000000 7.000000000 3.000000000 2.000000000 7.000000000 3.000000000 3.000000000
T 3 7.000000000 2.000000000 3.000000000 7.000000000 2.000000000 2.000000000 7.000000000 3.000000000 3.000000000
T 3 7.000000000 3.000000000 2.000000000 6.000000000 3.000000000 2.000000000 7.000000000 3.000000000 3.000000000
T 3 6.000000000 3.000000000 2.000000000 6.000000000 3.000000000 3.000000000 7.000000000 3.000000000 3.000000000

big_cube.qui

T 3 0.000000000 0.000000000 0.000000000 4.000000000 4.000000000 0.000000000 4.000000000 0.000000000 0.000000000
T 3 0.000000000 4.000000000 0.000000000 4.000000000 4.000000000 0.000000000 0.000000000 0.000000000 0.000000000
T 3 0.000000000 0.000000000 0.000000000 0.000000000 4.000000000 4.000000000 0.000000000 4.000000000 0.000000000
T 3 0.000000000 0.000000000 4.000000000 0.000000000 4.000000000 4.000000000 0.000000000 0.000000000 0.000000000
T 3 4.000000000 0.000000000 0.000000000 4.000000000 0.000000000 4.000000000 0.000000000 0.000000000 0.000000000
T 3 0.000000000 0.000000000 0.000000000 4.000000000 0.000000000 4.000000000 0.000000000 0.000000000 4.000000000
T 3 0.000000000 0.000000000 4.000000000 4.000000000 0.000000000 4.000000000 4.000000000 4.000000000 4.000000000
T 3 0.000000000 4.000000000 4.000000000 0.000000000 0.000000000 4.000000000 4.000000000 4.000000000 4.000000000
T 3 4.000000000 0.000000000 0.000000000 4.000000000 4.000000000 0.000000000 4.000000000 4.000000000 4.000000000
T 3 4.000000000 0.000000000 4.000000000 4.000000000 0.000000000 0.000000000 4.000000000 4.000000000 4.000000000
T 3 4.000000000 4.000000000 0.000000000 0.000000000 4.000000000 0.000000000 4.000000000 4.000000000 4.000000000
T 3 0.000000000 4.000000000 0.000000000 0.000000000 4.000000000 4.000000000 4.000000000 4.000000000 4.000000000

The iterative error needs to be set to 0.001 for the results to converge. Is it true that for structures with dielectrics, the results are hard to converge?

I would like to ask you how to construct a model of multilayer dielectric stacking#65311;
"For example, Figure 7 in Reference“An Efficient Algorithm for the Parameter Extraction
of 3-D Interconnect Structures in the VLSI Circuits:
Domain-Decomposition Method”

How should the boundary between different dielectrics be defined? And there is metal at the boundary?

Is it cumbersome to handle the interfaces between different dielectrics separately#65311;



Go to Top of Page

Enrico

530 Posts

Posted - Sep 21 2023 :  17:56:17  Show Profile  Reply with Quote
Dear Teny,

I am not sure what you mean by 'reaching convergence', i.e. if the algorithm takes a long time to provide you a result, or if you mean seeing C12 reasonably approaching the value of C21.

I ran your example files and I get

g1_5  1.49362e-010 -2.2514e-011 
g2_3  -2.35493e-011 7.68439e-011


out of the box (i.e. without tuning any parameter) from FasterCap.

You may note however that this results from a (still) quite coarse discretization of the geometry.

You may try running the same refined input file in FastCap2; you will see that in this case C12 = C21 exactly. However, be aware that FastCap2 enforces the symmetry, by averaging C12 and C21.

Said that, are there ways to improve the symmetry?

You may try increasing the -a parameter in FasterCap, so you have more panels. However your best option in this case is enabling -g, as the collocaton method is less precise for the same number of panels with respect to the integrals calculations.

Using -g, you get


g1_5  1.48506e-010 -2.30382e-011 
g2_3  -2.37325e-011 7.7381e-011


which is actually quite good for the level of discretization you have, that is still coarse.

The symmetrized C12 value is (23.04 pF + 23.73 pF) / 2 = 23.39 pF with an error of 1.5% (remember that the target error of FasterCap is around 1%).


Regarding your question

quote:
I would like to ask you how to construct a model of multilayer dielectric stacking, for example, Figure 7 in Reference “An Efficient Algorithm for the Parameter Extraction of 3-D Interconnect Structures in the VLSI Circuits:
Domain-Decomposition Method”

How should the boundary between different dielectrics be defined? And there is metal at the boundary?


The boundary between different dielectrics must be defined with the D statement; note however that when the metal is at the interface, you should NOT overlap panels belonging to D and C definitions, but use two or more C definitions, connected together with a trailing '+', and specified with different permittivities according to which surface (group of panels) is in contact with what. You can find some example in the 'samples' directory.

I agree that the definition of the dielectric interface is not easy when manually writing the input file, as most of the time you need to cut the dielectric interface where the metal intersect it. This is why for complex shapes you probably could benefit from the help of a CAD; I published for instance some Python script to be used with FreeCAD for easing the creation and export of the panel definitions, you can find them with the E.M. Workbench for FreeCAD.

In the case at hand, however, note that you don't actually have 7 different dielectric interfaces, as the regions with different permittivities are 'only' four: 2, 3, 4, and 5 relative permittivity values.

Best,
Enrico
Go to Top of Page

teny

China
14 Posts

Posted - Sep 24 2023 :  16:04:46  Show Profile  Reply with Quote
Dear Enrico,
Thank you very much for your response!
quote:

I am not sure what you mean by 'reaching convergence', i.e. if the algorithm takes a long time to provide you a result, or if you mean seeing C12 reasonably approaching the value of C21.

When C12 = C21, does that mean a smaller iteration error should be set?

quote:


The boundary between different dielectrics must be defined with the D statement; note however that when the metal is at the interface, you should NOT overlap panels belonging to D and C definitions, but use two or more C definitions, connected together with a trailing '+', and specified with different permittivities according to which surface (group of panels) is in contact with what. You can find some example in the 'samples' directory.




Does this imply that the interfaces between the two dielectrics need to be defined separately? What if I choose not to define this interface and simply delete it?

If a metal plate is located at the interface between two dielectrics, how should the permittivity around this metal plate be defined? Should it be set to the permittivity of dielectric 1 or dielectric 2?"
Go to Top of Page

Enrico

530 Posts

Posted - Sep 25 2023 :  16:40:30  Show Profile  Reply with Quote
Hi Teny,

there will always be a small asymmetry between C12 and C21 due to numerical errors. However you may try to minimize it by playing on some parameters; a smaller iteration error not necessarily helps you in this respect. Some of the asymmetry can be caused by the geometrical discretization of the structure, in particular of the dielectric interfaces; this can be solved only by a more physical representation, not by lowering the target error. However, in case there are large geometrical ratios (i.e. large flat structures with small gaps etc.) you may have to play with the '-d' parameter, see the Samples for the parallel plate capacitors for some tips & tricks here.

For what regards the dielectric interfaces, I suggest you to read our paper "The Treatment of Dielectrics in FasterCap", available at ht*ps://w*w.fastfieldsolvers.com/Papers/The_Treatment_of_Dielectrics_in_FasterCap_WP130527_R01.pdf (replace the anti-spam characters with the obvious correspondents).
This should help shedding some light on the matter.

Best,
Enrico


Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
FastFieldSolvers Forum © 2020 FastFieldSolvers S.R.L. Go To Top Of Page
Powered By: Snitz Forums 2000 Version 3.4.06