Samin Yasar Siddiqui

I build things that do real maths (well, most of them)

Hi. I'm a student in 12th Grade and most of the things that I make are physics/maths related because it's the stuff that I genuinely find interesting.

I like software that does its own calculations. So basically, not a page that looks like it's calculating something but an actual solver that you can read the source of. Everything here is plain HTML, CSS and JavaScript.

Outside of this, I am currently working on a project that predicts when jet engines are going to fail.

01 The ballistics desk

Move the sliders and the dashed line updates. Press Space and the solid one shows you what actually happens. They're the same arc, so they can't disagree with each other.

Fig. 1 Trajectory in the vertical plane. Grid squares are 50 m. ready
75 m/s
45°
9.81 m/s²
0.0035
5.0 m/s headwind
presets:
Apogee 0.00 m
Range 0.00 m
Time of flight 0.00 s
Impact speed 0.00 m/s
Cost of the air 0.00 m

Space fire   S keep   C clear   P parabola   M mute

Kept shots 0 of 5

# v angle g wind range apogee
Nothing kept yet. Fire something and press S.

02 Why not just use the formula

Every physics textbook just gives you the range of a projectile as v² sin(2θ) / g. It's a lovely equation but it is wrong the moment there is air in the room. It is because it assumes nothing pushes back on the projectile, which is only true in a vacuum.

So, this page doesn't use it (except as the faint red line for comparison). Instead, it steps the flight forward in 16 millisecond slices and at every slice works out how hard the air is pushing. The push goes with the square of speed, so a fast projectile loses far more than a slow one, and it points backwards along the direction the projectile is moving through the air, not along the ground.

A sketch of the projectile part way through its flight, with arrows for velocity, drag, gravity and wind
Fig. 2 Drag lines up with the air, not the ground, so the wind rotates it.

That last distinction is the whole reason the wind slider is interesting. If I treated wind as "shift the landing point left a bit", a headwind would only shorten the shot. Because it goes inside the drag term instead, a headwind also makes the drag itself stronger, so the shot comes down steeper and lands harder.

The honest caveat: 16 ms forward Euler is the crude way to do this. With the drag slider near the top a proper Runge-Kutta step would put the impact point somewhere visibly different. I know. It's on the list.

03 Things I like, and why they're in here

86 — Eighty-Six

The emotions, mostly. It is the closest thing to a perfect anime I have watched and it earns every bit of that. The Juggernauts help: four-legged, badly armoured, permanently short of parts, and the people inside them keep going anyway.

Titanfall 2

The movement. Nothing else has ever felt that connected to what my hands were doing. It's the bar I measure interfaces against: does this respond the instant I ask it to, or does it think about it first.

Elden Ring

The boss fights first, and then the art. Almost every area looks like somebody drew it because they wanted to and not because a slot on a map needed filling. It also refuses to explain itself, which I respect.

The Last of Us

Part II sat on me for about a week. Also the best argument I know that you can build something small and rough out of what's lying around and it'll hold.

04 What I'm working on

Explainable AI for turbofan engine health

Predicting the remaining useful life of a high-bypass turbofan from its sensor traces and then doing the harder half i.e. showing the engineer why the model thinks the engine is dying. A number with no reasoning attached is useless to anyone who has to sign off on a maintenance decision.

time series SHAP thermodynamics

More of my code is on GitHub.