diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 0be7ef5e..bc9cc4e7 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -34,7 +34,7 @@ repos:
- id: codespell
stages: [commit, commit-msg]
exclude_types: [svg]
- args: [--ignore-words-list, 'ist,yau', --check-filenames]
+ args: [--ignore-words-list, 'ist,yau,te', --check-filenames]
- repo: https://github.com/pre-commit/mirrors-eslint
rev: v9.0.0-alpha.0
diff --git a/package.json b/package.json
index 876fcf39..43e4a215 100644
--- a/package.json
+++ b/package.json
@@ -34,6 +34,7 @@
"@typescript-eslint/eslint-plugin": "^6.19.1",
"@typescript-eslint/parser": "^6.19.1",
"devalue": "^4.3.2",
+ "elementari": "^0.2.3",
"eslint": "^8.56.0",
"eslint-plugin-svelte": "^2.35.1",
"hast-util-from-string": "^3.0.0",
diff --git a/src/routes/open-source/oss.yml b/src/lib/oss.yml
similarity index 99%
rename from src/routes/open-source/oss.yml
rename to src/lib/oss.yml
index 6175051a..13d5c4d9 100644
--- a/src/routes/open-source/oss.yml
+++ b/src/lib/oss.yml
@@ -67,7 +67,7 @@ projects:
- JavaScript
- HTML
stars: 103
- commits: 173
+ commits: 174
- name: pymatviz
url: https://pymatviz.janosh.dev
img_style: 'filter: invert(1);'
@@ -181,5 +181,5 @@ projects:
- CSS
- HTML
- JavaScript
- stars: 245
+ stars: 246
commits: 269
diff --git a/src/routes/cv/papers.yaml b/src/lib/papers.yaml
similarity index 100%
rename from src/routes/cv/papers.yaml
rename to src/lib/papers.yaml
diff --git a/src/routes/+layout.server.ts b/src/routes/+layout.server.ts
index 24b213e4..455916f6 100644
--- a/src/routes/+layout.server.ts
+++ b/src/routes/+layout.server.ts
@@ -1,5 +1,5 @@
+import type { FrontMatter } from '$lib/types.js'
import { author } from '$root/package.json'
-import type { FrontMatter } from '../lib/types.js'
export const prerender = true
diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte
index 509c934a..df3cbff8 100644
--- a/src/routes/+page.svelte
+++ b/src/routes/+page.svelte
@@ -1,9 +1,9 @@
+
+[We just published data on two materials]({diel_paper.URL}), Zr2 Bi2 O7 and CsTaTeO6 , which were the result of a workflow to discover new dielectric materials. Dielectrics are in used CPUs and SSDs among many other electronic devices. We managed to experimentally synthesize both these materials and measure their dielectric properties (thanks Wes!), so I wanted to take the opportunity of having two crystal structures that are special to me to write a short tutorial on how to render 3D crystal structures in a browser using one of my side-projects called [`elementari`]({elementari.repo}).
+
+`elementari` currently only understands `pymatgen`'s JSON-like structure representation. Converting the CIF files you get from (of the structures we verified with [XRD](https://wikipedia.org/wiki/X-ray_crystallography) to have made in the lab) to this format is easy:
+
+```py
+from glob import glob
+
+from pymatgen.core import Structure
+
+for cif in glob("*.cif"):
+ structure = Structure.from_file(cif)
+ structure.to(cif.replace(".cif", ".json"))
+```
+
+The resulting JSON files can then be visualized with `elementari` using the `Structure` component which again takes only half a dozen lines of code:
+
+```svelte
+
+
+{#each Object.entries(structs) as [name, json_struct]}
+ {@const structure = JSON.parse(json_struct)}
+
+
+{/each}
+```
+
+Here's what this code renders:
+
+
+ {#each Object.entries(structs) as [name, json_struct]}
+ {@const structure = JSON.parse(json_struct)}
+ {@const [formula, spacegroup] = name.match(/\.\/(.+)-(.+)\.json/).slice(1)}
+
+ {/each}
+
+
+Note that the converted CIFs give us `pymatgen` `Structures`, not `StructureGraphs` which contain adjacency matrices to convey bond information. `elementari` can render bonds but `StructureGraph` support is still WIP and the JS code I wrote for on-the-fly bond detection is terrible (don't use it). Hopefully, something I'll fix in the coming months.
diff --git a/src/routes/posts/new-dielectric-materials/Bi2Zr2O7-Fm3m.cif b/src/routes/posts/new-dielectric-materials/Bi2Zr2O7-Fm3m.cif
new file mode 100644
index 00000000..04178afb
--- /dev/null
+++ b/src/routes/posts/new-dielectric-materials/Bi2Zr2O7-Fm3m.cif
@@ -0,0 +1,226 @@
+
+data_
+_chemical_name_mineral ?Flourite?
+_cell_length_a 5.3485(10)
+_cell_length_b 5.3485(10)
+_cell_length_c 5.3485(10)
+_cell_angle_alpha 90
+_cell_angle_beta 90
+_cell_angle_gamma 90
+_cell_volume 153.00(9)
+_space_group Fm-3m
+loop_
+_symmetry_equiv_pos_as_xyz
+ 'x, y, z '
+ '-x, -y, z '
+ '-x, -z, -y '
+ '-x, -z, y '
+ '-x, z, -y '
+ '-x, z, y '
+ '-x, y, -z '
+ '-x, y, z '
+ '-y, -x, -z '
+ '-y, -x, z '
+ '-y, -z, -x '
+ '-y, -z, x '
+ '-y, z, -x '
+ '-y, z, x '
+ '-y, x, -z '
+ '-y, x, z '
+ '-z, -x, -y '
+ '-z, -x, y '
+ '-z, -y, -x '
+ '-z, -y, x '
+ '-z, y, -x '
+ '-z, y, x '
+ '-z, x, -y '
+ '-z, x, y '
+ 'z, -x, -y '
+ 'z, -x, y '
+ 'z, -y, -x '
+ 'z, -y, x '
+ 'z, y, -x '
+ 'z, y, x '
+ 'z, x, -y '
+ 'z, x, y '
+ 'y, -x, -z '
+ 'y, -x, z '
+ 'y, -z, -x '
+ 'y, -z, x '
+ 'y, z, -x '
+ 'y, z, x '
+ 'y, x, -z '
+ 'y, x, z '
+ 'x, -y, -z '
+ 'x, -y, z '
+ 'x, -z, -y '
+ 'x, -z, y '
+ 'x, z, -y '
+ 'x, z, y '
+ 'x, y, -z '
+ '-x, -y, -z '
+ 'x+1/2, y+1/2, z '
+ '-x+1/2, -y+1/2, z '
+ '-x+1/2, -z+1/2, -y '
+ '-x+1/2, -z+1/2, y '
+ '-x+1/2, z+1/2, -y '
+ '-x+1/2, z+1/2, y '
+ '-x+1/2, y+1/2, -z '
+ '-x+1/2, y+1/2, z '
+ '-y+1/2, -x+1/2, -z '
+ '-y+1/2, -x+1/2, z '
+ '-y+1/2, -z+1/2, -x '
+ '-y+1/2, -z+1/2, x '
+ '-y+1/2, z+1/2, -x '
+ '-y+1/2, z+1/2, x '
+ '-y+1/2, x+1/2, -z '
+ '-y+1/2, x+1/2, z '
+ '-z+1/2, -x+1/2, -y '
+ '-z+1/2, -x+1/2, y '
+ '-z+1/2, -y+1/2, -x '
+ '-z+1/2, -y+1/2, x '
+ '-z+1/2, y+1/2, -x '
+ '-z+1/2, y+1/2, x '
+ '-z+1/2, x+1/2, -y '
+ '-z+1/2, x+1/2, y '
+ 'z+1/2, -x+1/2, -y '
+ 'z+1/2, -x+1/2, y '
+ 'z+1/2, -y+1/2, -x '
+ 'z+1/2, -y+1/2, x '
+ 'z+1/2, y+1/2, -x '
+ 'z+1/2, y+1/2, x '
+ 'z+1/2, x+1/2, -y '
+ 'z+1/2, x+1/2, y '
+ 'y+1/2, -x+1/2, -z '
+ 'y+1/2, -x+1/2, z '
+ 'y+1/2, -z+1/2, -x '
+ 'y+1/2, -z+1/2, x '
+ 'y+1/2, z+1/2, -x '
+ 'y+1/2, z+1/2, x '
+ 'y+1/2, x+1/2, -z '
+ 'y+1/2, x+1/2, z '
+ 'x+1/2, -y+1/2, -z '
+ 'x+1/2, -y+1/2, z '
+ 'x+1/2, -z+1/2, -y '
+ 'x+1/2, -z+1/2, y '
+ 'x+1/2, z+1/2, -y '
+ 'x+1/2, z+1/2, y '
+ 'x+1/2, y+1/2, -z '
+ '-x+1/2, -y+1/2, -z '
+ 'x+1/2, y, z+1/2 '
+ '-x+1/2, -y, z+1/2 '
+ '-x+1/2, -z, -y+1/2 '
+ '-x+1/2, -z, y+1/2 '
+ '-x+1/2, z, -y+1/2 '
+ '-x+1/2, z, y+1/2 '
+ '-x+1/2, y, -z+1/2 '
+ '-x+1/2, y, z+1/2 '
+ '-y+1/2, -x, -z+1/2 '
+ '-y+1/2, -x, z+1/2 '
+ '-y+1/2, -z, -x+1/2 '
+ '-y+1/2, -z, x+1/2 '
+ '-y+1/2, z, -x+1/2 '
+ '-y+1/2, z, x+1/2 '
+ '-y+1/2, x, -z+1/2 '
+ '-y+1/2, x, z+1/2 '
+ '-z+1/2, -x, -y+1/2 '
+ '-z+1/2, -x, y+1/2 '
+ '-z+1/2, -y, -x+1/2 '
+ '-z+1/2, -y, x+1/2 '
+ '-z+1/2, y, -x+1/2 '
+ '-z+1/2, y, x+1/2 '
+ '-z+1/2, x, -y+1/2 '
+ '-z+1/2, x, y+1/2 '
+ 'z+1/2, -x, -y+1/2 '
+ 'z+1/2, -x, y+1/2 '
+ 'z+1/2, -y, -x+1/2 '
+ 'z+1/2, -y, x+1/2 '
+ 'z+1/2, y, -x+1/2 '
+ 'z+1/2, y, x+1/2 '
+ 'z+1/2, x, -y+1/2 '
+ 'z+1/2, x, y+1/2 '
+ 'y+1/2, -x, -z+1/2 '
+ 'y+1/2, -x, z+1/2 '
+ 'y+1/2, -z, -x+1/2 '
+ 'y+1/2, -z, x+1/2 '
+ 'y+1/2, z, -x+1/2 '
+ 'y+1/2, z, x+1/2 '
+ 'y+1/2, x, -z+1/2 '
+ 'y+1/2, x, z+1/2 '
+ 'x+1/2, -y, -z+1/2 '
+ 'x+1/2, -y, z+1/2 '
+ 'x+1/2, -z, -y+1/2 '
+ 'x+1/2, -z, y+1/2 '
+ 'x+1/2, z, -y+1/2 '
+ 'x+1/2, z, y+1/2 '
+ 'x+1/2, y, -z+1/2 '
+ '-x+1/2, -y, -z+1/2 '
+ 'x, y+1/2, z+1/2 '
+ '-x, -y+1/2, z+1/2 '
+ '-x, -z+1/2, -y+1/2 '
+ '-x, -z+1/2, y+1/2 '
+ '-x, z+1/2, -y+1/2 '
+ '-x, z+1/2, y+1/2 '
+ '-x, y+1/2, -z+1/2 '
+ '-x, y+1/2, z+1/2 '
+ '-y, -x+1/2, -z+1/2 '
+ '-y, -x+1/2, z+1/2 '
+ '-y, -z+1/2, -x+1/2 '
+ '-y, -z+1/2, x+1/2 '
+ '-y, z+1/2, -x+1/2 '
+ '-y, z+1/2, x+1/2 '
+ '-y, x+1/2, -z+1/2 '
+ '-y, x+1/2, z+1/2 '
+ '-z, -x+1/2, -y+1/2 '
+ '-z, -x+1/2, y+1/2 '
+ '-z, -y+1/2, -x+1/2 '
+ '-z, -y+1/2, x+1/2 '
+ '-z, y+1/2, -x+1/2 '
+ '-z, y+1/2, x+1/2 '
+ '-z, x+1/2, -y+1/2 '
+ '-z, x+1/2, y+1/2 '
+ 'z, -x+1/2, -y+1/2 '
+ 'z, -x+1/2, y+1/2 '
+ 'z, -y+1/2, -x+1/2 '
+ 'z, -y+1/2, x+1/2 '
+ 'z, y+1/2, -x+1/2 '
+ 'z, y+1/2, x+1/2 '
+ 'z, x+1/2, -y+1/2 '
+ 'z, x+1/2, y+1/2 '
+ 'y, -x+1/2, -z+1/2 '
+ 'y, -x+1/2, z+1/2 '
+ 'y, -z+1/2, -x+1/2 '
+ 'y, -z+1/2, x+1/2 '
+ 'y, z+1/2, -x+1/2 '
+ 'y, z+1/2, x+1/2 '
+ 'y, x+1/2, -z+1/2 '
+ 'y, x+1/2, z+1/2 '
+ 'x, -y+1/2, -z+1/2 '
+ 'x, -y+1/2, z+1/2 '
+ 'x, -z+1/2, -y+1/2 '
+ 'x, -z+1/2, y+1/2 '
+ 'x, z+1/2, -y+1/2 '
+ 'x, z+1/2, y+1/2 '
+ 'x, y+1/2, -z+1/2 '
+ '-x, -y+1/2, -z+1/2 '
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+_atom_site_occupancy
+_atom_site_B_iso_or_equiv
+Bi 0 0 0 0.5 3.30(17)
+Zr 0 0 0 0.5 3.30(17)
+O 0.25 0.25 0.25 0.875 8.1(4)
+loop_
+_atom_site_aniso_label
+_atom_site_aniso_U_11
+_atom_site_aniso_U_22
+_atom_site_aniso_U_33
+_atom_site_aniso_U_12
+_atom_site_aniso_U_13
+_atom_site_aniso_U_23
+Bi 0 0 0 0 0 0
+Zr 0 0 0 0 0 0
+O 0 0 0 0 0 0
diff --git a/src/routes/posts/new-dielectric-materials/Bi2Zr2O7-Fm3m.json b/src/routes/posts/new-dielectric-materials/Bi2Zr2O7-Fm3m.json
new file mode 100644
index 00000000..1a89dbeb
--- /dev/null
+++ b/src/routes/posts/new-dielectric-materials/Bi2Zr2O7-Fm3m.json
@@ -0,0 +1,119 @@
+{
+ "@module": "pymatgen.core.structure",
+ "@class": "Structure",
+ "charge": 0.0,
+ "lattice": {
+ "matrix": [
+ [5.3485, 0.0, 3.275011702619809e-16],
+ [-3.275011702619809e-16, 5.3485, 3.275011702619809e-16],
+ [0.0, 0.0, 5.3485]
+ ],
+ "pbc": [true, true, true],
+ "a": 5.3485,
+ "b": 5.3485,
+ "c": 5.3485,
+ "alpha": 90.0,
+ "beta": 90.0,
+ "gamma": 90.0,
+ "volume": 153.00160985912498
+ },
+ "properties": {},
+ "sites": [
+ {
+ "species": [
+ { "element": "Bi", "occu": 0.5 },
+ { "element": "Zr", "occu": 0.5 }
+ ],
+ "abc": [0.0, 0.0, 0.0],
+ "xyz": [0.0, 0.0, 0.0],
+ "properties": {},
+ "label": "Zr"
+ },
+ {
+ "species": [
+ { "element": "Bi", "occu": 0.5 },
+ { "element": "Zr", "occu": 0.5 }
+ ],
+ "abc": [0.5, 0.5, 0.0],
+ "xyz": [2.67425, 2.67425, 3.275011702619809e-16],
+ "properties": {},
+ "label": "Zr"
+ },
+ {
+ "species": [
+ { "element": "Bi", "occu": 0.5 },
+ { "element": "Zr", "occu": 0.5 }
+ ],
+ "abc": [0.5, 0.0, 0.5],
+ "xyz": [2.67425, 0.0, 2.67425],
+ "properties": {},
+ "label": "Zr"
+ },
+ {
+ "species": [
+ { "element": "Bi", "occu": 0.5 },
+ { "element": "Zr", "occu": 0.5 }
+ ],
+ "abc": [0.0, 0.5, 0.5],
+ "xyz": [-1.6375058513099044e-16, 2.67425, 2.67425],
+ "properties": {},
+ "label": "Zr"
+ },
+ {
+ "species": [{ "element": "O", "occu": 0.875 }],
+ "abc": [0.25, 0.25, 0.25],
+ "xyz": [1.337125, 1.337125, 1.3371250000000001],
+ "properties": {},
+ "label": "O"
+ },
+ {
+ "species": [{ "element": "O", "occu": 0.875 }],
+ "abc": [0.75, 0.75, 0.25],
+ "xyz": [4.011374999999999, 4.011374999999999, 1.3371250000000003],
+ "properties": {},
+ "label": "O"
+ },
+ {
+ "species": [{ "element": "O", "occu": 0.875 }],
+ "abc": [0.75, 0.75, 0.75],
+ "xyz": [4.011374999999999, 4.011374999999999, 4.011375],
+ "properties": {},
+ "label": "O"
+ },
+ {
+ "species": [{ "element": "O", "occu": 0.875 }],
+ "abc": [0.75, 0.25, 0.75],
+ "xyz": [4.011374999999999, 1.337125, 4.011375],
+ "properties": {},
+ "label": "O"
+ },
+ {
+ "species": [{ "element": "O", "occu": 0.875 }],
+ "abc": [0.75, 0.25, 0.25],
+ "xyz": [4.011374999999999, 1.337125, 1.3371250000000001],
+ "properties": {},
+ "label": "O"
+ },
+ {
+ "species": [{ "element": "O", "occu": 0.875 }],
+ "abc": [0.25, 0.75, 0.75],
+ "xyz": [1.3371249999999997, 4.011374999999999, 4.011375],
+ "properties": {},
+ "label": "O"
+ },
+ {
+ "species": [{ "element": "O", "occu": 0.875 }],
+ "abc": [0.25, 0.75, 0.25],
+ "xyz": [1.3371249999999997, 4.011374999999999, 1.3371250000000001],
+ "properties": {},
+ "label": "O"
+ },
+ {
+ "species": [{ "element": "O", "occu": 0.875 }],
+ "abc": [0.25, 0.25, 0.75],
+ "xyz": [1.337125, 1.337125, 4.011375],
+ "properties": {},
+ "label": "O"
+ }
+ ]
+}
diff --git a/src/routes/posts/new-dielectric-materials/CsTaTeO6-Fd3m.cif b/src/routes/posts/new-dielectric-materials/CsTaTeO6-Fd3m.cif
new file mode 100644
index 00000000..40d6df97
--- /dev/null
+++ b/src/routes/posts/new-dielectric-materials/CsTaTeO6-Fd3m.cif
@@ -0,0 +1,228 @@
+
+data_
+_chemical_name_mineral ?CTT?
+_cell_length_a 10.29895(5)
+_cell_length_b 10.29895(5)
+_cell_length_c 10.29895(5)
+_cell_angle_alpha 90
+_cell_angle_beta 90
+_cell_angle_gamma 90
+_cell_volume 1092.393(16)
+_space_group Fd-3mz
+loop_
+_symmetry_equiv_pos_as_xyz
+ 'x, y, z '
+ '-x, -z, -y '
+ '-x+1/4, -z-1/4, y+1/2 '
+ '-x+1/4, y+1/2, -z-1/4 '
+ '-x+1/2, z-1/4, y+1/4 '
+ '-x+1/2, y+1/4, z-1/4 '
+ '-x-1/4, -y+1/4, z+1/2 '
+ '-x-1/4, z+1/2, -y+1/4 '
+ '-y, -x, -z '
+ '-y, -z, -x '
+ '-y+1/4, -x-1/4, z+1/2 '
+ '-y+1/4, z+1/2, -x-1/4 '
+ '-y+1/2, z+1/4, x-1/4 '
+ '-y+1/2, x-1/4, z+1/4 '
+ '-y-1/4, -z+1/4, x+1/2 '
+ '-y-1/4, x+1/2, -z+1/4 '
+ '-z, -x, -y '
+ '-z, -y, -x '
+ '-z+1/4, -y-1/4, x+1/2 '
+ '-z+1/4, x+1/2, -y-1/4 '
+ '-z+1/2, y-1/4, x+1/4 '
+ '-z+1/2, x+1/4, y-1/4 '
+ '-z-1/4, -x+1/4, y+1/2 '
+ '-z-1/4, y+1/2, -x+1/4 '
+ 'z, y, x '
+ 'z, x, y '
+ 'z+1/4, -y+1/2, x-1/4 '
+ 'z+1/4, x-1/4, -y+1/2 '
+ 'z+1/2, -x-1/4, -y+1/4 '
+ 'z+1/2, -y+1/4, -x-1/4 '
+ 'z-1/4, -x+1/2, y+1/4 '
+ 'z-1/4, y+1/4, -x+1/2 '
+ 'y, z, x '
+ 'y, x, z '
+ 'y+1/4, -x+1/2, z-1/4 '
+ 'y+1/4, z-1/4, -x+1/2 '
+ 'y+1/2, -x+1/4, -z-1/4 '
+ 'y+1/2, -z-1/4, -x+1/4 '
+ 'y-1/4, -z+1/2, x+1/4 '
+ 'y-1/4, x+1/4, -z+1/2 '
+ 'x, z, y '
+ '-x, -y, -z '
+ 'x+1/4, -z+1/2, y-1/4 '
+ 'x+1/4, y-1/4, -z+1/2 '
+ 'x+1/2, -y-1/4, -z+1/4 '
+ 'x+1/2, -z+1/4, -y-1/4 '
+ 'x-1/4, -y+1/2, z+1/4 '
+ 'x-1/4, z+1/4, -y+1/2 '
+ 'x+1/2, y+1/2, z '
+ '-x+1/2, -z+1/2, -y '
+ '-x-1/4, -z+1/4, y+1/2 '
+ '-x-1/4, y, -z-1/4 '
+ '-x, z+1/4, y+1/4 '
+ '-x, y-1/4, z-1/4 '
+ '-x+1/4, -y-1/4, z+1/2 '
+ '-x+1/4, z, -y+1/4 '
+ '-y+1/2, -x+1/2, -z '
+ '-y+1/2, -z+1/2, -x '
+ '-y-1/4, -x+1/4, z+1/2 '
+ '-y-1/4, z, -x-1/4 '
+ '-y, z-1/4, x-1/4 '
+ '-y, x+1/4, z+1/4 '
+ '-y+1/4, -z-1/4, x+1/2 '
+ '-y+1/4, x, -z+1/4 '
+ '-z+1/2, -x+1/2, -y '
+ '-z+1/2, -y+1/2, -x '
+ '-z-1/4, -y+1/4, x+1/2 '
+ '-z-1/4, x, -y-1/4 '
+ '-z, y+1/4, x+1/4 '
+ '-z, x-1/4, y-1/4 '
+ '-z+1/4, -x-1/4, y+1/2 '
+ '-z+1/4, y, -x+1/4 '
+ 'z+1/2, y+1/2, x '
+ 'z+1/2, x+1/2, y '
+ 'z-1/4, -y, x-1/4 '
+ 'z-1/4, x+1/4, -y+1/2 '
+ 'z, -x+1/4, -y+1/4 '
+ 'z, -y-1/4, -x-1/4 '
+ 'z+1/4, -x, y+1/4 '
+ 'z+1/4, y-1/4, -x+1/2 '
+ 'y+1/2, z+1/2, x '
+ 'y+1/2, x+1/2, z '
+ 'y-1/4, -x, z-1/4 '
+ 'y-1/4, z+1/4, -x+1/2 '
+ 'y, -x-1/4, -z-1/4 '
+ 'y, -z+1/4, -x+1/4 '
+ 'y+1/4, -z, x+1/4 '
+ 'y+1/4, x-1/4, -z+1/2 '
+ 'x+1/2, z+1/2, y '
+ '-x+1/2, -y+1/2, -z '
+ 'x-1/4, -z, y-1/4 '
+ 'x-1/4, y+1/4, -z+1/2 '
+ 'x, -y+1/4, -z+1/4 '
+ 'x, -z-1/4, -y-1/4 '
+ 'x+1/4, -y, z+1/4 '
+ 'x+1/4, z-1/4, -y+1/2 '
+ 'x+1/2, y, z+1/2 '
+ '-x+1/2, -z, -y+1/2 '
+ '-x-1/4, -z-1/4, y '
+ '-x-1/4, y+1/2, -z+1/4 '
+ '-x, z-1/4, y-1/4 '
+ '-x, y+1/4, z+1/4 '
+ '-x+1/4, -y+1/4, z '
+ '-x+1/4, z+1/2, -y-1/4 '
+ '-y+1/2, -x, -z+1/2 '
+ '-y+1/2, -z, -x+1/2 '
+ '-y-1/4, -x-1/4, z '
+ '-y-1/4, z+1/2, -x+1/4 '
+ '-y, z+1/4, x+1/4 '
+ '-y, x-1/4, z-1/4 '
+ '-y+1/4, -z+1/4, x '
+ '-y+1/4, x+1/2, -z-1/4 '
+ '-z+1/2, -x, -y+1/2 '
+ '-z+1/2, -y, -x+1/2 '
+ '-z-1/4, -y-1/4, x '
+ '-z-1/4, x+1/2, -y+1/4 '
+ '-z, y-1/4, x-1/4 '
+ '-z, x+1/4, y+1/4 '
+ '-z+1/4, -x+1/4, y '
+ '-z+1/4, y+1/2, -x-1/4 '
+ 'z+1/2, y, x+1/2 '
+ 'z+1/2, x, y+1/2 '
+ 'z-1/4, -y+1/2, x+1/4 '
+ 'z-1/4, x-1/4, -y '
+ 'z, -x-1/4, -y-1/4 '
+ 'z, -y+1/4, -x+1/4 '
+ 'z+1/4, -x+1/2, y-1/4 '
+ 'z+1/4, y+1/4, -x '
+ 'y+1/2, z, x+1/2 '
+ 'y+1/2, x, z+1/2 '
+ 'y-1/4, -x+1/2, z+1/4 '
+ 'y-1/4, z-1/4, -x '
+ 'y, -x+1/4, -z+1/4 '
+ 'y, -z-1/4, -x-1/4 '
+ 'y+1/4, -z+1/2, x-1/4 '
+ 'y+1/4, x+1/4, -z '
+ 'x+1/2, z, y+1/2 '
+ '-x+1/2, -y, -z+1/2 '
+ 'x-1/4, -z+1/2, y+1/4 '
+ 'x-1/4, y-1/4, -z '
+ 'x, -y-1/4, -z-1/4 '
+ 'x, -z+1/4, -y+1/4 '
+ 'x+1/4, -y+1/2, z-1/4 '
+ 'x+1/4, z+1/4, -y '
+ 'x, y+1/2, z+1/2 '
+ '-x, -z+1/2, -y+1/2 '
+ '-x+1/4, -z+1/4, y '
+ '-x+1/4, y, -z+1/4 '
+ '-x+1/2, z+1/4, y-1/4 '
+ '-x+1/2, y-1/4, z+1/4 '
+ '-x-1/4, -y-1/4, z '
+ '-x-1/4, z, -y-1/4 '
+ '-y, -x+1/2, -z+1/2 '
+ '-y, -z+1/2, -x+1/2 '
+ '-y+1/4, -x+1/4, z '
+ '-y+1/4, z, -x+1/4 '
+ '-y+1/2, z-1/4, x+1/4 '
+ '-y+1/2, x+1/4, z-1/4 '
+ '-y-1/4, -z-1/4, x '
+ '-y-1/4, x, -z-1/4 '
+ '-z, -x+1/2, -y+1/2 '
+ '-z, -y+1/2, -x+1/2 '
+ '-z+1/4, -y+1/4, x '
+ '-z+1/4, x, -y+1/4 '
+ '-z+1/2, y+1/4, x-1/4 '
+ '-z+1/2, x-1/4, y+1/4 '
+ '-z-1/4, -x-1/4, y '
+ '-z-1/4, y, -x-1/4 '
+ 'z, y+1/2, x+1/2 '
+ 'z, x+1/2, y+1/2 '
+ 'z+1/4, -y, x+1/4 '
+ 'z+1/4, x+1/4, -y '
+ 'z+1/2, -x+1/4, -y-1/4 '
+ 'z+1/2, -y-1/4, -x+1/4 '
+ 'z-1/4, -x, y-1/4 '
+ 'z-1/4, y-1/4, -x '
+ 'y, z+1/2, x+1/2 '
+ 'y, x+1/2, z+1/2 '
+ 'y+1/4, -x, z+1/4 '
+ 'y+1/4, z+1/4, -x '
+ 'y+1/2, -x-1/4, -z+1/4 '
+ 'y+1/2, -z+1/4, -x-1/4 '
+ 'y-1/4, -z, x-1/4 '
+ 'y-1/4, x-1/4, -z '
+ 'x, z+1/2, y+1/2 '
+ '-x, -y+1/2, -z+1/2 '
+ 'x+1/4, -z, y+1/4 '
+ 'x+1/4, y+1/4, -z '
+ 'x+1/2, -y+1/4, -z-1/4 '
+ 'x+1/2, -z-1/4, -y+1/4 '
+ 'x-1/4, -y, z-1/4 '
+ 'x-1/4, z-1/4, -y '
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+_atom_site_occupancy
+_atom_site_B_iso_or_equiv
+Cs 0.375 0.375 0.375 1 0.78(3)
+Ta 0 0 0 0.5 0.087(15)
+Te 0 0 0 0.5 0.087(15)
+O1 0.3159 0.125 0.125 1 0.69(18)
+loop_
+_atom_site_aniso_label
+_atom_site_aniso_U_11
+_atom_site_aniso_U_22
+_atom_site_aniso_U_33
+_atom_site_aniso_U_12
+_atom_site_aniso_U_13
+_atom_site_aniso_U_23
+Cs 0 0 0 0 0 0
+Ta 0 0 0 0 0 0
+Te 0 0 0 0 0 0
+O1 0 0 0 0 0 0
diff --git a/src/routes/posts/new-dielectric-materials/CsTaTeO6-Fd3m.json b/src/routes/posts/new-dielectric-materials/CsTaTeO6-Fd3m.json
new file mode 100644
index 00000000..146f9dd4
--- /dev/null
+++ b/src/routes/posts/new-dielectric-materials/CsTaTeO6-Fd3m.json
@@ -0,0 +1,575 @@
+{
+ "@module": "pymatgen.core.structure",
+ "@class": "Structure",
+ "charge": 0.0,
+ "lattice": {
+ "matrix": [
+ [10.29895, 0.0, 6.306288076039316e-16],
+ [-6.306288076039316e-16, 10.29895, 6.306288076039316e-16],
+ [0.0, 0.0, 10.29895]
+ ],
+ "pbc": [true, true, true],
+ "a": 10.29895,
+ "b": 10.29895,
+ "c": 10.29895,
+ "alpha": 90.0,
+ "beta": 90.0,
+ "gamma": 90.0,
+ "volume": 1092.3928505660922
+ },
+ "properties": {},
+ "sites": [
+ {
+ "species": [{ "element": "Cs", "occu": 1.0 }],
+ "abc": [0.375, 0.375, 0.375],
+ "xyz": [3.8621062499999996, 3.86210625, 3.8621062500000005],
+ "properties": {},
+ "label": "Cs"
+ },
+ {
+ "species": [{ "element": "Cs", "occu": 1.0 }],
+ "abc": [0.625, 0.625, 0.625],
+ "xyz": [6.4368437499999995, 6.4368437499999995, 6.43684375],
+ "properties": {},
+ "label": "Cs"
+ },
+ {
+ "species": [{ "element": "Cs", "occu": 1.0 }],
+ "abc": [0.875, 0.375, 0.875],
+ "xyz": [9.011581249999999, 3.86210625, 9.01158125],
+ "properties": {},
+ "label": "Cs"
+ },
+ {
+ "species": [{ "element": "Cs", "occu": 1.0 }],
+ "abc": [0.875, 0.875, 0.375],
+ "xyz": [9.011581249999999, 9.011581249999999, 3.862106250000001],
+ "properties": {},
+ "label": "Cs"
+ },
+ {
+ "species": [{ "element": "Cs", "occu": 1.0 }],
+ "abc": [0.125, 0.125, 0.625],
+ "xyz": [1.28736875, 1.28736875, 6.4368437499999995],
+ "properties": {},
+ "label": "Cs"
+ },
+ {
+ "species": [{ "element": "Cs", "occu": 1.0 }],
+ "abc": [0.125, 0.625, 0.125],
+ "xyz": [1.2873687499999995, 6.4368437499999995, 1.2873687500000004],
+ "properties": {},
+ "label": "Cs"
+ },
+ {
+ "species": [{ "element": "Cs", "occu": 1.0 }],
+ "abc": [0.375, 0.875, 0.875],
+ "xyz": [3.8621062499999996, 9.011581249999999, 9.01158125],
+ "properties": {},
+ "label": "Cs"
+ },
+ {
+ "species": [{ "element": "Cs", "occu": 1.0 }],
+ "abc": [0.625, 0.125, 0.125],
+ "xyz": [6.4368437499999995, 1.28736875, 1.2873687500000004],
+ "properties": {},
+ "label": "Cs"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.0, 0.0, 0.0],
+ "xyz": [0.0, 0.0, 0.0],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.25, 0.75, 0.5],
+ "xyz": [2.5747374999999995, 7.7242125, 5.149475000000001],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.25, 0.5, 0.75],
+ "xyz": [2.5747374999999995, 5.149475, 7.7242125],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.5, 0.75, 0.25],
+ "xyz": [5.149474999999999, 7.7242125, 2.574737500000001],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.5, 0.25, 0.75],
+ "xyz": [5.149475, 2.5747375, 7.7242125],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.75, 0.25, 0.5],
+ "xyz": [7.7242125, 2.5747375, 5.149475000000001],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.75, 0.5, 0.25],
+ "xyz": [7.7242125, 5.149475, 2.574737500000001],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.5, 0.5, 0.0],
+ "xyz": [5.149475, 5.149475, 6.306288076039316e-16],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.75, 0.0, 0.75],
+ "xyz": [7.7242125, 0.0, 7.7242125],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.0, 0.25, 0.25],
+ "xyz": [-1.576572019009829e-16, 2.5747375, 2.5747375],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.0, 0.75, 0.75],
+ "xyz": [-4.729716057029487e-16, 7.7242125, 7.7242125],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.25, 0.0, 0.25],
+ "xyz": [2.5747375, 0.0, 2.5747375],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.5, 0.0, 0.5],
+ "xyz": [5.149475, 0.0, 5.149475],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.75, 0.75, 0.0],
+ "xyz": [7.724212499999999, 7.7242125, 9.459432114058974e-16],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.25, 0.25, 0.0],
+ "xyz": [2.5747375, 2.5747375, 3.153144038019658e-16],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [
+ { "element": "Ta", "occu": 0.5 },
+ { "element": "Te", "occu": 0.5 }
+ ],
+ "abc": [0.0, 0.5, 0.5],
+ "xyz": [-3.153144038019658e-16, 5.149475, 5.149475],
+ "properties": {},
+ "label": "Te"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.3159, 0.125, 0.125],
+ "xyz": [3.253438305, 1.28736875, 1.2873687500000002],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.6840999999999999, 0.875, 0.875],
+ "xyz": [7.045511694999998, 9.011581249999999, 9.01158125],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.9340999999999999, 0.625, 0.625],
+ "xyz": [9.620249195, 6.4368437499999995, 6.43684375],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.18409999999999999, 0.875, 0.375],
+ "xyz": [1.8960366949999994, 9.011581249999999, 3.8621062500000005],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.18409999999999999, 0.375, 0.875],
+ "xyz": [1.8960366949999996, 3.86210625, 9.01158125],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.43409999999999993, 0.125, 0.625],
+ "xyz": [4.470774194999999, 1.28736875, 6.43684375],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.43409999999999993, 0.625, 0.125],
+ "xyz": [4.470774194999999, 6.4368437499999995, 1.2873687500000006],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.875, 0.6840999999999999, 0.875],
+ "xyz": [9.011581249999999, 7.045511694999999, 9.01158125],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.875, 0.875, 0.6840999999999999],
+ "xyz": [9.011581249999999, 9.011581249999999, 7.045511695],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.125, 0.43409999999999993, 0.625],
+ "xyz": [1.2873687499999997, 4.470774194999999, 6.43684375],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.125, 0.625, 0.43409999999999993],
+ "xyz": [1.2873687499999995, 6.4368437499999995, 4.470774195],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.375, 0.375, 0.06590000000000001],
+ "xyz": [3.8621062499999996, 3.86210625, 0.6787008050000006],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.375, 0.06590000000000001, 0.375],
+ "xyz": [3.86210625, 0.6787008050000001, 3.86210625],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.625, 0.125, 0.8159000000000001],
+ "xyz": [6.4368437499999995, 1.28736875, 8.402913305],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.625, 0.8159000000000001, 0.125],
+ "xyz": [6.436843749999999, 8.402913305, 1.2873687500000008],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.125, 0.625, 0.8159000000000001],
+ "xyz": [1.2873687499999995, 6.4368437499999995, 8.402913305],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.125, 0.8159000000000001, 0.625],
+ "xyz": [1.2873687499999995, 8.402913305, 6.43684375],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.375, 0.875, 0.5659000000000001],
+ "xyz": [3.8621062499999996, 9.011581249999999, 5.828175805000002],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.375, 0.5659000000000001, 0.875],
+ "xyz": [3.8621062499999996, 5.828175805000001, 9.01158125],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.625, 0.9340999999999999, 0.625],
+ "xyz": [6.436843749999999, 9.620249195, 6.43684375],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.625, 0.625, 0.9340999999999999],
+ "xyz": [6.4368437499999995, 6.4368437499999995, 9.620249195],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.125, 0.125, 0.3159],
+ "xyz": [1.28736875, 1.28736875, 3.253438305],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.125, 0.3159, 0.125],
+ "xyz": [1.2873687499999997, 3.253438305, 1.2873687500000002],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.625, 0.43409999999999993, 0.125],
+ "xyz": [6.4368437499999995, 4.470774194999999, 1.2873687500000006],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.625, 0.125, 0.43409999999999993],
+ "xyz": [6.4368437499999995, 1.28736875, 4.470774195],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.875, 0.18409999999999999, 0.375],
+ "xyz": [9.011581249999999, 1.8960366949999998, 3.8621062500000005],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.875, 0.375, 0.18409999999999999],
+ "xyz": [9.011581249999999, 3.86210625, 1.8960366950000005],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.375, 0.18409999999999999, 0.875],
+ "xyz": [3.86210625, 1.8960366949999998, 9.01158125],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.375, 0.875, 0.18409999999999999],
+ "xyz": [3.8621062499999996, 9.011581249999999, 1.8960366950000005],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.875, 0.375, 0.5659000000000001],
+ "xyz": [9.011581249999999, 3.86210625, 5.828175805000002],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.875, 0.5659000000000001, 0.375],
+ "xyz": [9.011581249999999, 5.828175805000001, 3.862106250000001],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.5659000000000001, 0.375, 0.875],
+ "xyz": [5.828175805000001, 3.86210625, 9.01158125],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.5659000000000001, 0.875, 0.375],
+ "xyz": [5.828175805, 9.011581249999999, 3.862106250000001],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.8159000000000001, 0.625, 0.125],
+ "xyz": [8.402913305, 6.4368437499999995, 1.2873687500000008],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.8159000000000001, 0.125, 0.625],
+ "xyz": [8.402913305, 1.28736875, 6.43684375],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.06590000000000001, 0.375, 0.375],
+ "xyz": [0.6787008049999999, 3.86210625, 3.86210625],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.6840999999999999, 0.375, 0.375],
+ "xyz": [7.045511694999999, 3.86210625, 3.8621062500000005],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.9340999999999999, 0.125, 0.125],
+ "xyz": [9.620249195, 1.28736875, 1.2873687500000006],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.375, 0.375, 0.6840999999999999],
+ "xyz": [3.8621062499999996, 3.86210625, 7.045511694999999],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.875, 0.875, 0.06590000000000001],
+ "xyz": [9.011581249999999, 9.011581249999999, 0.6787008050000012],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.625, 0.3159, 0.625],
+ "xyz": [6.4368437499999995, 3.253438305, 6.43684375],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.875, 0.06590000000000001, 0.875],
+ "xyz": [9.011581249999999, 0.6787008050000001, 9.01158125],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.125, 0.125, 0.9340999999999999],
+ "xyz": [1.28736875, 1.28736875, 9.620249195],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.625, 0.625, 0.3159],
+ "xyz": [6.4368437499999995, 6.4368437499999995, 3.253438305000001],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.125, 0.9340999999999999, 0.125],
+ "xyz": [1.2873687499999993, 9.620249195, 1.2873687500000006],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.375, 0.6840999999999999, 0.375],
+ "xyz": [3.8621062499999996, 7.045511694999999, 3.8621062500000005],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.06590000000000001, 0.875, 0.875],
+ "xyz": [0.6787008049999995, 9.011581249999999, 9.01158125],
+ "properties": {},
+ "label": "O1"
+ },
+ {
+ "species": [{ "element": "O", "occu": 1.0 }],
+ "abc": [0.3159, 0.625, 0.625],
+ "xyz": [3.2534383049999995, 6.4368437499999995, 6.43684375],
+ "properties": {},
+ "label": "O1"
+ }
+ ]
+}
diff --git a/src/routes/posts/new-dielectric-materials/dielectric-banner.svg b/src/routes/posts/new-dielectric-materials/dielectric-banner.svg
new file mode 100644
index 00000000..45cd6e7f
--- /dev/null
+++ b/src/routes/posts/new-dielectric-materials/dielectric-banner.svg
@@ -0,0 +1 @@
+
diff --git a/src/routes/posts/new-dielectric-materials/pmg-cif-to-json.py b/src/routes/posts/new-dielectric-materials/pmg-cif-to-json.py
new file mode 100644
index 00000000..33c0778f
--- /dev/null
+++ b/src/routes/posts/new-dielectric-materials/pmg-cif-to-json.py
@@ -0,0 +1,8 @@
+# %%
+from glob import glob
+
+from pymatgen.core import Structure
+
+for cif in glob('*.cif'):
+ structure = Structure.from_file(cif)
+ structure.to(cif.replace('.cif', '.json'))
diff --git a/vite.config.ts b/vite.config.ts
index 1cb3f0c8..8754e570 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -6,9 +6,7 @@ import { loadEnv, type UserConfig } from 'vite'
async function fetch_github_data(gh_token: string) {
const auth = { headers: { Authorization: `token ${gh_token}` } }
- const cv = yamljs.load(
- fs.readFileSync(`src/routes/open-source/oss.yml`, `utf8`),
- )
+ const cv = yamljs.load(fs.readFileSync(`src/lib/oss.yml`, `utf8`))
for (const project of cv.projects) {
const handle = project.repo.replace(`https://github.com/`, ``)
@@ -35,10 +33,7 @@ async function fetch_github_data(gh_token: string) {
project.languages = Object.keys(languages)
}
- fs.writeFileSync(
- `src/routes/open-source/oss.yml`,
- yamljs.dump(cv, { lineWidth: -1 }),
- )
+ fs.writeFileSync(`src/lib/oss.yml`, yamljs.dump(cv, { lineWidth: -1 }))
}
process.env = { ...process.env, ...loadEnv(``, process.cwd(), ``) }