Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Главная страница Mocha

Mocha — мультифакторный симулятор траектории струи 🚽🪐

Mocha — это веб-симулятор, который моделирует полёт струи (и тяжёлых частиц в ней) в разных условиях: гравитация планет, ветер, расстояние до унитаза, разброс, тяжёлые примеси и даже генерация пацанского отчёта через Gemini на основе формального.

Проект создан для фанатично детального, но ироничного анализа того, сколько процентов «материала» реально долетает до унитаза.


Основные возможности

  1. Моделирование траектории струи:

    • начальная скорость (v0);
    • угол вылета;
    • коэффициент сопротивления;
    • плотность жидкости.
  2. Гравитация разных тел Солнечной системы:

    • Меркурий, Венера, Земля, Луна, Марс;
    • Юпитер, Сатурн, Уран, Нептун (как газовые гиганты — расчёт с гипотетической платформы);
    • Плутон.
    • Учитывается изменение ускорения свободного падения с высотой: g(y) = g0 * (R / (R + y))^2
  3. Тяжёлые частицы в струе:

    • выбор материала: уран, плутоний, сталь, золото, сурьма;
    • количество частиц от 0 до 10 000;
    • траектории частиц рисуются отдельно (с учётом большей плотности и дисперсии).
  4. Геометрия унитаза:

    • расстояние от источника до кромки унитаза;
    • высота кромки относительно уровня члена.
  5. Ветер:

    • направление (0–359°);
    • скорость ветра (м/с);
    • учитывается влияние на траекторию.
  6. Вероятность попадания:

    • моделирование Монте-Карло;
    • вычисление процента попадания и промаха.
  7. Текстовый отчёт:

    • формальный и пацанский стиль;
    • опциональная генерация через Gemini.
  8. Интеграция с Gemini:

    • генерация пацанского отчёта через Google Gemini API.

Установка и запуск

git clone https://github.com/<your-username>/mocha.git
cd mocha
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python app.py

Открой в браузере: http://127.0.0.1:5001


Настройка Gemini API

Создай API ключ на Google AI Studio.

Варианты использования:

Через переменную окружения

export GEMINI_API_KEY="ВАШ_КЛЮЧ"

Или жёстко в коде (только для локалки)

from google import genai
gemini_client = genai.Client(api_key="ВАШ_КЛЮЧ")

Структура проекта

Mocha/
├─ app.py
├─ requirements.txt
├─ README.md
├─ templates/
│  └─ index.html
└─ static/
   ├─ css/
   │  └─ styles.css
   ├─ js/
   │  └─ main.js
   └─ loh.jpg

Лицензия

Проект создан исключительно в учебно-развлекательных целях.
Не использовать для реальных инженерных расчётов 💦

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages