Spaces:
Running
Running
import pandas as pd | |
import streamlit as st | |
from mlip_arena import PKG_DIR | |
DATA_DIR = PKG_DIR / "tasks" / "thermal-conductivity" | |
table = pd.read_csv(DATA_DIR / "wte.csv") | |
table.rename( | |
columns={ | |
"method": "Model", | |
"srme": "SRME[𝜅]", | |
}, | |
inplace=True, | |
) | |
table.set_index("Model", inplace=True) | |
table.sort_values(["SRME[𝜅]"], ascending=True, inplace=True) | |
table["Rank"] = table["SRME[𝜅]"].rank(method='min').astype(int) | |
table = table.reindex( | |
columns=[ | |
"Rank", | |
"SRME[𝜅]", | |
] | |
) | |
s = ( | |
table.style.background_gradient( | |
cmap="Reds", subset=["SRME[𝜅]"] | |
) | |
.background_gradient( | |
cmap="Blues", | |
subset=["Rank"], | |
) | |
.format("{:.3f}", subset=["SRME[𝜅]"]) | |
) | |
def render(): | |
st.dataframe( | |
s, | |
use_container_width=True | |
) | |
with st.expander("Explanation", icon=":material/info:"): | |
st.caption( | |
""" | |
- **SRME**: symmetric relative mean error of single-phonon conductivity: | |
$$ | |
\\text{SRME}[\\left\lbrace\\mathcal{K}({\\mathbf{q},s)}\\right\\rbrace] = \\frac{2}{N_qV}\\frac{\\sum_{\\mathbf{q}s}|\\mathcal{K}_{\\text{MLIP}}(\\mathbf{q},s) - \\mathcal{K}_{\\text{DFT}}(\\mathbf{q},s)|}{\\kappa_{\\text{MLIP}} + \\kappa_{\\text{DFT}}} | |
$$ | |
""" | |
) | |