Create a rounded tip cone using planar solid for DEVICE



The elements library in FDTD Solutions and MODE solutions allows the users to create a rounded tip cone using the “custom” object. However, if someone is trying to import this structure into DEVICE (CHARGE or HEAT), they can not do it since DEVICE do not support the custom object.

One easy solution to this problem is to use the planar solid object which is available in DEVICE (and also in the optical solvers). The planar solid object can be used to create any arbitrary geometry. In this file (rounded_tip_cone.ldev (5.0 MB)) a structure group has been created that generates a planar solid to create a rounded tip cone. The input parameters to the structure group have been kept almost identical to the FDTD (custom) counterpart.

Here is one more post that shows how a truncated cone can be created using planar solid,

Radial doping of cone structure
Modeling optothermal forces
Solar cell with moth-eye antireflection coatings

I tried to use the structure in my design. But when I add it I always get the following error while building the geometry:
Mismatch between number of faces when searching for duplicates

Is there a specific reason for getting this error?


Hi. This particular error happens when the solver has trouble connecting one geometry to another (while generating the whole structure before meshing). Often when you have a curved surface touching another curved surface or a planar surface, the solver has this problem. If this is the case in your design then try using some small overlap between geometries that are touching each other.

If you are running a 3D simulation then try switching to “algorithm 2” in the solver properties as shown below:

If none of these work then if you share the file with me, I can take a look at it.


Using Algorithm 2 solved the problem in building the geometry. Thank you.

I have another problem though. At the end of the simulation, the results do not converge. drift/diffusion poisson solver fails to converge according to the log file.


If the solver fails to converge then the first thing to check would be the mesh and the doping profile. Calculate the mesh only and inspect the “grid” dataset. Make sure that the doping in getting applied properly, specially at the surfaces. Next run the simulation for zero bias only. If the simulation runs then start to apply a voltage sweep. If the sweep fails then try again using smaller steps.

For some more suggestions on how to resolve convergence problems, check out this other KX post: overflow-error.


I used the radial constant doping code for the lower part of the nanowire:

when I taper the top of the nanowire as in this file:

The results start to converge. I tried to make the mesh finer but it still did not work.


Did you mean to say the results are still not converging? I could not see the file from your google drive as it requires signing in with a google account. Can you upload the file here or is it too big? You can consider uploading the project file and the doping (.mat) file separately if that helps with the size.


Yes Sorry. I meant the results started to "diverge"
The file is still big to upload here even after I remove the doping and the generation.
I uploaded it on dropbox (I think it could be downloaded without signing in)


Hi Sara. I am sorry but I could not open the file in DEVICE (I was able to download the file without any issues). It looks like that the file might be corrupted. Do you think it got corrupted after the simulation failed? If you have a fresh copy of the file then please share it with me.

Since you were talking about tapering the top of the doping, you might find this post useful:


It actually worked when I adjusted the doping using the script in your last post.
Thanks a lot for your help.


Hi i have a problem with tunc cone in device when i simulate my design it always gives me that massege error "No area for degenerate"
can any one help