comparison muspinsim_config.xml @ 4:e1e338f56656 draft default tip

planemo upload for repository https://github.com/muon-spectroscopy-computational-project/muon-galaxy-tools/main/muspinsim_config commit 70a4d37ecdf5d586703cfc509922311e95d3205c
author muon-spectroscopy-computational-project
date Tue, 18 Jul 2023 13:26:20 +0000
parents 331d0776abb4
children
comparison
equal deleted inserted replaced
3:331d0776abb4 4:e1e338f56656
1 <tool id="muspinsim_config" name="MuSpinSim Configure" version="@TOOL_VERSION@+galaxy@WRAPPER_VERSION@" python_template_version="3.5" profile="22.05" license="MIT"> 1 <tool id="muspinsim_config" name="MuSpinSim Configure" version="@MUSPINSIM_VERSION@+galaxy@WRAPPER_VERSION@" python_template_version="3.5" profile="22.05" license="MIT">
2 <description>define simulation parameters</description> 2 <description>define simulation parameters</description>
3 <macros> 3 <macros>
4 <!-- version of underlying tool (PEP 440) -->
5 <token name="@TOOL_VERSION@">2.0.2</token>
6 <!-- version of this tool wrapper (integer) --> 4 <!-- version of this tool wrapper (integer) -->
7 <token name="@WRAPPER_VERSION@">0</token> 5 <token name="@WRAPPER_VERSION@">0</token>
8 <!-- citation should be updated with every underlying tool version -->
9 <!-- typical fields to update are version, month, year, and doi -->
10 <token name="@TOOL_CITATION@">
11 @software{muspinsim,
12 author = {Sturniolo, Simone and Liborio, Leandro and Owen, Josh and Mudaraddi, Anish and Davies, Joel and Wilkinson, John and {Muon Spectroscopy Computational Project}},
13 license = {MIT},
14 title = {{muspinsim}},
15 url = {https://github.com/muon-spectroscopy-computational-project/muspinsim},
16 version = {v2.0.2},
17 month = {1},
18 year = {2023}
19 doi = {10.5281/zenodo.7568830}
20 }
21 </token>
22 <import>config_macros.xml</import> 6 <import>config_macros.xml</import>
7 <import>muon_macros.xml</import>
23 </macros> 8 </macros>
24 <creator> 9 <creator>
25 <person givenName="Anish" familyName="Mudaraddi" identifier="https://orcid.org/0000-0002-2135-2705"/> 10 <person givenName="Anish" familyName="Mudaraddi" identifier="https://orcid.org/0000-0002-2135-2705"/>
26 <person givenName="Eli" familyName="Chadwick" url="https://github.com/elichad" identifier="https://orcid.org/0000-0002-0035-6475"/> 11 <person givenName="Eli" familyName="Chadwick" url="https://github.com/elichad" identifier="https://orcid.org/0000-0002-0035-6475"/>
27 <person givenName="Joel" familyName="Davies" url="https://github.com/joelvdavies" identifier="https://orcid.org/0000-0002-4153-6819"/> 12 <person givenName="Joel" familyName="Davies" url="https://github.com/joelvdavies" identifier="https://orcid.org/0000-0002-4153-6819"/>
28 <organization url="https://muon-spectroscopy-computational-project.github.io/index.html" name="The Muon Spectroscopy Computational Project"/> 13 <organization url="https://muon-spectroscopy-computational-project.github.io/index.html" name="The Muon Spectroscopy Computational Project"/>
29 </creator> 14 </creator>
30 <requirements> 15 <requirements>
31 <requirement type="package" version="@TOOL_VERSION@">muspinsim</requirement> 16 <requirement type="package" version="@MUSPINSIM_VERSION@">muspinsim</requirement>
32 </requirements> 17 </requirements>
33 <required_files> 18 <required_files>
34 <include type="literal" path="sample_fitting_data.dat"/> 19 <include type="literal" path="sample_fitting_data.dat"/>
35 <include type="literal" path="build_file.py"/> 20 <include type="literal" path="build_file.py"/>
36 </required_files> 21 </required_files>
37 <command detect_errors="exit_code"><![CDATA[ 22 <command detect_errors="exit_code"><![CDATA[
23 #if $use_structure_file_conditional.use_structure_file == "true":
24 #set generator_params = $use_structure_file_conditional.generator
25 structure_name_internal=\$(sed 's/ /\_/g' <<< '$generator_params.structure_file.name') &&
26 ln -s '$generator_params.structure_file' \$structure_name_internal &&
27 muspinsim-gen \$structure_name_internal $generator_params.number_closest --out muspinsim_gen_out.in
28 $generator_params.dipolar
29 $generator_params.quadrupolar
30 $generator_params.include_interatomic
31 --muon_symbol $generator_params.muon_symbol
32 #for $ignored_symbol in $generator_params.ignored_symbols:
33 --ignore_symbol $ignored_symbol.ignored_symbol
34 #end for
35 &&
36 #end if
38 cp '${__tool_directory__}/sample_fitting_data.dat' ./fitting_data.dat && 37 cp '${__tool_directory__}/sample_fitting_data.dat' ./fitting_data.dat &&
39 python '${__tool_directory__}/build_file.py' inputs.json 38 python '${__tool_directory__}/build_file.py' inputs.json
40 ]]></command> 39 ]]></command>
41 <configfiles> 40 <configfiles>
42 <inputs name="inputs" filename="inputs.json"/> 41 <inputs name="inputs" data_style="paths" filename="inputs.json"/>
43 </configfiles> 42 </configfiles>
44 <inputs> 43 <inputs>
45 <param type="text" name="out_file_prefix" label="Name" help="A name with which to label this configuration" optional="true" value="muspinsim"/> 44 <param name="out_file_prefix" type="text" label="Name" help="A name with which to label this configuration" optional="true" value="muspinsim"/>
46 <section name="spins" expanded="true" title="Spins"> 45 <conditional name="use_structure_file_conditional">
47 <repeat name="spins" title="Spins to simulate" min="1" help="Specify the spins to be used in the system. This should include a muon (mu) and one or more electrons (e)"> 46 <param name="use_structure_file" type="select" display="radio" value="false" label="Generate interactions from a file?" help="Use a file containing a structure to obtain the spins and generate interactions.">
48 <conditional name="spin_options"> 47 <option value="true">Yes</option>
49 <param name="spin_preset" type="select" value="mu" label="Species" help="Select 'custom' to define own"> 48 <option value="false" selected="true">No</option>
50 <option selected="true" value="mu">mu</option> 49 </param>
51 <option value="e">e</option> 50 <when value="true">
52 <option value="custom">custom</option> 51 <section name="generator" expanded="true" title="Generator">
53 </param> 52 <expand macro="generator_options"/>
54 <when value="custom"> 53 </section>
55 <param name="spin" optional="false" type="text" label="Species name"/> 54 <section name="spins" expanded="true" title="Additional Spins">
56 <param name="atomic_mass" optional="true" type="integer" min="0" value="" label="Atomic mass" help="Leave blank to use default mass - whole numbers only"/> 55 <expand macro="additional_spin_options"/>
57 </when> 56 </section>
58 <when value="mu"/> 57 <section name="interaction_params" expanded="true" title="Additional Spin Interactions" help="Use this section to include any interactions that are not automatically generated from the structure file. The muon index will always be 1, then the rest of the requested number of spins, N, will be in order of distance to the muon (excluding any ignored symbols). So any spins added above will have indices starting at N + 2.">
59 <when value="e"/> 58 <expand macro="interaction_options"/>
60 </conditional> 59 </section>
61 </repeat> 60 </when>
62 </section> 61 <when value="false">
63 <section name="interaction_params" expanded="true" title="Spin Interactions" help=""> 62 <section name="spins" expanded="true" title="Spins">
64 <repeat name="interactions" title="Interactions to simulate" help="Add couplings between spins, and/or dissipation terms. Interaction terms available: Zeeman, hyperfine, dipolar, quadrupolar or dissipation. See MuSpinSim docs for more info"> 63 <expand macro="spin_options"/>
65 <conditional name="interaction_options"> 64 </section>
66 <param name="interaction" type="select" label="Choose interaction type"> 65 <section name="interaction_params" expanded="true" title="Spin Interactions" help="">
67 <option value="zeeman">Zeeman</option> 66 <expand macro="interaction_options"/>
68 <option value="hyperfine">hyperfine</option> 67 </section>
69 <option value="dipolar">dipolar</option> 68 </when>
70 <option value="quadrupolar">quadrupolar</option> 69 </conditional>
71 <option value="dissipation">dissipation</option>
72 </param>
73 <when value="zeeman">
74 <param name="zeeman_index" type="integer" value="" label="Index of coupled spin" min="1" help="Index refers to the order of the spins listed in 'spins' section. The first spin in the list has index 1, the second has index 2, and so on."/>
75 <param name="zeeman_vector" type="text" value="" label="Zeeman coupling vector" help="Define 1X3 vector for local magnetic field coupling (T). Allows default expressions, constants and functions (see help)"/>
76 </when>
77 <when value="hyperfine">
78 <param name="hfine_index" type="integer" value="" label="Index of nuclear coupled spin" min="1" help="Non-electronic spin - muon or otherwise. Index refers to the order of the spins listed in 'spins' section. The first spin in the list has index 1, the second has index 2, and so on."/>
79 <param name="hfine_e_index" type="integer" value="" optional="true" min="1" label="Index of electronic coupled spin" help="Optional, will use first defined electronic spin if unspecified"/>
80 <param name="hfine_matrix" area="true" type="text" value="" label="Hyperfine coupling tensor" help="Define 3X3 tensor for coupling between electron and non-electron spins (in MHz). Allows default expressions, constants and functions (see help)">
81 <sanitizer>
82 <valid initial="string.printable">
83 </valid>
84 </sanitizer>
85 </param>
86 </when>
87 <when value="dipolar">
88 <param name="di_index" type="integer" value="" min="1" label="Index of 1st coupled spin" help="Index refers to the order of the spins listed in 'spins' section. The first spin in the list has index 1, the second has index 2, and so on."/>
89 <param name="di_index_2" type="integer" value="" label="Index of 2nd coupled spin" help="Index refers to the order of the spins listed in 'spins' section. The first spin in the list has index 1, the second has index 2, and so on."/>
90 <param name="di_vector" type="text" value="" label="Dipole coupling vector" help="Define 1X3 vector for coupling between two spins (Angstrom). Allows default expressions, constants and functions (see help)"/>
91 </when>
92 <when value="quadrupolar">
93 <param name="quad_index" type="integer" value="" label="Index of coupled spin" help="Index refers to the order of the spins listed in 'spins' section. The first spin in the list has index 1, the second has index 2, and so on."/>
94 <param name="quad_matrix" area="true" type="text" value="" label="Electric Field Gradient tensor" help="Define 3X3 tensor (in atomic units) for quadrupolar coupling. Allows default expressions, constants and functions (see help). Warning: spins with zero quadrupole moment will have zero coupling regardless of the input">
95 <sanitizer>
96 <valid initial="string.printable">
97 </valid>
98 </sanitizer>
99 </param>
100 </when>
101 <when value="dissipation">
102 <param name="dis_index" type="integer" value="" label="Index of spin with dissipation" help="Index refers to the order of the spins listed in 'spins' section. The first spin in the list has index 1, the second has index 2, and so on."/>
103 <param name="dis_val" type="text" value="" label="Dissipation" help="Define dissipation term (MHz). Allows default expressions, constants and functions (see help)"/>
104 </when>
105 </conditional>
106 </repeat>
107 </section>
108 <section name="experiment_params" expanded="true" title="Experiment Parameters"> 70 <section name="experiment_params" expanded="true" title="Experiment Parameters">
109 <conditional name="experiment"> 71 <conditional name="experiment">
110 <param name="experiment_preset" type="select" value="custom" display="radio" label="Experiment type" help="Experiment preset to use. Avoided Level Crossing (ALC): sets polarization to longitudinal, x-axis to field and y-axis to integral. Zero field: sets polarization to transverse, field to 0, x-axis to time and y-axis to asymmetry. Choose custom for no preset"> 72 <param name="experiment_preset" type="select" value="custom" display="radio" label="Experiment type" help="Experiment preset to use. Avoided Level Crossing (ALC): sets polarization to longitudinal, x-axis to field and y-axis to integral. Zero field: sets polarization to transverse, field to 0, x-axis to time and y-axis to asymmetry. Choose custom for no preset">
111 <option value="alc">Avoided Level Crossing (ALC)</option> 73 <option value="alc">Avoided Level Crossing (ALC)</option>
112 <option value="zero_field">Zero Field</option> 74 <option value="zero_field">Zero Field</option>
167 <data format="txt" label="muspinsim input file $out_file_prefix" name="out_file" from_work_dir="outfile.in"/> 129 <data format="txt" label="muspinsim input file $out_file_prefix" name="out_file" from_work_dir="outfile.in"/>
168 </outputs> 130 </outputs>
169 <tests> 131 <tests>
170 <test expect_num_outputs="1"> 132 <test expect_num_outputs="1">
171 <param name="out_file_prefix" value="test_1"/> 133 <param name="out_file_prefix" value="test_1"/>
134 <param name="use_structure_file" value="false"/>
172 <param name="spin_preset" value="custom"/> 135 <param name="spin_preset" value="custom"/>
173 <param name="spin" value="H"/> 136 <param name="spin" value="H"/>
174 <param name="spin_preset" value="mu"/> 137 <param name="spin_preset" value="mu"/>
175 <param name="interaction" value="zeeman"/> 138 <param name="interaction" value="zeeman"/>
176 <param name="zeeman_index" value="1"/> 139 <param name="zeeman_index" value="1"/>
182 <param name="average_axes" value="orientation"/> 145 <param name="average_axes" value="orientation"/>
183 <output name="out_file" file="test_1.in" ftype="txt" compare="diff"/> 146 <output name="out_file" file="test_1.in" ftype="txt" compare="diff"/>
184 </test> 147 </test>
185 <test expect_num_outputs="1"> 148 <test expect_num_outputs="1">
186 <param name="out_file_prefix" value="test_2"/> 149 <param name="out_file_prefix" value="test_2"/>
150 <param name="use_structure_file" value="false"/>
187 <param name="experiment_preset" value="custom"/> 151 <param name="experiment_preset" value="custom"/>
188 <param name="spin_preset" value="e"/> 152 <param name="spin_preset" value="e"/>
189 <param name="spin_preset" value="mu"/> 153 <param name="spin_preset" value="mu"/>
190 <param name="interaction" value="hyperfine"/> 154 <param name="interaction" value="hyperfine"/>
191 <param name="hfine_index" value="1"/> 155 <param name="hfine_index" value="1"/>
197 <param name="temperature" value="1.0"/> 161 <param name="temperature" value="1.0"/>
198 <output name="out_file" file="test_2.in" ftype="txt" compare="diff"/> 162 <output name="out_file" file="test_2.in" ftype="txt" compare="diff"/>
199 </test> 163 </test>
200 <test expect_num_outputs="1"> 164 <test expect_num_outputs="1">
201 <param name="out_file_prefix" value="test_3"/> 165 <param name="out_file_prefix" value="test_3"/>
166 <param name="use_structure_file" value="false"/>
202 <param name="spin_preset" value="custom"/> 167 <param name="spin_preset" value="custom"/>
203 <param name="spin" value="H"/> 168 <param name="spin" value="H"/>
204 <param name="spin_preset" value="mu"/> 169 <param name="spin_preset" value="mu"/>
205 <param name="spin_preset" value="e"/> 170 <param name="spin_preset" value="e"/>
206 <param name="interaction" value="hyperfine"/> 171 <param name="interaction" value="hyperfine"/>
216 <param name="zcw_n" value="20"/> 181 <param name="zcw_n" value="20"/>
217 <output name="out_file" file="test_3.in" ftype="txt" compare="diff"/> 182 <output name="out_file" file="test_3.in" ftype="txt" compare="diff"/>
218 </test> 183 </test>
219 <test expect_num_outputs="1"> 184 <test expect_num_outputs="1">
220 <param name="out_file_prefix" value="test_4"/> 185 <param name="out_file_prefix" value="test_4"/>
186 <param name="use_structure_file" value="false"/>
221 <param name="spin_preset" value="custom"/> 187 <param name="spin_preset" value="custom"/>
222 <param name="spin" value="F"/> 188 <param name="spin" value="F"/>
223 <param name="spin_preset" value="custom"/> 189 <param name="spin_preset" value="custom"/>
224 <param name="spin" value="F"/> 190 <param name="spin" value="F"/>
225 <param name="spin_preset" value="mu"/> 191 <param name="spin_preset" value="mu"/>
250 <param name="celio_k" value="10"/> 216 <param name="celio_k" value="10"/>
251 <output name="out_file" file="test_4.in" ftype="txt" compare="diff"/> 217 <output name="out_file" file="test_4.in" ftype="txt" compare="diff"/>
252 </test> 218 </test>
253 <test expect_num_outputs="1"> 219 <test expect_num_outputs="1">
254 <param name="out_file_prefix" value="test_5"/> 220 <param name="out_file_prefix" value="test_5"/>
221 <param name="use_structure_file" value="false"/>
255 <param name="spin_preset" value="mu"/> 222 <param name="spin_preset" value="mu"/>
256 <param name="interaction" value="dissipation"/> 223 <param name="interaction" value="dissipation"/>
257 <param name="dis_index" value="1"/> 224 <param name="dis_index" value="1"/>
258 <param name="dis_val" value="g"/> 225 <param name="dis_val" value="g"/>
259 <param name="experiment_preset" value="custom"/> 226 <param name="experiment_preset" value="custom"/>
268 <param name="celio_averages" value="4"/> 235 <param name="celio_averages" value="4"/>
269 <output name="out_file" file="test_5.in" ftype="txt" compare="diff"/> 236 <output name="out_file" file="test_5.in" ftype="txt" compare="diff"/>
270 </test> 237 </test>
271 <test expect_num_outputs="1"> 238 <test expect_num_outputs="1">
272 <param name="out_file_prefix" value="test_6"/> 239 <param name="out_file_prefix" value="test_6"/>
240 <param name="use_structure_file" value="false"/>
273 <param name="experiment_preset" value="zero_field"/> 241 <param name="experiment_preset" value="zero_field"/>
274 <param name="spin_preset" value="custom"/> 242 <param name="spin_preset" value="custom"/>
275 <param name="spin" value="H"/> 243 <param name="spin" value="H"/>
276 <param name="spin_preset" value="mu"/> 244 <param name="spin_preset" value="mu"/>
277 <param name="interaction" value="zeeman"/> 245 <param name="interaction" value="zeeman"/>
282 <param name="average_axes" value="orientation,temperature"/> 250 <param name="average_axes" value="orientation,temperature"/>
283 <output name="out_file" file="test_6.in" ftype="txt" compare="diff"/> 251 <output name="out_file" file="test_6.in" ftype="txt" compare="diff"/>
284 </test> 252 </test>
285 <test expect_num_outputs="1"> 253 <test expect_num_outputs="1">
286 <param name="out_file_prefix" value="test_7"/> 254 <param name="out_file_prefix" value="test_7"/>
255 <param name="use_structure_file" value="false"/>
287 <param name="experiment_preset" value="custom"/> 256 <param name="experiment_preset" value="custom"/>
288 <param name="spin_preset" value="custom"/> 257 <param name="spin_preset" value="custom"/>
289 <param name="spin" value="H"/> 258 <param name="spin" value="H"/>
290 <param name="spin_preset" value="mu"/> 259 <param name="spin_preset" value="mu"/>
291 <param name="interaction" value="zeeman"/> 260 <param name="interaction" value="zeeman"/>
295 <param name="zeeman_vector" value="2 0 0"/> 264 <param name="zeeman_vector" value="2 0 0"/>
296 <param name="y_axis" value="integral"/> 265 <param name="y_axis" value="integral"/>
297 <param name="x_axis" value="field"/> 266 <param name="x_axis" value="field"/>
298 <param name="average_axes" value="orientation,temperature"/> 267 <param name="average_axes" value="orientation,temperature"/>
299 <output name="out_file" file="test_7.in" ftype="txt" compare="diff"/> 268 <output name="out_file" file="test_7.in" ftype="txt" compare="diff"/>
269 </test>
270 <!-- The tests below use a structure file to generate interactions -->
271
272 <!-- Default generator values with cell file -->
273 <test expect_num_outputs="1">
274 <param name="out_file_prefix" value="test_8"/>
275 <param name="use_structure_file" value="true"/>
276 <param name="structure_file" value="Basic.cell" ftype="cell"/>
277 <param name="experiment_preset" value="custom"/>
278 <param name="time" value="range(0,8.0,1000)"/>
279 <output name="out_file" file="test_8.in" ftype="txt" compare="diff"/>
280 </test>
281 <!-- Magres file -->
282 <test expect_num_outputs="1">
283 <param name="out_file_prefix" value="test_9"/>
284 <param name="use_structure_file" value="true"/>
285 <param name="structure_file" value="Basic.magres" ftype="cell"/>
286 <param name="number_closest" value="8"/>
287 <param name="dipolar" value="true"/>
288 <param name="quadrupolar" value="false"/>
289 <param name="ignored_symbol" value="Si"/>
290 <param name="include_interatomic" value="false"/>
291 <param name="experiment_preset" value="custom"/>
292 <param name="time" value="range(0,8.0,1000)"/>
293 <output name="out_file" file="test_9.in" ftype="txt" compare="diff"/>
294 </test>
295 <!-- Magres file with quadrupolar and interatomic -->
296 <test expect_num_outputs="1">
297 <param name="out_file_prefix" value="test_10"/>
298 <param name="use_structure_file" value="true"/>
299 <param name="structure_file" value="Basic.magres" ftype="cell"/>
300 <param name="dipolar" value="true"/>
301 <param name="quadrupolar" value="true"/>
302 <param name="ignored_symbol" value="Si"/>
303 <param name="include_interatomic" value="true"/>
304 <param name="experiment_preset" value="custom"/>
305 <param name="time" value="range(0,8.0,1000)"/>
306 <output name="out_file" file="test_10.in" ftype="txt" compare="diff"/>
307 </test>
308 <!-- Magres file with quadrupolar, and extra interactions as well -->
309 <test expect_num_outputs="1">
310 <param name="out_file_prefix" value="test_11"/>
311 <param name="use_structure_file" value="true"/>
312 <param name="structure_file" value="Basic.magres" ftype="cell"/>
313 <param name="dipolar" value="true"/>
314 <param name="quadrupolar" value="true"/>
315 <param name="ignored_symbol" value="Si"/>
316 <param name="include_interatomic" value="false"/>
317 <param name="interaction" value="hyperfine"/>
318 <param name="hfine_index" value="2"/>
319 <param name="hfine_matrix" value="[580 5 10 5 580 9 10 9 580]"/>
320 <param name="interaction" value="hyperfine"/>
321 <param name="hfine_index" value="3"/>
322 <param name="hfine_matrix" value="[(300/2) 3 4*10 ], [3 15*10 6-3+2] ,[4 5 15 ]"/>
323 <param name="experiment_preset" value="custom"/>
324 <param name="time" value="range(0,8.0,1000)"/>
325 <output name="out_file" file="test_11.in" ftype="txt" compare="diff"/>
326 </test>
327 <!-- Test adding extra spins -->
328 <test expect_num_outputs="1">
329 <param name="out_file_prefix" value="test_12"/>
330 <param name="use_structure_file" value="true"/>
331 <param name="structure_file" value="Basic.magres" ftype="cell"/>
332 <param name="dipolar" value="true"/>
333 <param name="quadrupolar" value="true"/>
334 <param name="ignored_symbol" value="Si"/>
335 <param name="include_interatomic" value="false"/>
336 <param name="spin_preset" value="e"/>
337 <param name="spin_preset" value="custom"/>
338 <param name="spin" value="F"/>
339 <param name="atomic_mass" value="19"/>
340 <param name="interaction" value="hyperfine"/>
341 <param name="hfine_index" value="2"/>
342 <param name="hfine_matrix" value="[580 5 10 5 580 9 10 9 580]"/>
343 <param name="interaction" value="hyperfine"/>
344 <param name="hfine_index" value="3"/>
345 <param name="hfine_matrix" value="[(300/2) 3 4*10 ], [3 15*10 6-3+2] ,[4 5 15 ]"/>
346 <param name="experiment_preset" value="custom"/>
347 <param name="time" value="range(0,8.0,1000)"/>
348 <output name="out_file" file="test_12.in" ftype="txt" compare="diff"/>
300 </test> 349 </test>
301 </tests> 350 </tests>
302 <help><![CDATA[ 351 <help><![CDATA[
303 Tool to create input parameter file for MuSpinSim. 352 Tool to create input parameter file for MuSpinSim.
304 353
375 author={Nocedal, Jorge and Wright, Stephen J}, 424 author={Nocedal, Jorge and Wright, Stephen J},
376 year={2006} 425 year={2006}
377 } 426 }
378 </citation> 427 </citation>
379 <citation type="doi">10.1103/PhysRevLett.56.2720</citation> 428 <citation type="doi">10.1103/PhysRevLett.56.2720</citation>
380 <citation type="bibtex"> 429 <citation type="doi">@MUSPINSIM_CITATION@</citation>
381 @TOOL_CITATION@
382 </citation>
383 </citations> 430 </citations>
384 </tool> 431 </tool>