Dielectric Function¶
Look up and interactively plot the MBJ dielectric function ε(ω) for any JARVIS-DFT material. Returns real and imaginary parts of the dielectric tensor (xx, yy, zz components) plus computed averages. Data fetched via Webpage.get_dft_mbj_dielectric_function().
Overview¶
Search materials by formula, JARVIS ID, elements, space group, or property ranges. Click any result to fetch and plot the full spectrum. All search results are capped at 500 entries.
Data Source
JARVIS-DFT — MBJ dielectric function via jarvis.db.webpages.Webpage.get_dft_mbj_dielectric_function().
Endpoints¶
POST /dielectric_function/search — Search materials¶
curl -X POST "https://atomgpt.org/dielectric_function/search" \
-H "Authorization: Bearer sk-XYZ" \
-H "Content-Type: application/json" \
-H "accept: application/json" \
-d '{
"formula": "Si"
}'
Search with elements:
curl -X POST "https://atomgpt.org/dielectric_function/search" \
-H "Authorization: Bearer sk-XYZ" \
-H "Content-Type: application/json" \
-H "accept: application/json" \
-d '{
"elements": ["Ti", "O"],
"element_mode": "all"
}'
| Field | Type | Default | Description |
|---|---|---|---|
formula |
string | null | Chemical formula |
jid |
string | null | Exact JARVIS ID |
elements |
list[string] | null | Element symbols |
element_mode |
string | "any" | "any", "all", or "exact" |
bandgap_min |
float | null | Min MBJ band gap (eV) |
bandgap_max |
float | null | Max MBJ band gap (eV) |
Response fields: jid, formula, spacegroup, mbj_bandgap, optb88vdw_bandgap.
GET /dielectric_function/data/{jid} — Fetch spectrum data¶
Fetch MBJ dielectric function ε(ω) for a single material. Returns energy axis, real/imaginary xx/yy/zz components, and computed averages.
curl "https://atomgpt.org/dielectric_function/data/JVASP-1002" \
-H "Authorization: Bearer sk-XYZ" \
-H "accept: application/json"
Response:
{
"jid": "JVASP-1002",
"formula": "Si",
"energies": [0.0, 0.1, 0.2, ...],
"components": {
"imag_xx": [...], "imag_yy": [...], "imag_zz": [...],
"real_xx": [...], "real_yy": [...], "real_zz": [...],
"imag_avg": [...], "real_avg": [...]
}
}
8 components: imag_xx/yy/zz, real_xx/yy/zz, plus computed imag_avg and real_avg (arithmetic mean of xx/yy/zz).
Python Examples¶
import requests
response = requests.post(
"https://atomgpt.org/dielectric_function/search",
headers={
"Authorization": "Bearer sk-XYZ",
"accept": "application/json",
"Content-Type": "application/json",
},
json={"formula": "Si"},
)
data = response.json()
print(f"Found {data['total']} materials")
for m in data["results"][:5]:
print(f" {m['jid']}: {m['formula']}")
AGAPI Agent¶
from agapi.agents import AGAPIAgent
import os
agent = AGAPIAgent(api_key=os.environ.get("AGAPI_KEY"))
response = agent.query_sync("Show dielectric function for Silicon")
print(response)
References¶
- K. Choudhary et al., Nature Sci. Data 5, 180082 (2018) DOI
- atomgptlab/jarvis