msiron commited on
Commit
0641fac
·
1 Parent(s): baa7f8d

add finite temp

Browse files
Files changed (1) hide show
  1. app.py +15 -5
app.py CHANGED
@@ -4,10 +4,12 @@ import gradio as gr
4
  import plotly.graph_objs as go
5
  from datasets import load_dataset
6
  from pymatgen.analysis.phase_diagram import PDPlotter, PhaseDiagram
7
- from pymatgen.core import Composition
8
  from pymatgen.core.composition import Composition
9
- from pymatgen.entries.computed_entries import ComputedEntry
10
- from pymatgen.ext.matproj import MPRester
 
 
11
 
12
  # Load only the train split of the dataset
13
  dataset = load_dataset("LeMaterial/leDataset", split="train")
@@ -24,8 +26,13 @@ def create_phase_diagram(
24
 
25
  # Fetch all entries from the Materials Project database
26
  entries = [
27
- ComputedEntry(
28
- Composition(row["chemical_formula_descriptive"]),
 
 
 
 
 
29
  energy=row["energy"],
30
  correction=row["energy_corrected"] - row["energy"],
31
  entry_id=row["immutable_id"],
@@ -51,6 +58,9 @@ def create_phase_diagram(
51
  # Add elemental entries to ensure they are included
52
  entries.extend([e for e in elemental_entries if e not in entries])
53
 
 
 
 
54
  # Build the phase diagram
55
  try:
56
  phase_diagram = PhaseDiagram(entries)
 
4
  import plotly.graph_objs as go
5
  from datasets import load_dataset
6
  from pymatgen.analysis.phase_diagram import PDPlotter, PhaseDiagram
7
+ from pymatgen.core import Composition, Structure
8
  from pymatgen.core.composition import Composition
9
+ from pymatgen.entries.computed_entries import (
10
+ ComputedStructureEntry,
11
+ GibbsComputedStructureEntry,
12
+ )
13
 
14
  # Load only the train split of the dataset
15
  dataset = load_dataset("LeMaterial/leDataset", split="train")
 
26
 
27
  # Fetch all entries from the Materials Project database
28
  entries = [
29
+ ComputedStructureEntry(
30
+ Structure(
31
+ [x.tolist() for x in df.iloc[0]["lattice_vectors"].tolist()],
32
+ row["species_at_sites"],
33
+ row["cartesian_site_positions"],
34
+ coords_are_cartesian=True,
35
+ ),
36
  energy=row["energy"],
37
  correction=row["energy_corrected"] - row["energy"],
38
  entry_id=row["immutable_id"],
 
58
  # Add elemental entries to ensure they are included
59
  entries.extend([e for e in elemental_entries if e not in entries])
60
 
61
+ if finite_temp:
62
+ entries = GibbsComputedStructureEntry.from_entries(entries)
63
+
64
  # Build the phase diagram
65
  try:
66
  phase_diagram = PhaseDiagram(entries)