Aporia
- 11 Devlogs
- 30 Total hours
An interactive laboratory for exploring nonlinear dynamics, numerical integration, and chaos through the double pendulum.
An interactive laboratory for exploring nonlinear dynamics, numerical integration, and chaos through the double pendulum.
yep, turns out the build file had quite a few errors and things I should’ve fixed earlier but somehow never crossed my mind,,
.
along with the fact that I don’t have Apple verification or whatever it’s called 😭
.
Anyways, fixed all the issues I could see, and as far as Ik, none of them are left anymore (hopefully)… And now I can finally ship Aporia after some additional testing on other devices
.
Thank you once againn…!!
.
(Also as I don’t have any specific attachments, I’ll just add the home-page of aporia as the attachment this time…)
Functions I added today:
And finally completed the Readme, that took the most time out of all…
.
And now I can ship the project 🙃
I’ll keep it short as I’m in a bit of rush right now… but yeah…
.
It has been an incredible journey..!!
Thank you for being a part of it..!! 🦋
yes….! now you can hear your life chaos through the positions and the angular speeds of the double pendulums…
.
Specifically, the angular position determines the pitch and the angular speed determines the volume of the sound.
.
With that, all the core features of Aporia are completely in working condition.
That is, now the only things left are:
Because, even though you can hear the pendulums diverge through the difference in pitch, the sound it creates is a bit…… uhh…… mathematical? 😭
.
Let me clarify, the sounds it generate are derived from a Sine wave… but two simultaneous sine waves can become unpleasant surprisingly quickly, because apparently even mathematics needs a volume limit 🗿🤷🏻♂️
.
So it sounds just like two aliens attempting to negotiate a treaty through a malfunctioning fax machine 💔…
Which can lead to a headache pretty quickly if not cautious… so that is another thing I need to work on…
.
And that’s it for today? There’s no attachment as the Mac screen recorder doesn’t support system audio… so it’d be redundant to attach it without audio anyways…. (let me just attach a meme lol)
.
Anyways.. thank you for reading this through…!! and
as always,
Good morning 🍀❤️🩹
As the title suggests I added:
Even though Ik the UI looks awful, but that wasn’t my priority atm, it was to make it interactive, to make sure the changes we do in the values reflect in the simulation….
.
Given the fact you know how much of a design freak I am, only I know how much I controlled myself from spending the entire night trying to fix the design… because apparently, projects like these have an instinctive desire to consume their creators…🗿
.
But anyways, the next step would be to add proper sonification to Aporia, and then fix the design…
.
I took me an awful lot to do all that yesterday,,,
Have you ever faced the thing, where you project becomes so huge, that you, yourself start getting confused about what things did what and why and stuff like that? 😭
Because now it has started happening to me, so from now on, I’ve decided to add comments to my code, for the sake of my future self 🤷🏻♂️.
.
And yeah, that’s it for today, I believe?
Guten Morgen anyways..!! 🥱👋🏻
Ladies and gentlemen,
Both the pendulums started out only an “atom” apart.
I don’t think I need to provide any more context 🐱
.
They should always follow the same path, right? RIGHT? 😶🌫️
Let’s see….
.
.
.
Saw the video?
yep, they started only an “atom” apart, yet couldn’t even last a minute together….💔🥀 lol
.
Shows us how extremely small differences compound overtime in chaotic systems (like weather prediction systems, double pendulums, etc)
.
But anyways, the changes I made are too visible to list down, so I’ll let it be for now…. 🗿
.
Good Evening 🦋🤷🏻♂️
Hello there,, quite tired today, so I don’t think I’ll be able to write much in today’s devlog… let me just start by writing down the things I added in Aporia today:
I believe I shall complete this project this week if things go according to the plan, even though, I can also do the same in next 3 days, but I genuinely don’t love the idea of me working day in and day out like a caffeinated squirrel whose rent is due the next day…
So I’m trying to be a ‘bit’ reasonable here 😭
.
And, that’s it for the day, I believe..?
Happy Tuesday ig 🤷🏻♂️
& Good Morning 🥀
.
P.S. btw sorry if I sound a bit tired, many reasons, but a bad day doesn’t imply a bad life, so I’ll just keep moving 🙃
If you genuinely take time out to read my entire devlogs, then you’re the best lol (for me, at least)
❤️🩹 Thank you ❤️🩹
And guess what?
The Energy error dropped from roughly 10^(-1)% to
10^(-6)% orders of magnitude 💀
(Literally FIVE orders of magnitude lower 🫎)
.
When I first tried running the program after writing the code for RK4, the best I expected was like 10^(-2) ngl 🥀
.
Tho the problem is, I’m running both the versions for an arbitrary amount of time, and then trying to compare the error,
which lwk reminds me of atomic bomb vs coughing baby 😭💔
.
So my next goal shall be to script a comparer or some sort, which may output things like :
Should be fun lol,,
.
.
Also also, I tried one more thing, that is, I changed dt to 1 sec 💀
and guess what was the error % of RK4? 60% 💀
(literally 10^(-6) to 60% 💔)
which is basically the numerical equivalent of telling the laws of physics, “I have a better idea” 🗿✌🏻
.
But nevertheless, learned a lotttt today..!!
Holy productivity~~~ 🦋🥹
.
But anyways, that’s it for today,
Good Morning~!!
P.S. I think this project is lwk going in the right direction, the experimentation, the research, the learnings, new future features, all these things mean way more to me than making a random copy-paste project saying “I made a double pendulum go brrr” 😭
lol
yeah, fancy title innit? 🥀 (sorry 😭💔)
.
but as the title suggests, I finally was able to render a basic simulation of Aporia with a single, double pendulum, that renders using the Euler Integration method (for now).
.
This is the first major step of the simulator… which shall become clear as we move towards the future with the speed of 1 sec per second (🗿)
.
Alr, keeping that aside, if you pay some attention to the stuff printing out in the console (in the video), that,,, is the energy difference oscillating (and the Energy Error), which ideally should be 0 (as energy is conserved in a closed system).
.
Which shows us that Euler integrator doesn’t just inject extra energy into the system, but also lets some of it bleed out (which shall become important later on as we compare different integrators).
.
And, that’s it for the day ig?
.
Thank you for reading it through..!!
Have a nice dayyy…!! 🌙
Ladies and gentlemen,
guess who finally completed the complete transfer of code structures and added Energy engine in Aporia? 😭
.
ngl, the experience was lwk tedious, rewriting old, long equations in new format just so they could cooperate with me as I make Aporia bigger instead of playing like a 2nd grader trying to solve a 12th grade question, and acting like everything is fine…🤷🏻♂️
.
I also divided the program in multiple files for the same reason, I really don’t love the idea of one source file having 800+ lines of code and some prayers where I’m trying to fix a bug on line 265, which turns out to be blank 🗿
.
With that, tomorrow I shall be starting the work on GUI and Rendering… so that it finally looks like a simulation… ❤️🩹
.
btw, Good Morning~~ 🥱
After abandoning the project due to some technical glitches on Stardance’s website, guess who’s back once the glitch got fixed? 🗿✌🏻
.
This devlog shall mark the beginning of a new start.
.
I had already completed the Physics Engine long ago,
ie. From today I’ll be focusing on finally completing the project along with GUI and Rendering…
.
P.S. Ik this one sounds a bit rushed, it’s because I’m running low on time and have many deadlines this month, so can’t spend too much time writing devlogs or else I’m cooked 🥹🐈 (tho I’ll try my best to properly write the ones that come after this fs)