Large-area device simulation – Part C: Editing the contact geometry (shape and size)
In Part B we treated the contact geometry as fixed and explored how the resistive losses depend on material properties and scan settings. In practice, however, the most powerful knob you have is geometry: the mesh pattern, its pitch, its line width, and the device size it must serve.
In this section we will modify the physical structure of the contact. This includes swapping between different honeycomb patterns, editing the underlying mesh dimensions, and resizing the simulated substrate.
💡 Tip: If you want to generate your own mesh patterns from 2D images (e.g. from a printed mask, microscope image, or CAD export), see /manual/tutorial-shape-db-part-a.html. This is the workflow used to populate the Shape Database referenced below.
Step 1: Open the Object Editor for the metallic mesh
In the 3D view, right-click the hexagonal metallic mesh and choose Edit object (see ??). This opens the Object Editor (??).
This editor lets you change almost every aspect of the object. However, keep in mind that this mesh sits within a layered epitaxy structure, not in free space, so some options are naturally constrained by the layer stack.
- Attributes: change colour (and alpha) for clarity when visualising.
- Optical material: swap the material definition (useful if you later combine electrical + optical work).
- Object shape: select the geometric pattern used to build the mesh (this is the most important control for electrical performance).
Step 2: Changing the honeycomb pattern via the Mesh Editor
In the Object Editor, find Object shape. The mesh is currently pulled from the Shape Database (e.g. honeycomb). Click the three dots next to Edit to open the Mesh Editor (see ??).
In the Mesh Editor, click the three dots on the right of Shape from database. This opens the Shape Database browser (see ??). In this example, we navigate to a folder containing several honeycomb variants (used previously for paper figures) and select one.
Not all shapes make physical sense for contacts. A contact mesh must form a connected conducting network that interfaces sensibly with the polymer beneath it. Decorative or free-form shapes (e.g. gaussians, teapots) generally do not form a valid current-collection structure. Honeycomb-type patterns are a natural starting point because they create a connected mesh with repeated cells.
If you want to create your own patterns (for example from a printed mask image), follow the workflow in /manual/tutorial-shape-db-part-a.html and then import them into the Shape Database.
Step 3: Changing the size of the device
You can change the overall device size by clicking Substrate xz-size in the left-hand ribbon of the main window. This opens the dimension editor shown in ??.
In the example above, the substrate size has been doubled. You will immediately notice something important: the substrate grows, but the honeycomb mesh does not automatically follow. This is because the mesh is a 3D object whose absolute dimensions are set in the Mesh Editor (see ??), not by the substrate size control.
So resizing a device is a two-step operation:
- Resize the substrate (world/device size).
- Resize the mesh object in the Mesh Editor so it spans the new substrate dimensions.
Conclusion: A general workflow for complex 3D contact problems
You have now seen a complete workflow for simulating large-area transparent/metallic contacts:
- Build a layered contact stack (polymer + metal mesh + extraction contact).
- Run a scanning solve to map effective resistance and voltage loss across the device.
- Modify the geometry (mesh pattern, size, pitch) and rerun to quantify improvements.
This approach is not limited to solar cells. Any device where current must spread laterally through a resistive layer—OLED panels, electrochromics, sensors, flexible electronics, large-area photodetectors—can be treated in the same way. The key is that the physics is dominated by resistive current collection, making a 3D circuit representation both appropriate and computationally efficient.
👉 Next step: Apply this workflow to your own contact patterns by importing shapes into the Shape Database and setting resistivities to match your measured materials.