[{"data":1,"prerenderedAt":189},["ShallowReactive",2],{"project-47039044":3},{"id":4,"name":5,"line":5,"line_source":6,"title":7,"url":8,"domain":9,"maker":10,"posted_at":11,"year":12,"points":13,"comments":14,"rank_in_year":15,"shown_in_year":16,"top":17,"tier":18,"category":19,"subcategory":20,"format":21,"keywords":22,"reception":27,"sentiment":28,"stance_mix":29,"scored_comments":32,"aspects":33,"strip":38,"post_text":40,"what":41,"said":65,"maker_in_thread":116,"shape":125,"grid":128,"attempts":147,"same_week":152,"maker_shows":139,"maker_hidden":181,"reader_version":182,"card":183},"47039044","2D Coulomb Gas Simulator","title","Show HN: 2D Coulomb Gas Simulator","https:\u002F\u002Fsimonhalvdansson.github.io\u002F2D-Coulomb-Gas-Tools\u002Findex_gpu.html","simonhalvdansson.github.io","swesnow",1771269466,2026,44,9,1324,4366,31,"shown","learning_science","physics simulation","web_app",[23,24,25,26],"coulomb gas","webgpu simulation","random matrix theory","mathematical physics","roasted",-0.143,{"positive":30,"neutral":30,"mixed":30,"critical":31},1,3,6,{"execution":34,"performance":36,"design":37},{"positive":35,"critical":35},0,{"positive":35,"critical":31},{"positive":30,"critical":35},[31,35,31,39,35,30,30,30,35],5,"A pretty simple but fun to play with simulator for a concept from mathematical physics called the \"2D Coulomb gas\". I originally made this for my Bachelor's thesis to create pretty pictures and build intuition but have recently gotten it a fresh coat of paint and better performance curtesy of WebGPU acceleration (ported with liberal help from Codex to get through all of the boilerplate).\n\nPlay around with it - hopefully read up more on the 2D Coulomb gas because it is an incredibly deep topic research wise.",{"problem":42,"audience":48,"pricing":48,"motivation":49,"time_to_build":48,"stack":53,"openness":62,"stage":63,"team_size":64},{"value":43,"source":44,"evidence":45},"Builds intuition for the 2D Coulomb gas and produces pretty pictures of its particle distributions","maker",[46],{"id":47},"post",null,{"value":50,"source":44,"evidence":51},"Originally made for a Bachelor's thesis to create pictures and build intuition; recently updated for performance and looks",[52],{"id":47},[54,58],{"value":55,"source":44,"evidence":56},"WebGPU",[57],{"id":47},{"value":59,"source":44,"evidence":60},"Built with help from Codex",[61],{"id":47},"unknown","launched","solo",{"praise":66,"objections":79,"requests":98,"questions":109,"alternatives":115},[67],{"value":68,"source":69,"evidence":70},"Fun to play with and mesmerizing visuals","commenter",[71,75],{"id":72,"by":73,"text":74},"47039855","bizzyskillet","Awesome! Beautiful work. Mesmerizing, even",{"id":76,"by":77,"text":78},"47041669","gus_massa","Note 1: I had to go to the middle and reduce the number of particles to 1000 to be able to run it in my phone. Note 2: In this case, 2D means that the force is proportional to…",[80,92],{"value":81,"source":69,"evidence":82},"Runs poorly on phones and high particle or steps settings can stall mobile browsers",[83,84,88],{"id":76,"by":77,"text":78},{"id":85,"by":86,"text":87},"47040230","zeitgeistcowboy","Warning: if you increase the steps per frame it will break your phone. At least with my iPhone and Safari it stalls the entire phone.",{"id":89,"by":90,"text":91},"47040339","xattt","Yes, the web page persists through reboots. You have to painfully force quit Safari by going through the motions of the gestures, wait for the phone to respond, and then quit…",{"value":93,"source":69,"evidence":94},"Higher-power potentials like z^20 cause numerical instability with NaNs",[95],{"id":96,"by":77,"text":97},"47046572","I got better results with N=100, and the time and frames bars at the top in the middle. It reach the equilibrium in ~5 seconds, so it's easy to test and compare the different…",[99,103],{"value":100,"source":69,"evidence":101},"Option to switch between 2D and 3D force laws for comparison",[102],{"id":76,"by":77,"text":78},{"value":104,"source":44,"evidence":105},"Better defaults for phones",[106],{"id":107,"by":10,"text":108},"47045335","1: Sorry about that, the default 20,000 is to make it look nice on computers but I should probably drop it a bit for phones, that's reasonable. 2: Yeah this part is important and…",[110],{"value":111,"source":69,"evidence":112},"Whether a 3D potential gives uniform density like the Ginibre potential",[113,114],{"id":107,"by":10,"text":108},{"id":96,"by":77,"text":97},[],{"comments":31,"answered":35,"key":117},[118,119,122],{"id":107,"text":108},{"id":120,"text":121},"47045349","Thanks I agree it is mesmerizing!",{"id":123,"text":124},"47045348","True, you'd think Safari wouldn't let websites go so crazy with WebGPU :)",{"commenters":32,"max_depth":31,"maker_replies":31,"first_comment_mins":126,"lifespan_hours":127},67,17,[129,131,133,135,137,138,141,142,145],[76,35,31,130,77,35],"project\u002Fneutral\u002Fexecution",[107,35,35,132,10,30],"maker\u002Fpositive\u002Fidea",[96,35,31,134,77,35],"project\u002Fmixed\u002Fperformance",[72,30,39,136,73,35],"project\u002Fpositive\u002Fdesign",[120,30,35,136,10,30],[85,139,30,140,86,35],2,"project\u002Fcritical\u002Fperformance",[89,139,30,140,90,35],[143,139,30,140,144,35],"47040752","klysm",[123,139,35,146,10,30],"project\u002Fneutral\u002Fperformance",[148,151],{"id":149,"t":150,"points":30,"comments":35},"46123375",1764694812,{"id":4,"t":11,"points":13,"comments":14},[153,158,163,167,172,176],{"id":154,"name":155,"points":156,"category":157},"47031334","Jemini",488,"ai",{"id":159,"name":160,"points":161,"category":162},"47051852","AsteroidOS 2.0",470,"hardware",{"id":164,"name":165,"points":166,"category":19},"47026186","Microgpt",282,{"id":168,"name":169,"points":170,"category":171},"47040375","FreeFlow",277,"productivity",{"id":173,"name":174,"points":175,"category":19},"47008163","Data Engineering Book",251,{"id":177,"name":178,"points":179,"category":180},"47011567","SQL-tap",233,"dev_tools",false,"v2",{"id":184,"name":5,"line":5,"ai":181,"cat":19,"year":12,"points":13,"comments":14,"rec":27,"s":185,"top":17,"kw":186,"maker":10,"domain":9,"tier":18,"attempts":139,"strip":187,"url":8,"mix":188,"praise":68,"objection":81,"sub":20},47039044,-0.14,[23,24,25,26],"303501110",[30,30,30,31],1794036693421]