Brandon's Semiconductor Simulator

(brandonli.net)

191 pontos | por dominikh 341 dias atrás

13 comentários

  • em3rgent0rdr
    341 dias atrás
    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
      341 dias atrás
      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
        341 dias atrás
        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.)

        • stunningllama
          341 dias atrás
          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

        • amelius
          341 dias atrás
          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.
          • Steuard
            339 dias atrás
            Ah, I see what you're getting at. My instinct here is that (exactly as you've pointed out) fields like E and B will fall off like 1/r instead of 1/r^2, but that all of the qualitative behavior will be basically the same. So I wouldn't trust this simulation to predict the precise behavior of a real circuit (even one whose shape was basically planar), but I suspect that it will behave more or less right.

            Looking at the examples, it seems like you can make 1D and 2D strings/grids of resistors here in much the same way you would in a 3D model; you just can't make a 3D grid (or non-planar circuits). My general experience working with and teaching basic circuits is that it's rare that we consider current flow in a genuinely 3D medium: the vast majority of problem-solving examples approximate wires as simple 1D paths for charge to follow, and more careful treatments that talk about where charges accumulate to guide current flow around corners, etc. still almost always illustrate their points in 2D diagrams/examples.

            So my impression is that this simulation is likely to give a pretty solid qualitative sense of how these systems work, despite its 2D framing.

          • ajb
            341 dias atrás
            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.

  • paulgerhardt
    341 dias atrás
    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...

  • gfody
    341 dias atrás
    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
      341 dias atrás
      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
    341 dias atrás
    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
      341 dias atrás
      The similarity is likely not a coincidence!

      > (c) Brandon Li, 2025. Ported to Javascript with the help of Paul Falstad.

      • stunningllama
        341 dias atrás
        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
          341 dias atrás
          It looks awesome, and I want to express my special appreciation that you used red and blue instead of red and green.
  • westurner
    341 dias atrás
    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?

    • stunningllama
      340 dias atrás
      On my info page (https://brandonli.net/semisim/info) there's a list of things my simulation can and can't do. After taking a look at the paper you mentioned, I think simulating it may very well be possible, however it might take a bit of effort. As for graphene, its band structure is different enough that I don't think it would work.

      Note that my simulation is intended for educational purposes only, not scientific research.

      - Brandon

  • spicybright
    341 dias atrás
    The UI is rough but this is very impressive!
  • kragen
    341 dias atrás
    This looks exciting, but the images make it look like maybe it's two-dimensional?
  • showmexyz
    341 dias atrás
    So how accurate are the results?
  • bdbenton5255
    341 dias atrás
    Very clean, educational and informative. Well done, from one Brandon to another!
  • cyberspacein
    341 dias atrás
    [dead]
  • gitroom
    341 dias atrás
    im super into stuff like this, takes me back to messing with circuit sims for hours
  • mhh__
    341 dias atrás
    Really sexy