[HN Gopher] Brandon's Semiconductor Simulator
       ___________________________________________________________________
        
       Brandon's Semiconductor Simulator
        
       Author : dominikh
       Score  : 178 points
       Date   : 2025-05-10 00:37 UTC (22 hours ago)
        
 (HTM) web link (brandonli.net)
 (TXT) w3m dump (brandonli.net)
        
       | em3rgent0rdr wrote:
       | When spice simulation isn't deep enough... Very educational to
       | show how circuit elements work "under the hood"...for example the
       | LC example doesn't use an L element and a C element as building
       | blocks, but rather it is the two metal plates in close contact
       | which form the bulk of the circuit's capacitance and it is the
       | loop of metal itself which form the inductance.
        
         | amelius wrote:
         | I wonder how they simulate EM in only 2 dimensions.
         | 
         | I also wonder why the simulator only allows to show E and D
         | fields, and not H and B.
        
           | Steuard wrote:
           | I don't pretend to know what this simulation is doing, but
           | for the record, electromagnetism works just fine in 2D. You
           | might be thinking "but magnetic fields are intimately tied to
           | cross products, which only work in three dimensions." But you
           | can set up the equations of electromagnetism just fine either
           | using differential forms or bivector magnetism
           | (https://arxiv.org/abs/2309.02548), and it works in any
           | dimension you'd like. (The cross product version is really a
           | narrow and sometimes misleading special case.)
           | 
           | Possibly related: there are options to "View B" and "View H"
           | in the _scalar_ dropdown, not in the vector one. That may be
           | closely related to the fact that in two dimensions, the
           | magnetic field has just a single component. Whether you
           | describe is as a 2-form or a bivector, the magnetic field is
           | an antisymmetric rank-2 tensor: an antisymmetric matrix. In
           | 3D, that means 3 independent components, and there 's a one-
           | to-one mapping to vectors (more or less). But in 2D, an
           | antisymmetric matrix has just one independent component. (And
           | in 4D, it's got six: this is precisely the relativistic
           | electromagnetic field tensor, that in 3D splits into an
           | electric part and a magnetic part. My paper has more
           | details.)
        
             | amelius wrote:
             | Thanks but I was thinking more about how fields drop off in
             | 2D space versus 3D space. Simple electrostatic example:
             | consider a 1D string of identical resistors. Voltage drops
             | linearly as you go along this string. Now consider a 2D
             | grid of resistors: voltage does not change linearly anymore
             | if you move between two points (current will move in a more
             | complicated spread-out pattern). So the dimensionality
             | changes how fields behave.
        
               | ajb wrote:
               | That's true, but it's actually a property of the circuit.
               | Any circuit that fits into a 2d space will work the same
               | if simulated in 3d: voltage will still drop off linearly
               | along a 1d resistor.
               | 
               | This is because it's actually an emergent property
               | already in 2d space.
               | 
               | Consider a resistor shaped like a capital letter Z in 2d
               | space, with ground at one end and 1V the other. (Assume
               | also that the Z has a square aspect ratio). The potential
               | along the bar in the middle will initially be equal,
               | because all points on the bar are equidistant from our
               | voltage sources (AKA charges) . But the potential will
               | drop along the arms of the Z. So charge will move along
               | the arms and accumulate at the corners, until there is
               | _also_ a voltage drop along the bar, and ohms law holds.
        
             | stunningllama wrote:
             | That's exactly right! In my simulation quantities like E
             | and J are vectors with x and y components. In contrast B
             | can be thought of as a vector (or bivector, technically)
             | pointing in the z direction, but since it it only has one
             | component it's simpler to just lump it in with the other
             | scalars. (Aside: Having the simulation be in 2D brings in
             | some interesting toplogical restrictions on circuits).
             | 
             | - Brandon
        
       | gfody wrote:
       | Sebastian Lague has been making one of these and youtubing it,
       | the videos are great here's the latest one
       | https://www.youtube.com/watch?v=HGkuRp5HfH8
        
         | gblargg wrote:
         | Note that these are at very different levels of detail. Lague's
         | is at the digital logic level, while Brandon's is some level
         | around atoms/electrons.
        
       | petermcneeley wrote:
       | Amazing work feels very similar to Paul Falstad page
       | https://www.falstad.com/emstatic/index.html.
       | 
       | This really needs a WebGPU port. Multigrid on a GPU is moderately
       | easy.
        
         | 1d22a wrote:
         | The similarity is likely not a coincidence!
         | 
         | > (c) Brandon Li, 2025. Ported to Javascript with the help of
         | Paul Falstad.
        
           | stunningllama wrote:
           | Brandon here. I was very much inspired by Falstad's applets.
           | I had him take a look at my simulation and he generously
           | offered to make a JS port.
        
             | kragen wrote:
             | It looks awesome, and I want to express my special
             | appreciation that you used red and blue instead of red and
             | green.
        
       | mhh__ wrote:
       | Really sexy
        
       | paulgerhardt wrote:
       | Fun. I am reminded of the long forgotten Zachtronics
       | semiconductor game "KOHCTPYKTOP: Engineer of the People" [1]
       | 
       | [1] https://www.zachtronics.com/kohctpyktop-engineer-of-the-
       | peop...
        
         | djmips wrote:
         | Did you know that archive supports old Flash games like this
         | via the Ruffle Flash emulator?
         | 
         | https://web.archive.org/web/20160305205215/http://www.zachtr...
        
           | hteaf wrote:
           | cefFlashbrowser can do it better
        
         | ryani wrote:
         | This is also available (with an included Flash emulator, so
         | playable on modern machines) in Zach's free retrospective
         | "Zach-like" [1]
         | 
         | [1] https://store.steampowered.com/app/1098840/ZACHLIKE/
        
         | HKH2 wrote:
         | ChipWizard is the updated version and it's in Last Call BBS
         | (from Zachtronics).
        
       | spicybright wrote:
       | The UI is rough but this is very impressive!
        
       | bdbenton5255 wrote:
       | Very clean, educational and informative. Well done, from one
       | Brandon to another!
        
       | gitroom wrote:
       | im super into stuff like this, takes me back to messing with
       | circuit sims for hours
        
       | kragen wrote:
       | This looks exciting, but the images make it look like maybe it's
       | two-dimensional?
        
       | showmexyz wrote:
       | So how accurate are the results?
        
       | westurner wrote:
       | Which other simulators show electron charge density and heat
       | dissipation?
       | 
       | Can this simulate this?:
       | 
       | "Synaptic and neural behaviours in a standard silicon transistor"
       | (2025) https://www.nature.com/articles/s41586-025-08742-4 ..
       | https://news.ycombinator.com/item?id=43506198
       | 
       | What about (graphene) superconductors though?
        
       ___________________________________________________________________
       (page generated 2025-05-10 23:01 UTC)