This project aims to analyze and visualize the effect of various factors on the buoyant force experienced by a human body in water. Specifically, it compares how buoyancy is affected by:
- π‘οΈ Water temperature (via changes in density)
- π§₯ Wetsuit thickness (neoprene adds both volume and weight)
- βοΈ Body fat percentage (affects body density)
The model uses Archimedesβ Principle to estimate net buoyant force.
| Without Dead Sea |
Archimedes' principle states that the upward buoyant force that is exerted on a body immersed in a fluid, whether fully or partially, is equal to the weight of the fluid that the body displaces. (Wikipedia)
We apply Archimedes' Principle:
F_buoyancy = Ο_water * g * (V_body + V_neoprene) - m_neoprene * g
See utils_physics.py for details.
- Fully submerged and static (no swimming, no lung inflation, no motion).
- Body modeled via two compartments:
- Fat and Lean mass with fixed densities (harmonic mean).
- Body surface area computed via Du Bois formula.
- Covers 82% of body surface.
- Has uniform thickness and density.
- The wetsuit does not modify the body volume. Not true if you have ever worn in a wetsuit π
- No wetsuit compression due to depth - volume stays constant.
- Adds volume and weight (included in force calculations).
- Water density is computed as a function of temperature using a 5th-order polynomial approximation.
- Water is still (no motion or turbulence).
- Temperature is uniform throughout the water volume.
- Gravity is constant:
g = 9.81 m/sΒ². - All densities and material constants are loaded from
config.yaml.
To run the buoyant force simulations and generate plots:
python src/flotte/scripts/plot_impacts_on_buoyancy.py
# or
python -m flotteYou can adjust simulation parameters in config.yaml, such as:
- Body mass, height, and fat percentage
- Water temperature
- Wetsuit thickness
Also, you can add the Dead Sea as a reference value:
π‘ Fun Fact: The Dead Sea provides about more than 4Γ more buoyant force increase than a 2.5mm wetsuit. This is due to its extreme salinity, raising water density to ~1240 kg/mΒ³.
| With Dead Sea |
| File | Purpose |
|---|---|
plot_impacts_on_buoyancy.py |
Core plotting logic and simulation runner |
utils_physics.py |
Physics computations (density, buoyancy, volume) |
config.yaml |
Configuration for environment and body parameters |
buoyant_force_impacts.png |
Generated comparison plot |
The output plot shows how buoyant force expressed in N (left y-axis) varies with each parameter (each subplot).
The plot also includes:
- Reference buoyant forces (
RefBuoyF) computed for each body without wetsuit, in a 20Β°C fresh water environment. - Percentage improvement in buoyant force over the
RefBuoyFbaseline (right y-axis). - A summary table of body parameters used and resulting buoyant forces.
- Buoyancy reference forces (see parameters in
config.yaml):- Body weight: the baseline force of gravity on the person.
- Pull buoy: Simulated as 1500 cmΒ³ of low-density foam β adds β15 N of buoyant force.
- Maximum inhale: Simulated as 4.8 liters of air β adds β47 N of buoyancy.
Equilibrium occurs when
buoyant force = body weight.
Positive buoyancy (floating) occurs when buoyant force > body weight.
Note: Wetsuits are typically 2β3 mm thick on average. Some panels may reach 5.0 mm, but overall body coverage averages lower.
- See example thickness maps in media, such as Mako wetsuit specs.
- π§ Without added air, all tested bodies sink in fresh water.
- β A 7β8% increase in buoyancy is typically enough to reach neutral floatation.
- π¨ Air volume matters: A full inhale adds significant buoyancy (~47 N), enough to float lighter bodies.
- π§ Try it yourself: Inhale deeply while still in water - then exhale slowly and observe your own buoyancy change.
- π Wetsuits (~+5%) increase buoyancy more than moderately salty water (~+3%) like the Mediterranean Sea.
- π The Mediterranean Sea gives a buoyancy boost similar to wearing a ~1.5 mm wetsuit.
- π§ The Dead Sea (+24%) offers the most dramatic boost - roughly 4β5Γ more buoyant than a 2.5 mm wetsuit.
- Equivalent to wearing 4-5 wetsuits, or floating with 8 pull buoys!
- π§ Water temperature has minimal impact - its effect on density is too small to meaningfully change buoyancy.
- 𧬠Body fat influences buoyancy significantly - but often comes with added weight, which can offset gains.
- Example: Bodies #2 and #3 have the same height.
- Body #2 is lean (68 kg, 13% fat) and floats with an inhale.
- Body #3 is muscular (75 kg, 10% fat) and sinks even after inhaling.
- Example: Bodies #2 and #3 have the same height.