{"id":49898334,"url":"https://github.com/muichi-mon/dragonfly","last_synced_at":"2026-05-16T01:37:20.992Z","repository":{"id":307613996,"uuid":"1029039489","full_name":"muichi-mon/dragonfly","owner":"muichi-mon","description":"A Java-based space mission simulator, from Earth to Titan, that models the Solar System with N-body physics.","archived":false,"fork":false,"pushed_at":"2025-08-17T16:58:22.000Z","size":7055,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-17T18:29:29.568Z","etag":null,"topics":["dynamic-system-modeling","n-body-problem","n-body-simulation","ode-model","ode-solver","space-exploration","space-mission","space-mission-design"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/muichi-mon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-30T12:36:52.000Z","updated_at":"2025-08-17T16:58:25.000Z","dependencies_parsed_at":"2025-08-17T18:17:45.069Z","dependency_job_id":"2336a212-7064-445e-b523-f2d580a3b3fc","html_url":"https://github.com/muichi-mon/dragonfly","commit_stats":null,"previous_names":["muichi-mon/dragonfly"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/muichi-mon/dragonfly","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muichi-mon%2Fdragonfly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muichi-mon%2Fdragonfly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muichi-mon%2Fdragonfly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muichi-mon%2Fdragonfly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/muichi-mon","download_url":"https://codeload.github.com/muichi-mon/dragonfly/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/muichi-mon%2Fdragonfly/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33087028,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-15T20:25:35.270Z","status":"ssl_error","status_checked_at":"2026-05-15T20:25:34.732Z","response_time":103,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dynamic-system-modeling","n-body-problem","n-body-simulation","ode-model","ode-solver","space-exploration","space-mission","space-mission-design"],"created_at":"2026-05-16T01:37:15.903Z","updated_at":"2026-05-16T01:37:20.986Z","avatar_url":"https://github.com/muichi-mon.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚀 Space Odyssey to Titan\n\nA Java-based simulation of an interplanetary mission from Earth to Titan, Saturn’s largest moon — complete with **n-body simulation**, **ODE solvers**, **dynamic systems**, and **trajectory optimization** using **gradient descent**.\n\n## 📖 Overview\n\nThis project models a naive space mission scenario where a probe is launched from Earth and navigates the Solar System to reach Titan. The system simulates gravitational interactions between multiple celestial bodies and computes the spacecraft's trajectory using various numerical ODE solvers.\n\nThe project also implements **random-restart finite-difference gradient descent** to search for the optimal initial probe state vector (position and velocity) that results in a successful Titan rendezvous.\n\n---\n\n## ✨ Features\n\n- **3D N-body Simulation** of planets, moons, and spacecraft  \n- **Numerical ODE Solvers**: Euler, RK4, and more  \n- **Dynamic Solar System Model** with configurable bodies  \n- **Trajectory Optimization** using gradient descent  \n- **Random Initial State Exploration** for broad search space coverage  \n- **JavaFX 3D Visualization** of the Solar System and probe path  \n\n---\n\n## 🛠 Tech Stack\n\n- **Language**: Java 17+  \n- **UI**: JavaFX 3D Visualization  \n- **Math Libraries**: Custom vector and matrix utilities  \n- **ODE Solvers**: Custom implementations of Euler and RK4  \n- **Optimization**: Gradient descent with random restarts  \n\n---\n\n## 📂 Project Structure\n\n```bash\ndragonfly/\n├── src/main/java/io/github/rajveer/dragonfly/\n│   ├── gui/           # GUI setup and controller\n│   ├── missions/      # Mission planning \u0026 optimization\n│   ├── ode/           # ODE solver implementations (Euler, RK4, etc.)\n│   ├── simulation/    # Example simulations for other dynamic systems\n│   ├── systems/       # System models (e.g., Solar System)\n│   ├── utils/         # Math \u0026 helper utilities\n│   └── SolarSystem3D.java  # JavaFX 3D visualization entry point\n├── src/main/resources/    # Textures, configs, assets\n└── pom.xml                # Maven project file\n```\n\n## ⚙️ Getting Started\n\n### Prerequisites\n- Java 17 or later\n- Maven or Gradle build system\n\n### Running the Simulation\n```bash\n# Clone the repository\ngit clone https://github.com/muichi-mon/dragonfly.git\ncd dragonfly\n```\n```bash\n# Compile and run\nmvn clean install\nmvn clean javafx:run\n```\n---\n\n## 📈 Example Interface\n\n### GUI Solar System Simulation\n![Solar System GUI](src/main/resources/io/github/rajveer/dragonfly/gui.jpg)\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmuichi-mon%2Fdragonfly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmuichi-mon%2Fdragonfly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmuichi-mon%2Fdragonfly/lists"}