All Projects → robolamp → 3_body_problem_bot

robolamp / 3_body_problem_bot

Licence: mit
Simulations of gravitational interaction of the random n-body systems

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to 3 body problem bot

Telepyth
Telegram notification with IPython magics.
Stars: ✭ 54 (+50%)
Mutual labels:  jupyter-notebook, telegram
Calogan
Generative Adversarial Networks for High Energy Physics extended to a multi-layer calorimeter simulation
Stars: ✭ 87 (+141.67%)
Mutual labels:  jupyter-notebook, physics
Hamiltonian Nn
Code for our paper "Hamiltonian Neural Networks"
Stars: ✭ 229 (+536.11%)
Mutual labels:  jupyter-notebook, physics
Warp Pytorch
WARP loss for Pytorch as described by the paper: WSABIE: Scaling Up To Large Vocabulary Image Annotation
Stars: ✭ 35 (-2.78%)
Mutual labels:  jupyter-notebook
Machinelearningcourse
A collection of notebooks of my Machine Learning class written in python 3
Stars: ✭ 35 (-2.78%)
Mutual labels:  jupyter-notebook
Which animal
Stars: ✭ 35 (-2.78%)
Mutual labels:  jupyter-notebook
Octopod
Train multi-task image, text, or ensemble (image + text) models
Stars: ✭ 36 (+0%)
Mutual labels:  jupyter-notebook
Chinese Stock Prediction Using Weibo Baidu News Sentiment
📈 A neural network regression model trained to predict the mean stock price percentage change everyday using financial factors like previous close price, actual previous close price, open price, market capitalization, total market value, price-to-earning ratio and price-to-book ratio, along with corresponding Sina Weibo and Baidu News sentiment scores.
Stars: ✭ 35 (-2.78%)
Mutual labels:  jupyter-notebook
Projectoxford Clientsdk
This repo has moved 🏠 Visit our website for the latest SDKs & Samples
Stars: ✭ 979 (+2619.44%)
Mutual labels:  jupyter-notebook
Feedforbot
Bot for forwarding updates from RSS/Atom feeds to Telegram
Stars: ✭ 35 (-2.78%)
Mutual labels:  telegram
Capsule
DEPRECATED- see https://github.com/OpenMined/OpenMined or https://github.com/OpenMined/PySyft
Stars: ✭ 35 (-2.78%)
Mutual labels:  jupyter-notebook
Hetmogp
Heterogeneous Multi-output Gaussian Processes
Stars: ✭ 35 (-2.78%)
Mutual labels:  jupyter-notebook
Sirisaac
Automated dynamical systems inference
Stars: ✭ 35 (-2.78%)
Mutual labels:  jupyter-notebook
Product Recommendation With Watson Ml
Build a recommendation engine with Spark and Watson Machine Learning
Stars: ✭ 35 (-2.78%)
Mutual labels:  jupyter-notebook
Deep Learning With Keras
Code repository for Deep Learning with Keras published by Packt
Stars: ✭ 980 (+2622.22%)
Mutual labels:  jupyter-notebook
Picanet
Stars: ✭ 35 (-2.78%)
Mutual labels:  jupyter-notebook
Natural Language Processing
Stars: ✭ 36 (+0%)
Mutual labels:  jupyter-notebook
Mailgo
💌 mailgo, a new concept of mailto and tel links
Stars: ✭ 978 (+2616.67%)
Mutual labels:  telegram
Pandas Ta
Technical Analysis Indicators - Pandas TA is an easy to use Python 3 Pandas Extension with 130+ Indicators
Stars: ✭ 962 (+2572.22%)
Mutual labels:  jupyter-notebook
Machine Learning Approach For Malware Detection
A Machine Learning approach for classifying a file as Malicious or Legitimate
Stars: ✭ 35 (-2.78%)
Mutual labels:  jupyter-notebook

3_body_problem_bot

How to deploy this bot using Docker:

  1. Clone this repository:

    git clone https://github.com/robolamp/3_body_problem_bot.git
    
  2. Enter the directry with cloned repo:

    cd 3_body_problem_bot
    
  3. Edit Dockerflie: replace [TOKEN] and [BOT_NAME] with your bot token and your channel name

    RUN (crontab -l ; echo "0 */12 * * * python3 /home/3_body_problem_bot/generate_3_body_simulation.py -V -T [TOKEN] -N [BOT_NAME] --fps 15 --min-score 24 --duration 150 >> /var/log/cron.log") | crontab
    
  4. Build docker image using command:

    docker build -t [your image name] -f ./Dockerfile .
    
  5. Using built image, run the container in background:

    docker run -d [your image name]:latest
    
  6. Check that the container is running and find id of your container:

    docker container ls
    
  7. Check that crontable into the container is set up as you expected:

    docker exec -ti [your container id] bash -c "cat /var/log/cron.log"
    
  8. Check log when it'll be time to tun the script

    docker exec -ti [your container id] bash -c "crontab -l"
    

How to run this script locally:

  1. Install/check general requirements:

    ffmpeg python3
    
  2. Install/check python3 requirements with pip3:

    pip3 install numpy scipy matplotlib python-telegram-bot
    
  3. Now you can run this script!

    With the following command you can run the simulation with default params:

    ./generate_3_body_simulation.py
    

    Without providing arguments -T and -N it will run without Telegram bot functionality.

    To modify the simulation, you can use the following arguments:

    --dt DT for simulation step;

    --fps FPS for frames per second in the video;

    --n-bodies N_BODIES number of bodies (tested with up to 60);

    --duration DURATION simulation duration;

    --video-duration video duration (if simulation duration is bigger, the visualization will be accelerated);

    --min-score MIN_SCORE Minimal "interest-ness" score;

    --max-score MAX_SCORE Maximal "interest" score;

    With bigger difference between MIN_SCORE and MAX_SCORE, the script will run fewer simulations before achieving appropriate one.

    Simulations with high "interest-ness" score are looking too chaotic, and simulations with "interest-ness" score are boring (almost nothing happens).

    --max-field-size MAX_FIELD_SIZE Maximal field size.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].