RV Planet Search Pipeline Based on RadVel
Use RadVel setup files to load:
- parameters for "known" planets
- data and instruments
- fix/vary within search (not implemented)
- fitting (search) basis (not implemented)
Install from GitHub (the rvsearch name on PyPI belongs to an unrelated project):
pip install git+https://github.com/California-Planet-Search/rvsearch. See the documentation for more. Installing into a fresh anaconda environment is highly recommended.
Example calling syntax:
rvsearch find -s path-to-setup
rvsearch plot -t summary -d path-to-outputdir
rvsearch inject -d path-to-outputdir
rvsearch plot -t recovery -d path-to-outputdir
See rvsearch --help or rvsearch plot --help to see all available options.
rvsearch serve runs RadVel's HTTP API (every radvel serve endpoint) plus
search jobs, so one container serves both:
pip install 'rvsearch[api] @ git+https://github.com/California-Planet-Search/rvsearch'
# pulls radvel[api] >= 1.6.6 from PyPI
rvsearch serve --host 0.0.0.0 --port 8000
# or: docker compose up --build
POST /runswith a RadVel setup payload (data, instruments, optionalstellarmass). This is the same call used for a RadVel fit.POST /runs/{run_id}/search, for example{"min_per": 3, "max_planets": 8, "mcmc": false}. Set"known": trueto start from the setup's planets.- Poll
GET /jobs/{job_id}untilstateissucceeded.progress.stageandprogress.planets_foundupdate along the way. GET /runs/{run_id}/searchreturns the detected planets (per, tc, tp, e, w, k, BIC vs. threshold), trend, and per-instrument gamma/jitter.GET /runs/{run_id}/files/<starname>_summary.pngreturns the summary plot.- Optional:
POST /runs/{run_id}/injections({"num_inject": 3000}) runs injection-recovery on the finished search and adds the recoveries CSV and completeness plot.
Interactive docs are served at /docs.