Structure Refinement: LBCO+Si, McStas¶
This example demonstrates a Rietveld refinement of La0.5Ba0.5CoO3 crystal structure with a small amount of Si phase using time-of-flight neutron powder diffraction data simulated with McStas.
🛠️ Import Library¶
In [2]:
Copied!
from easydiffraction import ExperimentFactory
from easydiffraction import Project
from easydiffraction import StructureFactory
from easydiffraction import download_data
from easydiffraction import ExperimentFactory
from easydiffraction import Project
from easydiffraction import StructureFactory
from easydiffraction import download_data
In [3]:
Copied!
structure_1 = StructureFactory.from_scratch(name='lbco')
structure_1 = StructureFactory.from_scratch(name='lbco')
Set Space Group¶
In [4]:
Copied!
structure_1.space_group.name_h_m = 'P m -3 m'
structure_1.space_group.it_coordinate_system_code = '1'
structure_1.space_group.name_h_m = 'P m -3 m'
structure_1.space_group.it_coordinate_system_code = '1'
Set Unit Cell¶
In [5]:
Copied!
structure_1.cell.length_a = 3.8909
structure_1.cell.length_a = 3.8909
Set Atom Sites¶
In [6]:
Copied!
structure_1.atom_sites.create(
label='La',
type_symbol='La',
fract_x=0,
fract_y=0,
fract_z=0,
adp_iso=0.2,
occupancy=0.5,
)
structure_1.atom_sites.create(
label='Ba',
type_symbol='Ba',
fract_x=0,
fract_y=0,
fract_z=0,
adp_iso=0.2,
occupancy=0.5,
)
structure_1.atom_sites.create(
label='Co',
type_symbol='Co',
fract_x=0.5,
fract_y=0.5,
fract_z=0.5,
adp_iso=0.2567,
)
structure_1.atom_sites.create(
label='O',
type_symbol='O',
fract_x=0,
fract_y=0.5,
fract_z=0.5,
adp_iso=1.4041,
)
structure_1.atom_sites.create(
label='La',
type_symbol='La',
fract_x=0,
fract_y=0,
fract_z=0,
adp_iso=0.2,
occupancy=0.5,
)
structure_1.atom_sites.create(
label='Ba',
type_symbol='Ba',
fract_x=0,
fract_y=0,
fract_z=0,
adp_iso=0.2,
occupancy=0.5,
)
structure_1.atom_sites.create(
label='Co',
type_symbol='Co',
fract_x=0.5,
fract_y=0.5,
fract_z=0.5,
adp_iso=0.2567,
)
structure_1.atom_sites.create(
label='O',
type_symbol='O',
fract_x=0,
fract_y=0.5,
fract_z=0.5,
adp_iso=1.4041,
)
Create Structure 2: Si¶
In [7]:
Copied!
structure_2 = StructureFactory.from_scratch(name='si')
structure_2 = StructureFactory.from_scratch(name='si')
Set Space Group¶
In [8]:
Copied!
structure_2.space_group.name_h_m = 'F d -3 m'
structure_2.space_group.it_coordinate_system_code = '2'
structure_2.space_group.name_h_m = 'F d -3 m'
structure_2.space_group.it_coordinate_system_code = '2'
Set Unit Cell¶
In [9]:
Copied!
structure_2.cell.length_a = 5.43146
structure_2.cell.length_a = 5.43146
Set Atom Sites¶
In [10]:
Copied!
structure_2.atom_sites.create(
label='Si',
type_symbol='Si',
fract_x=0.0,
fract_y=0.0,
fract_z=0.0,
adp_iso=0.0,
)
structure_2.atom_sites.create(
label='Si',
type_symbol='Si',
fract_x=0.0,
fract_y=0.0,
fract_z=0.0,
adp_iso=0.0,
)
In [11]:
Copied!
data_path = download_data(id=8, destination='data')
data_path = download_data(id=8, destination='data')
Getting data...
Data #8: La0.5Ba0.5CoO3 + Si, McStas simulation
✅ Data #8 downloaded to '../../../data/ed-8.xye'
Create Experiment¶
In [12]:
Copied!
experiment = ExperimentFactory.from_data_path(
name='mcstas',
data_path=data_path,
sample_form='powder',
beam_mode='time-of-flight',
radiation_probe='neutron',
scattering_type='bragg',
)
experiment = ExperimentFactory.from_data_path(
name='mcstas',
data_path=data_path,
sample_form='powder',
beam_mode='time-of-flight',
radiation_probe='neutron',
scattering_type='bragg',
)
Set Instrument¶
In [13]:
Copied!
experiment.instrument.setup_twotheta_bank = 94.90931761529106
experiment.instrument.calib_d_to_tof_linear = 58724.76869981215
experiment.instrument.setup_twotheta_bank = 94.90931761529106
experiment.instrument.calib_d_to_tof_linear = 58724.76869981215
Set Peak Profile¶
In [14]:
Copied!
experiment.peak.broad_gauss_sigma_0 = 45137
experiment.peak.broad_gauss_sigma_1 = -52394
experiment.peak.broad_gauss_sigma_2 = 22998
experiment.peak.exp_decay_beta_0 = 0.0055
experiment.peak.exp_decay_beta_1 = 0.0041
experiment.peak.exp_rise_alpha_0 = 0
experiment.peak.exp_rise_alpha_1 = 0.0097
experiment.peak.broad_gauss_sigma_0 = 45137
experiment.peak.broad_gauss_sigma_1 = -52394
experiment.peak.broad_gauss_sigma_2 = 22998
experiment.peak.exp_decay_beta_0 = 0.0055
experiment.peak.exp_decay_beta_1 = 0.0041
experiment.peak.exp_rise_alpha_0 = 0
experiment.peak.exp_rise_alpha_1 = 0.0097
Set Background¶
Select the background type.
In [15]:
Copied!
experiment.background.type = 'line-segment'
experiment.background.type = 'line-segment'
Background type for experiment 'mcstas' already set to
line-segment
Add background points.
In [16]:
Copied!
experiment.background.create(id='1', x=45000, y=0.2)
experiment.background.create(id='2', x=50000, y=0.2)
experiment.background.create(id='3', x=55000, y=0.2)
experiment.background.create(id='4', x=65000, y=0.2)
experiment.background.create(id='5', x=70000, y=0.2)
experiment.background.create(id='6', x=75000, y=0.2)
experiment.background.create(id='7', x=80000, y=0.2)
experiment.background.create(id='8', x=85000, y=0.2)
experiment.background.create(id='9', x=90000, y=0.2)
experiment.background.create(id='10', x=95000, y=0.2)
experiment.background.create(id='11', x=100000, y=0.2)
experiment.background.create(id='12', x=105000, y=0.2)
experiment.background.create(id='13', x=110000, y=0.2)
experiment.background.create(id='1', x=45000, y=0.2)
experiment.background.create(id='2', x=50000, y=0.2)
experiment.background.create(id='3', x=55000, y=0.2)
experiment.background.create(id='4', x=65000, y=0.2)
experiment.background.create(id='5', x=70000, y=0.2)
experiment.background.create(id='6', x=75000, y=0.2)
experiment.background.create(id='7', x=80000, y=0.2)
experiment.background.create(id='8', x=85000, y=0.2)
experiment.background.create(id='9', x=90000, y=0.2)
experiment.background.create(id='10', x=95000, y=0.2)
experiment.background.create(id='11', x=100000, y=0.2)
experiment.background.create(id='12', x=105000, y=0.2)
experiment.background.create(id='13', x=110000, y=0.2)
Set Linked Phases¶
In [17]:
Copied!
experiment.linked_phases.create(id='lbco', scale=4.0)
experiment.linked_phases.create(id='si', scale=0.2)
experiment.linked_phases.create(id='lbco', scale=4.0)
experiment.linked_phases.create(id='si', scale=0.2)
In [18]:
Copied!
project = Project(name='lbco_si_mcstas')
project = Project(name='lbco_si_mcstas')
Add Structures¶
In [19]:
Copied!
project.structures.add(structure_1)
project.structures.add(structure_2)
project.structures.add(structure_1)
project.structures.add(structure_2)
Show Structures¶
In [20]:
Copied!
project.structures.show_names()
project.structures.show_names()
Defined structures 🧩
['lbco', 'si']
Add Experiments¶
In [21]:
Copied!
project.experiments.add(experiment)
project.experiments.add(experiment)
Display Structure¶
In [22]:
Copied!
project.display.structure(struct_name='lbco')
project.display.structure(struct_name='si')
project.display.structure(struct_name='lbco')
project.display.structure(struct_name='si')
Structure 🧩 'lbco' (Atom view type: 'covalent')
Loading plot…
drag = rotate
wheel = zoom
right-drag = pan
wheel = zoom
right-drag = pan
Structure 🧩 'si' (Atom view type: 'covalent')
Loading plot…
drag = rotate
wheel = zoom
right-drag = pan
wheel = zoom
right-drag = pan
Set Excluded Regions¶
Show measured data as loaded from the file.
In [23]:
Copied!
project.display.pattern(expt_name='mcstas')
project.display.pattern(expt_name='mcstas')
Loading plot…
Add excluded regions.
In [24]:
Copied!
experiment.excluded_regions.create(id='1', start=0, end=40000)
experiment.excluded_regions.create(id='2', start=108000, end=200000)
experiment.excluded_regions.create(id='1', start=0, end=40000)
experiment.excluded_regions.create(id='2', start=108000, end=200000)
Show excluded regions.
In [25]:
Copied!
experiment.excluded_regions.show()
experiment.excluded_regions.show()
Excluded regions
| start | end | |
|---|---|---|
| 1 | 0.00000 | 40000.00000 |
| 2 | 108000.00000 | 200000.00000 |
Show measured data after adding excluded regions.
In [26]:
Copied!
project.display.pattern(expt_name='mcstas')
project.display.pattern(expt_name='mcstas')
Loading plot…
Show experiment as CIF.
In [27]:
Copied!
project.experiments['mcstas'].show_as_cif()
project.experiments['mcstas'].show_as_cif()
Experiment 🔬 'mcstas' as cif
| CIF | |
|---|---|
| 1 | data_mcstas |
| 2 | |
| 3 | _expt_type.sample_form powder |
| 4 | _expt_type.beam_mode time-of-flight |
| 5 | _expt_type.radiation_probe neutron |
| 6 | _expt_type.scattering_type bragg |
| 7 | |
| 8 | _diffrn.ambient_temperature ? |
| 9 | _diffrn.ambient_pressure ? |
| 10 | _diffrn.ambient_magnetic_field ? |
| 11 | _diffrn.ambient_electric_field ? |
| 12 | |
| 13 | _calculator.type cryspy |
| 14 | |
| 15 | _peak.rise_alpha_0 0. |
| 16 | _peak.rise_alpha_1 0.0097 |
| 17 | _peak.decay_beta_0 0.0055 |
| 18 | _peak.decay_beta_1 0.0041 |
| 19 | _peak.gauss_sigma_0 45137 |
| 20 | _peak.gauss_sigma_1 -52394 |
| 21 | _peak.gauss_sigma_2 22998 |
| 22 | _peak.type tof-jorgensen |
| 23 | |
| 24 | _instr.2theta_bank 94.90931762 |
| 25 | _instr.d_to_tof_offset 0. |
| 26 | _instr.d_to_tof_linear 58724.76869981 |
| 27 | _instr.d_to_tof_quad 0. |
| 28 | _instr.d_to_tof_recip 0. |
| 29 | |
| 30 | loop_ |
| 31 | _pd_phase_block.id |
| 32 | _pd_phase_block.scale |
| 33 | lbco 4. |
| 34 | si 0.2 |
| 35 | |
| 36 | loop_ |
| 37 | _excluded_region.id |
| 38 | _excluded_region.start |
| 39 | _excluded_region.end |
| 40 | 1 0. 40000 |
| 41 | 2 108000 200000 |
| 42 | |
| 43 | _background.type line-segment |
| 44 | |
| 45 | loop_ |
| 46 | _pd_background.id |
| 47 | _pd_background.line_segment_X |
| 48 | _pd_background.line_segment_intensity |
| 49 | 1 45000 0.2 |
| 50 | 2 50000 0.2 |
| 51 | 3 55000 0.2 |
| 52 | 4 65000 0.2 |
| 53 | 5 70000 0.2 |
| 54 | 6 75000 0.2 |
| 55 | 7 80000 0.2 |
| 56 | 8 85000 0.2 |
| 57 | 9 90000 0.2 |
| 58 | 10 95000 0.2 |
| 59 | 11 100000 0.2 |
| 60 | 12 105000 0.2 |
| 61 | 13 110000 0.2 |
| 62 | |
| 63 | loop_ |
| 64 | _pd_meas.time_of_flight |
| 65 | _pd_data.point_id |
| 66 | _pd_proc.d_spacing |
| 67 | _pd_meas.intensity_total |
| 68 | _pd_meas.intensity_total_su |
| 69 | _pd_calc.intensity_total |
| 70 | _pd_calc.intensity_bkg |
| 71 | _pd_data.refinement_status |
| 72 | 41168.1286 1 0.70103518 0.21537107 0.02485114 0.3052076 0.2 incl |
| 73 | 41273.8536 2 0.70283552 0.26087313 0.03329888 0.46242221 0.2 incl |
| 74 | 41379.5785 3 0.70463587 0.30433686 0.03547088 0.69080511 0.2 incl |
| 75 | 41485.3035 4 0.70643622 0.47366708 0.04206284 0.87296344 0.2 incl |
| 76 | 41591.0285 5 0.70823657 0.6002652 0.04196648 0.87808518 0.2 incl |
| 77 | 41696.7534 6 0.71003691 0.60174483 0.03965186 0.71269725 0.2 incl |
| 78 | 41802.4784 7 0.71183726 0.50118258 0.03810349 0.49758472 0.2 incl |
| 79 | 41908.2034 8 0.71363761 0.37702264 0.03458906 0.33330217 0.2 incl |
| 80 | 42013.9284 9 0.71543795 0.27533183 0.03190951 0.24597095 0.2 incl |
| 81 | 42119.6533 10 0.7172383 0.26182311 0.02830043 0.21381642 0.2 incl |
| 82 | ... |
| 83 | 145835.8489 991 2.48337886 0.2240686 0.01131008 0.2 0.2 excl |
| 84 | 145941.5739 992 2.4851792 0.21377274 0.01070627 0.2 0.2 excl |
| 85 | 146047.2988 993 2.48697955 0.20927726 0.0108552 0.2 0.2 excl |
| 86 | 146153.0238 994 2.4887799 0.21839779 0.01091455 0.2 0.2 excl |
| 87 | 146258.7488 995 2.49058024 0.21613293 0.01104795 0.2 0.2 excl |
| 88 | 146364.4737 996 2.49238059 0.20571926 0.01109275 0.2 0.2 excl |
| 89 | 146470.1987 997 2.49418094 0.22615941 0.01142946 0.2 0.2 excl |
| 90 | 146575.9237 998 2.49598129 0.22113311 0.01151463 0.2 0.2 excl |
| 91 | 146681.6486 999 2.49778163 0.2086239 0.01097638 0.2 0.2 excl |
| 92 | 146787.3736 1000 2.49958198 0.20883912 0.01092893 0.2 0.2 excl |
| 93 | |
| 94 | loop_ |
| 95 | _refln.id |
| 96 | _refln.phase_id |
| 97 | _refln.d_spacing |
| 98 | _refln.sin_theta_over_lambda |
| 99 | _refln.index_h |
| 100 | _refln.index_k |
| 101 | _refln.index_l |
| 102 | _refln.f_calc |
| 103 | _refln.f_squared_calc |
| 104 | _refln.time_of_flight |
| 105 | 1 lbco 1.74006338 0.28734586 2 1 0 0.10595474 0.01122641 102184.81943898 |
| 106 | 2 lbco 1.58845327 0.31477161 2 1 1 0.39025607 0.1522998 93281.55106887 |
| 107 | 3 lbco 1.37564089 0.36346695 2 2 0 2.33500019 5.45222587 80784.19293006 |
| 108 | 4 lbco 1.29696667 0.38551492 2 2 1 0.06467317 0.00418262 76164.06751137 |
| 109 | 5 lbco 1.29696667 0.38551492 3 0 0 0.06467317 0.00418262 76164.06751137 |
| 110 | 6 lbco 1.23041061 0.40636841 3 1 0 0.42233682 0.17836839 72255.57875963 |
| 111 | 7 lbco 1.17315049 0.42620278 3 1 1 1.7530811 3.07329336 68892.99121159 |
| 112 | 8 lbco 1.12320608 0.44515429 2 2 2 2.19435299 4.81518503 65960.0173204 |
| 113 | 9 lbco 1.0791415 0.46333127 3 2 0 0.02740221 0.00075088 63372.3347908 |
| 114 | 10 lbco 1.03988677 0.48082158 3 2 1 0.45063705 0.20307375 61067.10981657 |
| 115 | ... |
| 116 | 42 si 0.85878923 0.58221503 6 2 0 0. 0. 50432.19895265 |
| 117 | 43 si 0.82828988 0.60365339 5 3 3 3.31928 11.01761972 48641.13190237 |
| 118 | 44 si 0.8188234 0.61063228 6 2 2 6.63856 44.07047887 48085.21499475 |
| 119 | 45 si 0.78396372 0.63778461 4 4 4 6.63856 44.07047887 46038.08831826 |
| 120 | 46 si 0.76055653 0.65741333 5 5 1 3.31928 11.01761972 44663.50610299 |
| 121 | 47 si 0.76055653 0.65741333 7 1 1 3.31928 11.01761972 44663.50610299 |
| 122 | 48 si 0.75320798 0.66382727 6 4 0 0. 0. 44231.96452271 |
| 123 | 49 si 0.72580937 0.68888612 6 4 2 0. 0. 42622.98752015 |
| 124 | 50 si 0.70711586 0.7070977 7 3 1 3.31928 11.01761972 41525.21546552 |
| 125 | 51 si 0.70711586 0.7070977 5 5 3 3.31928 11.01761972 41525.21546552 |
In [28]:
Copied!
structure_1.cell.length_a.free = True
structure_1.atom_sites['Co'].adp_iso.free = True
structure_1.atom_sites['O'].adp_iso.free = True
structure_2.cell.length_a.free = True
structure_1.cell.length_a.free = True
structure_1.atom_sites['Co'].adp_iso.free = True
structure_1.atom_sites['O'].adp_iso.free = True
structure_2.cell.length_a.free = True
Set experiment parameters to be optimized.
In [29]:
Copied!
experiment.linked_phases['lbco'].scale.free = True
experiment.linked_phases['si'].scale.free = True
experiment.peak.broad_gauss_sigma_0.free = True
experiment.peak.broad_gauss_sigma_1.free = True
experiment.peak.broad_gauss_sigma_2.free = True
experiment.peak.exp_rise_alpha_1.free = True
experiment.peak.exp_decay_beta_0.free = True
experiment.peak.exp_decay_beta_1.free = True
for point in experiment.background:
point.y.free = True
experiment.linked_phases['lbco'].scale.free = True
experiment.linked_phases['si'].scale.free = True
experiment.peak.broad_gauss_sigma_0.free = True
experiment.peak.broad_gauss_sigma_1.free = True
experiment.peak.broad_gauss_sigma_2.free = True
experiment.peak.exp_rise_alpha_1.free = True
experiment.peak.exp_decay_beta_0.free = True
experiment.peak.exp_decay_beta_1.free = True
for point in experiment.background:
point.y.free = True
Run Fitting¶
In [30]:
Copied!
project.analysis.fit()
project.display.fit.results()
project.display.fit.correlations()
project.analysis.fit()
project.display.fit.results()
project.display.fit.correlations()
Standard fitting
📋 Using experiment 🔬 'mcstas' for 'single' fitting
🚀 Starting fit process with 'lmfit (leastsq)'...
📈 Goodness-of-fit progress:
| iteration | time (s) | χ² | change / status | |
|---|---|---|---|---|
| 1 | 1 | 0.06 | 4760.34 | |
| 2 | 29 | 1.54 | 9.79 | 99.8% ↓ |
| 3 | 55 | 2.76 | 9.54 | 2.6% ↓ |
| 4 | 154 | 7.77 | 9.53 | |
| 5 | 186 | 9.67 | 9.53 |
🏆 Best goodness-of-fit (reduced χ²) is 9.53 at iteration 159
✅ Fitting complete.
⚙️ Settings used:
| Name | Value | Description | |
|---|---|---|---|
| 1 | max_iterations | 1000 | Maximum solver iterations. |
📋 Least-squares fit results:
| Metric | Value | |
|---|---|---|
| 1 | 🧪 Minimizer | lmfit (leastsq) |
| 2 | ✅ Overall status | success |
| 3 | ⏱️ Fitting time (seconds) | 9.67 |
| 4 | 🔁 Iterations | 183 |
| 5 | 📏 Goodness-of-fit (reduced χ²) | 9.53 |
| 6 | 📏 R-factor (Rf, %) | 5.81 |
| 7 | 📏 R-factor squared (Rf², %) | 5.35 |
| 8 | 📏 Weighted R-factor (wR, %) | 4.92 |
📈 Refined parameters:
| datablock | category | entry | parameter | units | start | value | s.u. | change | |
|---|---|---|---|---|---|---|---|---|---|
| 1 | lbco | cell | length_a | Å | 3.8909 | 3.8905 | 0.0002 | 0.01 % ↓ | |
| 2 | lbco | atom_site | Co | adp_iso | Ų | 0.2567 | 0.2309 | 0.1435 | 10.06 % ↓ |
| 3 | lbco | atom_site | O | adp_iso | Ų | 1.4041 | 2.1179 | 0.0478 | 50.84 % ↑ |
| 4 | si | cell | length_a | Å | 5.4315 | 5.4358 | 0.0019 | 0.08 % ↑ | |
| 5 | mcstas | linked_phases | lbco | scale | 4.0000 | 4.4909 | 0.0536 | 12.27 % ↑ | |
| 6 | mcstas | linked_phases | si | scale | 0.2000 | 0.0047 | 0.0004 | 97.64 % ↓ | |
| 7 | mcstas | peak | rise_alpha_1 | μs/Å | 0.0097 | 0.0098 | 0.0004 | 0.59 % ↑ | |
| 8 | mcstas | peak | decay_beta_0 | μs | 0.0055 | 0.0055 | 0.0002 | 0.85 % ↑ | |
| 9 | mcstas | peak | decay_beta_1 | μs/Å | 0.0041 | 0.0043 | 0.0005 | 4.31 % ↑ | |
| 10 | mcstas | peak | gauss_sigma_0 | μs² | 45137.0000 | 39764.0543 | 4803.0848 | 11.90 % ↓ | |
| 11 | mcstas | peak | gauss_sigma_1 | μs/Å | -52394.0000 | -43394.9893 | 6407.9873 | 17.18 % ↓ | |
| 12 | mcstas | peak | gauss_sigma_2 | μs²/Ų | 22998.0000 | 19741.6178 | 2007.9434 | 14.16 % ↓ | |
| 13 | mcstas | background | 1 | y | 0.2000 | 0.2568 | 0.0140 | 28.38 % ↑ | |
| 14 | mcstas | background | 2 | y | 0.2000 | 0.2598 | 0.0137 | 29.91 % ↑ | |
| 15 | mcstas | background | 3 | y | 0.2000 | 0.2674 | 0.0081 | 33.69 % ↑ | |
| 16 | mcstas | background | 4 | y | 0.2000 | 0.2691 | 0.0062 | 34.57 % ↑ | |
| 17 | mcstas | background | 5 | y | 0.2000 | 0.2498 | 0.0061 | 24.88 % ↑ | |
| 18 | mcstas | background | 6 | y | 0.2000 | 0.2468 | 0.0047 | 23.40 % ↑ | |
| 19 | mcstas | background | 7 | y | 0.2000 | 0.2451 | 0.0057 | 22.57 % ↑ | |
| 20 | mcstas | background | 8 | y | 0.2000 | 0.2412 | 0.0036 | 20.60 % ↑ | |
| 21 | mcstas | background | 9 | y | 0.2000 | 0.2229 | 0.0035 | 11.47 % ↑ | |
| 22 | mcstas | background | 10 | y | 0.2000 | 0.2599 | 0.0043 | 29.93 % ↑ | |
| 23 | mcstas | background | 11 | y | 0.2000 | 0.2276 | 0.0037 | 13.78 % ↑ | |
| 24 | mcstas | background | 12 | y | 0.2000 | 0.2215 | 0.0045 | 10.75 % ↑ | |
| 25 | mcstas | background | 13 | y | 0.2000 | 0.2244 | 0.0134 | 12.21 % ↑ |
• start = parameter value before refinement
• value = refined value from least-squares minimization
• s.u. = standard uncertainty (one sigma), from the covariance matrix
• change = relative change from start, in %; ↑ = increase, ↓ = decrease
• value = refined value from least-squares minimization
• s.u. = standard uncertainty (one sigma), from the covariance matrix
• change = relative change from start, in %; ↑ = increase, ↓ = decrease
Loading plot…
Display Pattern¶
In [31]:
Copied!
project.display.pattern(expt_name='mcstas')
project.display.pattern(expt_name='mcstas')
Loading plot…
💾 Save Project¶
In [32]:
Copied!
project.save_as(dir_path='projects/ed_9_lbco_si_mcstas')
project.save_as(dir_path='projects/ed_9_lbco_si_mcstas')
Saving project 📦 'lbco_si_mcstas' to '../../../projects/ed_9_lbco_si_mcstas'
├── 📄 project.cif
├── 📁 structures/
│ └── 📄 lbco.cif
│ └── 📄 si.cif
├── 📁 experiments/
│ └── 📄 mcstas.cif
├── 📁 analysis/
│ └── 📄 analysis.cif
└── 📁 reports/
└── 📄 lbco_si_mcstas.html