Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.
3D trenches with variable angle with or without "design module" [geometry]
Posted 24.01.2022, 09:59 GMT-5 MEMS & Nanotechnology, LiveLink for MATLAB, Geometry Version 6.0 6 Replies
Please login with a confirmed email address before reporting spam
Hi,
I am modelling a material which, when chemically etched, will not produce 90deg vertical sidewalls but can have a slope of variable angle. If I would draw in my etch mask 2 vertical lines and 2 horizontal lines of equal size to produce a separate square of this material, it would not produce a cube but a trapeziodal prism. If I would get a slice of this structure, I would obersve an isoceles trapezoid: https://en.wikipedia.org/wiki/Trapezoid#/media/File:Trapezoid_special_cases.png
On the 2D plane, the ojects I am modelling aren't just a square but can be an assembly of many rectangles.
For vertical sidewalls, things are pretty straightforward: I import the "positive" (final desired shape, rather than trenches which are the negatives) 2D shape and then apply an extrusion.
However, for non-vertical angles things get hairy. For a single rectangle, I have noticed that you can somewhat create the desired trapezoidal shape using the "scales" and "displacements" options of the extrude function. For some reasons I don't quite get, when using the scales option with any value other than 1 (to scale the size of the projected extruded face), the destination face is re-centered to the origin of the plane and you need to use displacements to compensate for that.
The thing is, the displacement you need to use will depend on both the scale and the rectangle dimensions. So, if you have more than 1 rectangles in your source work plane, this technique breaks down.
Now, you could say that a possible option is to create a plane for each rectangle and perform extrusion on each. Pretty cumbersome but why not. If you do this, you still do not get the desired shape as this would create, after extrusion, "internal slopes" between two adjacent (touching) rectangles, when we only want non vertical slopes at the periphery of the coumpound object.
The solution used so far uses hexahedrons, simulating these slopes via direct writing of hexahedron coordinates. The hexahedrons are then placed next to the positive regular extruded shapes and then a boolean operation (substraction) is performed to create these slopes. This is working out for simple geometries. But as you can probably imagine, this is very, very cumbersome to programmatically define where the hexadron should be and each of their points coordinates when the base 2D geometry we want extruded starts to be very complex.
We have reached out to COMSOL support which suggested the chamber feature of the design module: https://cdn.comsol.com/product-new/design-module/full/ring-resonator-chamfer-operation-comsol.webp Unfortunately, the chamfer feature works as the radius of the rolling ball tangent to the faces adjacent to the edges: https://doc.comsol.com/5.4/doc/com.comsol.help.design/DesignModuleUsersGuide.pdf and long story short, the slope angle that you can generate with this method is 45 degree only. I really need other angles. COMSOL commented that they don't see any ways to do what we would like to do.
I was somewhat shocked to hear this as surely, I am not the only one dealing with non-vertical sidewalls. Therefore I am calling out to the community: - am I missing some obvious method here? - did anyone come up with a clever method able to automatically generate a desired slope angle after extrusion?
Ideally, in the extrusion options, we would get a "sized" option that generates a destination shape shrink or grown by x microns. "sizing" is a typical feature of layout softwares such as Klayout: https://www.klayout.de/doc/manual/layer_size.html which is why I was somewhat expecting it in the COMSOL design module.
So I thought that maybe I could generate a "sized" 2D shape of the source shape myself, position it on a new plane above the source plane and somehow connect these 2D shapes to generate the 3D trapezoid. Is this comething that coud be done?
In advance, many thanks for your support, comments and suggestions.
BR, Eric