Inspiration

Welcome to "Marine Disaster Sim," your gateway to realistic shipwreck and ongoing leakage simulations. Tailored for maritime professionals, emergency responders, and enthusiasts, this cutting-edge program immerses users in dynamic scenarios, enabling them to navigate the challenges of a shipwreck and tackle ongoing leaks with precision.

What it does

Simply put, this application takes in a schematic of a small ship or canoe, reads and analysis the schematic, and then displays detailed water leakage and drowning simulations. It takes every single turn and curvature into consideration when analyzing the ship and shows potential weak points of the ship where sea water can gather and cause havoc.

How we built it

I used bare bones C/C++ and the SFML library. Most of the project is mainly based on mathematical formulas in particular Newton's formula for fluidity and viscosity. Moreover, the program mainly uses threads and parallelism under the hood as well as a sparse matrix which shrinks, encodes and compresses the source files for the sake of speed and overall stability. Once again, everything is written in bare bones C/C++.

Challenges we ran into

I ran into a lot problem during development. Most of the issues happened due to C++ straneous syntax. I so far stumbled upon tons of segmentation faults and even more syntax errors. I spent a lot of time trying to make the program work in parallel - the issue mainly wasn't to make it functional but rather efficient.

Accomplishments that we're proud of

I'm most definitely proud that Newton's liquid viscosity formula worked wonderfully in this application - that was what I definitely feared most though I faced many challenges from other facets of the program. I'm also proud that I was not only able understand but effectively implement multi-threaded programming - computing in the project.

What we learned

To say that I have learnt a lot today is to nothing. Today I mastered the entirety of functional and other forms of programming. In particular I learnt the concepts of parallel and asynchronous programming, concurrency concepts, and not mention all the math that came into it

What's next for Marine Disaster Sim

I most definitely want it to be able to read and assess more complex schematics and run its simulations on them

Built With

  • c/c++
  • sfml
Share this project:

Updates