zdenyhraz / shenanigans

Semi-random funky stuff, mainly for my PhD experiments and articles. Contains calculations and algorithm implementations for various applied mathematics and astrophysics articles I worked on.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Zdeny's shenanigans 🪐


Semi-random funky stuff, mainly for my PhD experiments and articles. Contains calculations and algorithm implementations for various applied mathematics and astrophysics articles I worked on - Solar Dynamics Observatory image processing, sub-pixel image registration, non-convex optimization. Written in C++20, with C++ ImGui GUI and ImPlot / pybind11+matplotlib plots. Uses OpenCV, OpenMP, OpenGL, cuda, matplotlib, torch, astropy, spdlog, flamegraph, fmt, googletest, json, optick, pybind11, QCustomPlot, tracy, glad, GLFW, ImGui. Examples below.

📃Article links

🚀The ImGui+ImPlot GUI

🔎Subpixel shift / rotation / scale image registration of dissimilar images via Iterative Phase Correlation

☀️Solar photosphere differential rotation measurements from SDO/HMI continuum images

📉Visualization of optimizer progress on a given objective function landscape

📈Visualization of meta-optimizer progress and optimization improvement on a given meta-objective function landscape

⌚Profiling with Tracy

  • install the required libraries sudo apt -y install libglfw3-dev libgtk-3-dev libcapstone-dev libtbb-dev
  • build the profiler via make release -j12 in ./libs/tracy/profiler/build/unix/
  • run the app with ENABLE_PROFILING defined
  • run script/perf/tracy.sh or ./libs/tracy/profiler/build/unix/Tracy-release and click connect
  • save the trace file if needed

About

Semi-random funky stuff, mainly for my PhD experiments and articles. Contains calculations and algorithm implementations for various applied mathematics and astrophysics articles I worked on.

License:GNU General Public License v3.0


Languages

Language:C++ 83.7%Language:Python 13.8%Language:CMake 2.0%Language:Shell 0.4%Language:Batchfile 0.0%