Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 12 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
[![PyPI version](https://badge.fury.io/py/furax-cs.svg)](https://badge.fury.io/py/furax-cs)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit)
[![Documentation](https://img.shields.io/badge/docs-readthedocs-blue?logo=readthedocs)](https://furax-cs.readthedocs.io/en/latest/)
[![Results Explorer](https://img.shields.io/badge/%F0%9F%A4%97%20Results-Explorer-yellow?)](https://askabalan-furax-cs-results.hf.space/)
[![arXiv](https://img.shields.io/badge/arXiv-XXXX.XXXXX-b31b1b?logo=arxiv)](https://arxiv.org/abs/XXXX.XXXXX)

**FURAX-CS** (FURAX Component Separation) is a Python package designed to benchmark and implement advanced component separation techniques for Cosmic Microwave Background (CMB) analysis. It leverages **JAX** for high-performance computing on GPUs and implements novel adaptive clustering methods.

Expand Down Expand Up @@ -30,6 +33,9 @@ This has an impact on the estimated r tensor-to-scalar ratio as shown in the fig

---


> **Interactive Results:** Explore the results from our paper ([PLACEHOLDER](https://arxiv.org/abs/XXXX.XXXXX)) using the [Results Explorer](https://askabalan-furax-cs-results.hf.space/) Streamlit app.

## Installation

### 1. Prerequisites (JAX)
Expand Down Expand Up @@ -62,10 +68,12 @@ pip install -r https://raw.githubusercontent.com/CMBSciPol/furax-cs/main/require

## Documentation

* **[Quick Start (Python API)](docs/quick_start.md)**: Learn how to use the Python API for data loading and running component separation.
* **[CLI Reference & Workflow](docs/cli_reference.md)**: Comprehensive guide on using the command-line interface for the full analysis pipeline.
* **[Minimization Solvers](docs/minimization.md)**: Guide to available optimization algorithms (Active Set, L-BFGS, etc.) and programmatic usage.
* **[Analysis Tools (r_analysis)](docs/r_analysis.md)**: Detailed documentation for the result analysis and plotting suite.
Full documentation is available at **[furax-cs.readthedocs.io](https://furax-cs.readthedocs.io/en/latest/)**.

* **[Quick Start (Python API)](https://furax-cs.readthedocs.io/en/latest/quick_start.html)**: Learn how to use the Python API for data loading and running component separation.
* **[CLI Reference & Workflow](https://furax-cs.readthedocs.io/en/latest/cli_reference.html)**: Comprehensive guide on using the command-line interface for the full analysis pipeline.
* **[Minimization Solvers](https://furax-cs.readthedocs.io/en/latest/minimization.html)**: Guide to available optimization algorithms (Active Set, L-BFGS, etc.) and programmatic usage.
* **[Analysis Tools (r_analysis)](https://furax-cs.readthedocs.io/en/latest/r_analysis/index.html)**: Detailed documentation for the result analysis and plotting suite.

---

Expand Down
5 changes: 2 additions & 3 deletions notebooks/01_FGBuster_vs_FURAX_Comparison.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,6 @@
"outputs": [],
"source": [
"# Core scientific computing\n",
"import operator\n",
"from functools import partial\n",
"\n",
"import furax_cs as fcs\n",
Expand All @@ -76,7 +75,7 @@
")\n",
"\n",
"# FURAX - Modern JAX-based framework\n",
"from furax import HomothetyOperator , tree\n",
"from furax import HomothetyOperator, tree\n",
"from furax.obs.landscapes import Stokes\n",
"from furax.obs.operators import (\n",
" CMBOperator,\n",
Expand Down Expand Up @@ -299,7 +298,7 @@
" # L = (A^T N^-1 d)^T (A^T N^-1 A)^-1 (A^T N^-1 d)\n",
" x = (A.T @ invN)(d) # A^T N^-1 d\n",
" s = (A.T @ invN @ A).I(x)\n",
" L = tree.dot(x, s) \n",
" L = tree.dot(x, s)\n",
"\n",
" return -L # Return negative for minimization"
]
Expand Down
Loading