Physics Voxels? Pretty ambitious, to be honest. To make it playable you'll have to grossly simplify the sim and/or reduce the size & resolution of your game. Be prepared for the end result not to work as you expected. Put on your GPU compute shader hat for best results. You'll be making your own engine there. It's probably the only way to make it run fast enough to be playable. I've been down that route from different directions. Still there are 3D frameworks to get your engine started.
I'd start with something smaller than a voxel physics simulation if you haven't released a few small games yet. Spend your first time on something that won't leave you sore.
Large scale 2d (most likely 2d) simulation of a galaxy
Depends on how detailed your simulation needs to be. The "Processing" engine or other particle-heavy frameworks may be much of what you need. However, when you throw in "large scale" it typically means you're either using an engine built for making games pretty much like your game (good luck), or you're building your own game engine. Fortunately it's fairly simple to make a 2D engine these days even with SDL.
Todays huge game worlds have a hard enough time storing and syncing world events, to say nothing of running thermodynamic simulations. Maybe watch some post-mortems of games with elements you like on
https://www.gdcvault.com/ ?
If I were in your shoes, I would cache these brain babies for later. It's best to work towards the mental offspring you cherish when you have already demonstrated all the skills required to do so (make small games that each have one element of the bigger game, then make bigger game). If you don't want to quickly tear through some small game concept first, start to finish, sales and all (recommended), then at least start with a very small simulation. Find out what game you can make in that medium. You can grow from there.
Essentially, if you want to accomplish your dream, yes you'll probably need an engine for both of those simulations. If you can settle for something smaller and not quite what you had in mind, then use an engine -- one that is very multi-thread aware or has tools for doing logic in a compute shader (good luck, you'll need it).
Consolation prize:
Prototype of a 2D thermodynamic sim with 2 elements (water, and "air"). I used this to benchmark performance of browsers running a thermodynamic or other such sim.
Keys 1-4 changes views: normal, thermal absolute, thermal normalized, density. Mouse = energy input: right button add, left button remove. Remove some energy in a lower corner until a nice chunk of liquid then ice forms. You'll notice the rain becomes heavier and a very crude "storm front" rolls across the screen as rain or snow flurries. The "air" is colored orange in liquid state, green in gas state, and (white? I forget) in solid. Water is grey as gas, blue as liquid, cyan as solid. Violet colors are plasmas, but since there's no fuel you can't really keep a fire burning unless you just keep adding energy, and it quickly dissipates.
Note the very low resolution, most systems can not handle even double or tripple this, even though Javascript code is compiled to machine code these days and has had decades of intense optimizations by an entire Internet full of big powerful players... can any other scripting language say so? (and yes, I'm aware JS still sucks big time) Still this sim uses HTML5 Canvas so it could be sped up about 2x to 3x using WebGL (sans compute shader), but I wasn't trying to make a GL engine then. These are particles emulating thermal transfer and phase changes with a fairly real time timestep. I estimate a much lower resolution system based on gross approximations, and perhaps breaking time (only sim what you see) would be needed for any sizable gameworld.
There has been some aerospace companies doing work on such sims for wing icing and reentry effects, etc. Check out their white papers, and some have released source code (though the license may not permit commercial reuse). Most of their newish sims use a dynamic quad tree and are not 3D... A few cross sections will usually suffice rather than a full 3D body.
(fun starts at approx 22min)
Welcome to the engine dev club. Bottom Up design, FTW. Or, I would suggest instead: Play with some other game mechanics in an existing engine, prototype until fun, make your first published game out of that (and gain exp).
When I was a kid there was no such thing as "game engines", so we all just made game things from scratch. I see Pure BASIC is your lang of choice. I graduated from BASIC to C+Assembly pretty fast because BASIC is SLOW, too slow to do what I wanted back then (and that was just a smooth scrolling platformer). Even if translated into native code the runtime is a giant lumbering beast compared to the equivalent C program. Nowadays it's not as big of a deal, unless you're doing incredibly massive simulations.... Just don't be afraid to switch languages is all I'm saying. You learn 2 langs, you'll pick up more langs with exponential speed, eventually you'll just see "language" as some bullshit you have to put up with to express your logic on a given platform. If you're into simulations, you'll have to get familiar with low level stuff someday anyhow.
Don't take my advice at face value. Everyone is different, so do some soul searching and ask around. Who knows, you could be the genius that makes pure basic into the world's best physics simulation lang. Anything is possible in this magical realm. After all, when you gaze at night into the vault of the heavens all you see is magic (I'm not even joking, Padawan).