La(Ti,Cr,Mn,Fe,Co,Ni,Cu)O₃ on P02.1¶
Fit the high-entropy perovskite La(Ti,Cr,Mn,Fe,Co,Ni,Cu)O₃, seven cations on one site, to synchrotron X-ray powder data from P02.1 at PETRA III.
The project is the catalogue case pd-xray-cwl_lam7o3-p021, the one the command line and the
app's Examples open. The seven metals sharing one site have one displacement, held by
constraints from the start.
Fitting
Single pd xray cwl Bragg
Crystal structure
import easydiffraction as edi
Load the project¶
project_path = edi.download_data('pd-xray-cwl_lam7o3-p021', destination='data')
project = edi.Project.load(project_path)
structure = project.structures['lam7o3']
experiment = project.experiments['p021']
project.display.constraints()
Data 'pd-xray-cwl_lam7o3-p021' is at data/pd-xray-cwl_lam7o3-p021-3eba8bb5594a/pd-xray-cwl_lam7o3-p021
The project marks what its fit frees. The fit below frees it in stages, so start with all of it fixed.
for parameter in project.free_parameters:
parameter.free = False
project.display.pattern('p021')
Perform the analysis¶
The fit goes in stages, freeing one group of parameters at a time.
Scale, 2θ zero and cell¶
The scale, the zero shift and the cell put the peaks in place and at the right height.
experiment.linked_structures['lam7o3'].scale.free = True
experiment.instrument.calib_twotheta_offset.free = True
structure.cell.length_a.free = True
structure.cell.length_b.free = True
structure.cell.length_c.free = True
project.display.parameters.free()
project.analysis.fit()
project.display.fit.results()
edi fit: project pd-xray-cwl_lam7o3-p021, 1236 pts fitted / 1459 loaded, 5 free
iter time (s) Rwp (%) reduced χ² change
60.60 246.85
1 0.004 42.69 122.50 50.4% ↓
2 0.007 38.20 98.09 19.9% ↓
3 0.012 35.23 83.41 15.0% ↓
4 0.016 34.19 78.58 5.8% ↓
5 0.020 33.91 77.27 1.7% ↓
6 0.024 33.81 76.83 0.6% ↓
7 0.028 33.76 76.62 0.3% ↓
8 0.032 33.73 76.49 0.2% ↓
9 0.036 33.72 76.41 0.1% ↓
10 0.040 33.70 76.35 0.1% ↓
11 0.044 33.69 76.31 0.1% ↓
12 0.047 33.69 76.29
13 0.051 33.68 76.27
14 0.055 33.68 76.26
15 0.058 33.68 76.25
16 0.062 33.68 76.25
17 0.065 33.68 76.24
18 0.069 33.68 76.24
19 0.073 33.68 76.24
done · converged · 19 iters · reduced χ² 76.24 · Rwp 33.68 % · 0.08 s
project.display.pattern('p021')
Background¶
for point in experiment.background:
point.intensity.free = True
project.analysis.fit()
project.display.fit.results()
edi fit: project pd-xray-cwl_lam7o3-p021, 1236 pts fitted / 1459 loaded, 25 free
iter time (s) Rwp (%) reduced χ² change
33.68 77.50
1 0.006 10.57 7.63 90.2% ↓
2 0.010 10.54 7.58 0.6% ↓
3 0.014 10.53 7.58 0.1% ↓
4 0.018 10.53 7.58
5 0.023 10.53 7.57
6 0.028 10.53 7.57
7 0.033 10.53 7.57
8 0.037 10.53 7.57
9 0.042 10.53 7.57
10 0.046 10.53 7.57
11 0.051 10.52 7.57
12 0.055 10.52 7.57
13 0.059 10.52 7.57
14 0.066 10.52 7.57
done · converged · 14 iters · reduced χ² 7.57 · Rwp 10.52 % · 0.07 s
project.display.pattern('p021')
Peak widths¶
The Gaussian widths and the Lorentzian X.
experiment.peak.broad_gauss_u.free = True
experiment.peak.broad_gauss_v.free = True
experiment.peak.broad_gauss_w.free = True
experiment.peak.broad_lorentz_x.free = True
project.analysis.fit()
project.display.fit.results()
edi fit: project pd-xray-cwl_lam7o3-p021, 1236 pts fitted / 1459 loaded, 29 free
iter time (s) Rwp (%) reduced χ² change
10.52 7.59
1 0.006 7.07 3.43 54.9% ↓
2 0.012 6.29 2.71 20.8% ↓
3 0.017 6.04 2.50 7.8% ↓
4 0.023 5.89 2.38 5.0% ↓
5 0.029 5.77 2.29 3.9% ↓
6 0.035 5.74 2.26 1.1% ↓
7 0.048 5.57 2.13 5.9% ↓
8 0.055 5.40 2.00 6.0% ↓
9 0.061 5.20 1.85 7.3% ↓
10 0.067 3.76 0.97 47.8% ↓
11 0.073 3.60 0.89 8.2% ↓
12 0.079 3.57 0.87 1.9% ↓
13 0.085 3.56 0.87 0.3% ↓
14 0.090 3.56 0.87 0.1% ↓
15 0.095 3.56 0.87 0.1% ↓
16 0.101 3.55 0.87 0.4% ↓
17 0.106 3.54 0.86 1.0% ↓
18 0.112 3.49 0.84 2.3% ↓
19 0.118 3.43 0.81 3.6% ↓
20 0.123 3.36 0.77 4.2% ↓
21 0.128 3.24 0.72 6.8% ↓
22 0.134 3.04 0.63 12.2% ↓
23 0.139 2.85 0.56 12.1% ↓
24 0.144 2.80 0.54 3.6% ↓
25 0.149 2.79 0.53 0.2% ↓
26 0.157 2.79 0.53
done · converged · 26 iters · reduced χ² 0.53 · Rwp 2.79 % · 0.16 s
project.display.pattern('p021')
Background from the fitted model¶
With a fitted peak model, estimate the background again with the calculated peaks subtracted, which follows the low-angle background better, then free the new points and fit again.
experiment.background.auto_estimate(use_model='subtract', n_points=20)
for point in experiment.background:
point.intensity.free = True
project.analysis.fit()
project.display.fit.results()
edi fit: project pd-xray-cwl_lam7o3-p021, 1236 pts fitted / 1459 loaded, 29 free
iter time (s) Rwp (%) reduced χ² change
4.03 1.11
1 0.008 2.71 0.50 54.7% ↓
2 0.013 2.71 0.50
3 0.019 2.71 0.50
4 0.028 2.71 0.50
done · converged · 4 iters · reduced χ² 0.50 · Rwp 2.71 % · 0.03 s
project.display.pattern('p021')
Atom positions¶
for site in structure.atom_sites:
for coordinate in (site.fract_x, site.fract_y, site.fract_z):
coordinate.free = not coordinate.symmetry_constrained
project.analysis.fit()
project.display.fit.results()
edi fit: project pd-xray-cwl_lam7o3-p021, 1236 pts fitted / 1459 loaded, 36 free
iter time (s) Rwp (%) reduced χ² change
2.71 0.51
1 0.009 1.81 0.23 55.3% ↓
2 0.016 1.78 0.22 3.5% ↓
3 0.024 1.78 0.22
4 0.031 1.78 0.22
5 0.038 1.78 0.22 0.1% ↓
6 0.045 1.78 0.22 0.4% ↓
7 0.052 1.77 0.22 1.1% ↓
8 0.059 1.75 0.21 2.4% ↓
9 0.066 1.71 0.20 3.5% ↓
10 0.073 1.69 0.20 2.8% ↓
11 0.080 1.68 0.19 1.1% ↓
12 0.087 1.68 0.19 0.2% ↓
13 0.094 1.68 0.19
14 0.104 1.68 0.19
done · converged · 14 iters · reduced χ² 0.19 · Rwp 1.68 % · 0.11 s
project.display.pattern('p021')
Displacements¶
La's, the mixed site's (through Ti) and O1's; O2's follows O1's.
structure.atom_sites['La'].adp_iso.free = True
structure.atom_sites['Ti'].adp_iso.free = True
structure.atom_sites['O1'].adp_iso.free = True
project.analysis.fit()
project.display.fit.results()
edi fit: project pd-xray-cwl_lam7o3-p021, 1236 pts fitted / 1459 loaded, 39 free
iter time (s) Rwp (%) reduced χ² change
1.68 0.19
1 0.010 1.62 0.18 6.5% ↓
2 0.019 1.61 0.18 1.8% ↓
3 0.028 1.60 0.18 0.4% ↓
4 0.038 1.60 0.18 0.4% ↓
5 0.046 1.60 0.18 0.2% ↓
6 0.055 1.60 0.18 0.1% ↓
7 0.063 1.60 0.18 0.3% ↓
8 0.071 1.59 0.18 0.7% ↓
9 0.078 1.58 0.17 1.0% ↓
10 0.086 1.58 0.17 0.9% ↓
11 0.094 1.57 0.17 0.4% ↓
12 0.101 1.57 0.17 0.1% ↓
13 0.111 1.57 0.17
done · converged · 13 iters · reduced χ² 0.17 · Rwp 1.57 % · 0.12 s
project.display.pattern('p021')
project.display.fit.correlations()
project.display.structure('lam7o3')
Save the project¶
project.save_as('pd-xray-cwl_lam7o3-p021')
project.report.save_html('pd-xray-cwl_lam7o3-p021.html')
Saving project to 'pd-xray-cwl_lam7o3-p021'
Saving report to 'pd-xray-cwl_lam7o3-p021.html'