Update html
This commit is contained in:
		
							parent
							
								
									f704dae1ba
								
							
						
					
					
						commit
						7f33daf856
					
				
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							|  | @ -1,4 +1,4 @@ | |||
| # Sphinx build info version 1 | ||||
| # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. | ||||
| config: d64285b76259d47aa1d35d9bc7e7829a | ||||
| config: 0b896abf2c995b3493312dcbe0e8b47f | ||||
| tags: 645f666f9bcd5a90fca523b33c5a78b7 | ||||
|  |  | |||
|  | @ -516,7 +516,7 @@ document.write(` | |||
| 
 | ||||
| <!--Inserting Generated X3D Scene--> | ||||
| <scene> | ||||
|   <viewpoint position="0 0 28.28000000000003"> | ||||
|   <viewpoint position="0 0 28.28"> | ||||
|     <group/> | ||||
|   </viewpoint> | ||||
|   <transform translation="-0.8837500000000003 -2.220446049250313e-16 -3.002"> | ||||
|  | @ -884,7 +884,7 @@ document.write(` | |||
|             <sphere radius="1.2"/> | ||||
|           </shape> | ||||
|         </transform> | ||||
|         <transform translation="-7.070000000000022 0.0 4.6629367034256575e-15"> | ||||
|         <transform translation="-7.070000000000007 0.0 4.6629367034256575e-15"> | ||||
|           <shape> | ||||
|             <appearance> | ||||
|               <material diffuseColor="0.749 0.761 0.78"/> | ||||
|  | @ -892,7 +892,7 @@ document.write(` | |||
|             <sphere radius="1.6"/> | ||||
|           </shape> | ||||
|         </transform> | ||||
|         <transform translation="-7.070000000000022 2.040933201585325 1.724999999999999"> | ||||
|         <transform translation="-7.070000000000007 2.040933201585325 1.724999999999999"> | ||||
|           <shape> | ||||
|             <appearance> | ||||
|               <material diffuseColor="1.0 0.631 0.0"/> | ||||
|  | @ -948,7 +948,7 @@ document.write(` | |||
|             <sphere radius="1.2"/> | ||||
|           </shape> | ||||
|         </transform> | ||||
|         <transform translation="-1.7674999999999983 3.0613998023779985 4.6629367034256575e-15"> | ||||
|         <transform translation="-1.7675000000000125 3.0613998023779985 4.6629367034256575e-15"> | ||||
|           <shape> | ||||
|             <appearance> | ||||
|               <material diffuseColor="0.749 0.761 0.78"/> | ||||
|  | @ -956,7 +956,7 @@ document.write(` | |||
|             <sphere radius="1.6"/> | ||||
|           </shape> | ||||
|         </transform> | ||||
|         <transform translation="-1.7674999999999983 5.102333003963331 1.724999999999999"> | ||||
|         <transform translation="-1.7675000000000125 5.102333003963331 1.724999999999999"> | ||||
|           <shape> | ||||
|             <appearance> | ||||
|               <material diffuseColor="1.0 0.631 0.0"/> | ||||
|  | @ -1004,7 +1004,7 @@ document.write(` | |||
|             <sphere radius="1.6"/> | ||||
|           </shape> | ||||
|         </transform> | ||||
|         <transform translation="-3.535000000000011 6.12279960475599 4.6629367034256575e-15"> | ||||
|         <transform translation="-3.5349999999999966 6.12279960475599 4.6629367034256575e-15"> | ||||
|           <shape> | ||||
|             <appearance> | ||||
|               <material diffuseColor="0.749 0.761 0.78"/> | ||||
|  |  | |||
|  | @ -418,7 +418,8 @@ document.write(` | |||
| </section> | ||||
| <section id="application-to-a-deep-plane-in-a-si-001-sample"> | ||||
| <h2>Application to a deep plane in a Si(001) sample<a class="headerlink" href="#application-to-a-deep-plane-in-a-si-001-sample" title="Link to this heading">#</a></h2> | ||||
| <p>The following script will compute contribution of all the planes of a Si(001) substrate to get the total photoelectron intensity of a Si(2s) polar scan.</p> | ||||
| <p>The following script will compute the contribution of a Si(2p) atom in the 4<sup>th</sup> plane of a Si(001) cluster at scattering order 3.</p> | ||||
| <p>Taking into account all scattering paths took 15 minutes to compute.</p> | ||||
| <div class="admonition seealso" id="msd-paper"> | ||||
| <p class="admonition-title">See also</p> | ||||
| <p>based on this paper from S. Tricot <em>et al.</em> | ||||
|  | @ -428,8 +429,139 @@ document.write(` | |||
| <input checked="checked" id="sd-tab-item-1" name="sd-tab-set-1" type="radio"> | ||||
| <label class="sd-tab-label" for="sd-tab-item-1"> | ||||
| <i class="fa-solid fa-circle-question"></i> Quiz</label><div class="sd-tab-content docutils"> | ||||
| <p>The script is almost completed, try to define path filtering options and compare results with and without filtering for emitter in plane n° 3 at scattering order 2.</p> | ||||
| <p>Compute the contribution of plane n° 7</p> | ||||
| <p>The following script is almost completed, try to define path filtering options (no backscattering, accept all paths with forward angles < 40° and reject paths longer than the diameter of the cluster).</p> | ||||
| <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="linenos"> 1</span><span class="c1"># coding: utf8</span> | ||||
| <span class="linenos"> 2</span> | ||||
| <span class="linenos"> 3</span><span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span> | ||||
| <span class="linenos"> 4</span><span class="kn">from</span><span class="w"> </span><span class="nn">ase.build</span><span class="w"> </span><span class="kn">import</span> <span class="n">bulk</span> | ||||
| <span class="linenos"> 5</span> | ||||
| <span class="linenos"> 6</span><span class="kn">from</span><span class="w"> </span><span class="nn">msspec.calculator</span><span class="w"> </span><span class="kn">import</span> <span class="n">MSSPEC</span><span class="p">,</span> <span class="n">XRaySource</span> | ||||
| <span class="linenos"> 7</span><span class="kn">from</span><span class="w"> </span><span class="nn">msspec.iodata</span><span class="w"> </span><span class="kn">import</span> <span class="n">Data</span> | ||||
| <span class="linenos"> 8</span><span class="kn">from</span><span class="w"> </span><span class="nn">msspec.utils</span><span class="w"> </span><span class="kn">import</span> <span class="n">hemispherical_cluster</span><span class="p">,</span> <span class="n">get_atom_index</span> | ||||
| <span class="linenos"> 9</span> | ||||
| <span class="linenos">10</span> | ||||
| <span class="linenos">11</span><span class="c1"># Create the cluster</span> | ||||
| <span class="linenos">12</span><span class="n">a</span> <span class="o">=</span> <span class="mf">5.43</span> | ||||
| <span class="linenos">13</span><span class="n">Si</span> <span class="o">=</span> <span class="n">bulk</span><span class="p">(</span><span class="s1">'Si'</span><span class="p">,</span> <span class="n">a</span><span class="o">=</span><span class="n">a</span><span class="p">,</span> <span class="n">cubic</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span> | ||||
| <span class="linenos">14</span><span class="n">cluster</span> <span class="o">=</span> <span class="n">hemispherical_cluster</span><span class="p">(</span><span class="n">Si</span><span class="p">,</span> | ||||
| <span class="linenos">15</span>                                <span class="n">diameter</span><span class="o">=</span><span class="mi">30</span><span class="p">,</span> <span class="n">planes</span><span class="o">=</span><span class="mi">4</span><span class="p">,</span> | ||||
| <span class="linenos">16</span>                                <span class="n">emitter_plane</span><span class="o">=</span><span class="mi">3</span><span class="p">,</span> | ||||
| <span class="linenos">17</span>                                <span class="n">shape</span> <span class="o">=</span> <span class="s1">'cylindrical'</span><span class="p">,</span> | ||||
| <span class="linenos">18</span>                                <span class="p">)</span> | ||||
| <span class="linenos">19</span><span class="k">for</span> <span class="n">atom</span> <span class="ow">in</span> <span class="n">cluster</span><span class="p">:</span> | ||||
| <span class="linenos">20</span>    <span class="n">atom</span><span class="o">.</span><span class="n">set</span><span class="p">(</span><span class="s1">'mean_square_vibration'</span><span class="p">,</span> <span class="mf">0.006</span><span class="p">)</span> | ||||
| <span class="linenos">21</span>    <span class="n">atom</span><span class="o">.</span><span class="n">set</span><span class="p">(</span><span class="s1">'mt_radius'</span><span class="p">,</span> <span class="mf">1.1</span><span class="p">)</span> | ||||
| <span class="linenos">22</span><span class="n">cluster</span><span class="o">.</span><span class="n">emitter</span> <span class="o">=</span> <span class="n">get_atom_index</span><span class="p">(</span><span class="n">cluster</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span> | ||||
| <span class="linenos">23</span> | ||||
| <span class="linenos">24</span><span class="c1"># Create a calculator and set parameters</span> | ||||
| <span class="linenos">25</span><span class="n">calc</span> <span class="o">=</span> <span class="n">MSSPEC</span><span class="p">(</span><span class="n">spectroscopy</span><span class="o">=</span><span class="s1">'PED'</span><span class="p">,</span> <span class="n">algorithm</span><span class="o">=</span><span class="s1">'expansion'</span><span class="p">)</span> | ||||
| <span class="linenos">26</span> | ||||
| <span class="linenos">27</span><span class="n">calc</span><span class="o">.</span><span class="n">source_parameters</span><span class="o">.</span><span class="n">energy</span> <span class="o">=</span> <span class="n">XRaySource</span><span class="o">.</span><span class="n">AL_KALPHA</span> | ||||
| <span class="linenos">28</span><span class="n">calc</span><span class="o">.</span><span class="n">source_parameters</span><span class="o">.</span><span class="n">theta</span>  <span class="o">=</span> <span class="o">-</span><span class="mf">54.7</span> | ||||
| <span class="linenos">29</span><span class="n">calc</span><span class="o">.</span><span class="n">source_parameters</span><span class="o">.</span><span class="n">phi</span>    <span class="o">=</span> <span class="mi">90</span> | ||||
| <span class="linenos">30</span><span class="n">calc</span><span class="o">.</span><span class="n">spectroscopy_parameters</span><span class="o">.</span><span class="n">final_state</span> <span class="o">=</span> <span class="mi">1</span> | ||||
| <span class="linenos">31</span> | ||||
| <span class="linenos">32</span><span class="n">calc</span><span class="o">.</span><span class="n">calculation_parameters</span><span class="o">.</span><span class="n">scattering_order</span> <span class="o">=</span> <span class="mi">3</span> | ||||
| <span class="linenos">33</span><span class="n">calc</span><span class="o">.</span><span class="n">tmatrix_parameters</span><span class="o">.</span><span class="n">tl_threshold</span> <span class="o">=</span> <span class="mf">1e-4</span> | ||||
| <span class="linenos">34</span><span class="n">calc</span><span class="o">.</span><span class="n">calculation_parameters</span><span class="o">.</span><span class="n">vibrational_damping</span> <span class="o">=</span> <span class="s1">'averaged_tl'</span> | ||||
| <span class="linenos">35</span><span class="n">calc</span><span class="o">.</span><span class="n">calculation_parameters</span><span class="o">.</span><span class="n">RA_cutoff</span> <span class="o">=</span> <span class="mi">2</span> | ||||
| <span class="linenos">36</span>  | ||||
| <span class="hll"><span class="linenos">37</span><span class="c1"># Define path filtering options such that you only</span> | ||||
| </span><span class="hll"><span class="linenos">38</span><span class="c1"># accept scattering paths with a forward cone <= 40°</span> | ||||
| </span><span class="hll"><span class="linenos">39</span><span class="c1"># and whose length are <= cluster diameter</span> | ||||
| </span><span class="hll"><span class="linenos">40</span><span class="c1">#</span> | ||||
| </span><span class="hll"><span class="linenos">41</span><span class="c1">#</span> | ||||
| </span><span class="linenos">42</span> | ||||
| <span class="linenos">43</span><span class="n">calc</span><span class="o">.</span><span class="n">set_atoms</span><span class="p">(</span><span class="n">cluster</span><span class="p">)</span> | ||||
| <span class="linenos">44</span> | ||||
| <span class="linenos">45</span><span class="c1"># Compute and add previous data for comparison</span> | ||||
| <span class="linenos">46</span><span class="n">data</span> <span class="o">=</span> <span class="n">calc</span><span class="o">.</span><span class="n">get_theta_scan</span><span class="p">(</span><span class="n">level</span><span class="o">=</span><span class="s1">'2p'</span><span class="p">,</span> | ||||
| <span class="linenos">47</span>                            <span class="n">theta</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="o">-</span><span class="mf">30.</span><span class="p">,</span> <span class="mf">80.</span><span class="p">,</span> <span class="mf">0.5</span><span class="p">),</span> | ||||
| <span class="linenos">48</span>                            <span class="n">phi</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> | ||||
| <span class="linenos">49</span>                            <span class="n">kinetic_energy</span><span class="o">=</span><span class="mf">1382.28</span><span class="p">)</span> | ||||
| <span class="linenos">50</span><span class="n">no_filters</span> <span class="o">=</span> <span class="n">Data</span><span class="o">.</span><span class="n">load</span><span class="p">(</span><span class="s1">'path_filtering.hdf5'</span><span class="p">)</span> | ||||
| <span class="linenos">51</span><span class="n">data</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">add_columns</span><span class="p">(</span><span class="o">**</span><span class="p">{</span><span class="s1">'no_filters'</span><span class="p">:</span> <span class="n">no_filters</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">cross_section</span><span class="p">})</span> | ||||
| <span class="linenos">52</span><span class="n">view</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">views</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> | ||||
| <span class="linenos">53</span><span class="n">view</span><span class="o">.</span><span class="n">select</span><span class="p">(</span><span class="s1">'theta'</span><span class="p">,</span> <span class="s1">'cross_section'</span><span class="p">,</span> <span class="n">index</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">legend</span><span class="o">=</span><span class="s2">"With path filtering"</span><span class="p">)</span> | ||||
| <span class="linenos">54</span><span class="n">view</span><span class="o">.</span><span class="n">select</span><span class="p">(</span><span class="s1">'theta'</span><span class="p">,</span> <span class="s1">'no_filters'</span><span class="p">,</span> <span class="n">legend</span><span class="o">=</span><span class="s2">"Without path filtering"</span><span class="p">)</span> | ||||
| <span class="linenos">55</span> | ||||
| <span class="linenos">56</span><span class="n">data</span><span class="o">.</span><span class="n">view</span><span class="p">()</span> | ||||
| </pre></div> | ||||
| </div> | ||||
| <ol class="arabic simple"> | ||||
| <li><p>How long was your calculation ?</p></li> | ||||
| <li><p>How does it compare to the calculation with <strong>all</strong> scattering paths up to order 3 ?</p></li> | ||||
| <li><p>What is the proportion of scattering paths of order 3 that were actually taken into account ?</p></li> | ||||
| </ol> | ||||
| </div> | ||||
| </div> | ||||
| <div class="toggle docutils container"> | ||||
| <p>The calculation took few seconds and the result is very close to the calculation with all scattering paths.</p> | ||||
| <p>Only 0.01% of 3<sup>rd</sup> order paths were actually taken into account</p> | ||||
| <figure class="align-default" id="si-fig"> | ||||
| <a class="reference internal image-reference" href="../_images/results.png"><img alt="Si polar scan" class="align-center" src="../_images/results.png" style="width: 600px;" /> | ||||
| </a> | ||||
| <figcaption> | ||||
| <p><span class="caption-number">Fig. 18 </span><span class="caption-text">Si(2p) polar scan (contribution of an emitter in the 4<sup>th</sup> plane with all 7 114 945 scattering paths taken into account (orange curve), and for only 1525 filtered paths (blue curve).</span><a class="headerlink" href="#si-fig" title="Link to this image">#</a></p> | ||||
| </figcaption> | ||||
| </figure> | ||||
| <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="linenos"> 1</span><span class="c1"># coding: utf8</span> | ||||
| <span class="linenos"> 2</span> | ||||
| <span class="linenos"> 3</span><span class="kn">import</span><span class="w"> </span><span class="nn">numpy</span><span class="w"> </span><span class="k">as</span><span class="w"> </span><span class="nn">np</span> | ||||
| <span class="linenos"> 4</span><span class="kn">from</span><span class="w"> </span><span class="nn">ase.build</span><span class="w"> </span><span class="kn">import</span> <span class="n">bulk</span> | ||||
| <span class="linenos"> 5</span> | ||||
| <span class="linenos"> 6</span><span class="kn">from</span><span class="w"> </span><span class="nn">msspec.calculator</span><span class="w"> </span><span class="kn">import</span> <span class="n">MSSPEC</span><span class="p">,</span> <span class="n">XRaySource</span> | ||||
| <span class="linenos"> 7</span><span class="kn">from</span><span class="w"> </span><span class="nn">msspec.iodata</span><span class="w"> </span><span class="kn">import</span> <span class="n">Data</span> | ||||
| <span class="linenos"> 8</span><span class="kn">from</span><span class="w"> </span><span class="nn">msspec.utils</span><span class="w"> </span><span class="kn">import</span> <span class="n">hemispherical_cluster</span><span class="p">,</span> <span class="n">get_atom_index</span> | ||||
| <span class="linenos"> 9</span> | ||||
| <span class="linenos">10</span> | ||||
| <span class="linenos">11</span><span class="c1"># Create the cluster</span> | ||||
| <span class="linenos">12</span><span class="n">a</span> <span class="o">=</span> <span class="mf">5.43</span> | ||||
| <span class="linenos">13</span><span class="n">Si</span> <span class="o">=</span> <span class="n">bulk</span><span class="p">(</span><span class="s1">'Si'</span><span class="p">,</span> <span class="n">a</span><span class="o">=</span><span class="n">a</span><span class="p">,</span> <span class="n">cubic</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span> | ||||
| <span class="linenos">14</span><span class="n">cluster</span> <span class="o">=</span> <span class="n">hemispherical_cluster</span><span class="p">(</span><span class="n">Si</span><span class="p">,</span> | ||||
| <span class="linenos">15</span>                                <span class="n">diameter</span><span class="o">=</span><span class="mi">30</span><span class="p">,</span> <span class="n">planes</span><span class="o">=</span><span class="mi">4</span><span class="p">,</span> | ||||
| <span class="linenos">16</span>                                <span class="n">emitter_plane</span><span class="o">=</span><span class="mi">3</span><span class="p">,</span> | ||||
| <span class="linenos">17</span>                                <span class="n">shape</span> <span class="o">=</span> <span class="s1">'cylindrical'</span><span class="p">,</span> | ||||
| <span class="linenos">18</span>                                <span class="p">)</span> | ||||
| <span class="linenos">19</span><span class="k">for</span> <span class="n">atom</span> <span class="ow">in</span> <span class="n">cluster</span><span class="p">:</span> | ||||
| <span class="linenos">20</span>    <span class="n">atom</span><span class="o">.</span><span class="n">set</span><span class="p">(</span><span class="s1">'mean_square_vibration'</span><span class="p">,</span> <span class="mf">0.006</span><span class="p">)</span> | ||||
| <span class="linenos">21</span>    <span class="n">atom</span><span class="o">.</span><span class="n">set</span><span class="p">(</span><span class="s1">'mt_radius'</span><span class="p">,</span> <span class="mf">1.1</span><span class="p">)</span> | ||||
| <span class="linenos">22</span><span class="n">cluster</span><span class="o">.</span><span class="n">emitter</span> <span class="o">=</span> <span class="n">get_atom_index</span><span class="p">(</span><span class="n">cluster</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span> | ||||
| <span class="linenos">23</span> | ||||
| <span class="linenos">24</span><span class="c1"># Create a calculator and set parameters</span> | ||||
| <span class="linenos">25</span><span class="n">calc</span> <span class="o">=</span> <span class="n">MSSPEC</span><span class="p">(</span><span class="n">spectroscopy</span><span class="o">=</span><span class="s1">'PED'</span><span class="p">,</span> <span class="n">algorithm</span><span class="o">=</span><span class="s1">'expansion'</span><span class="p">)</span> | ||||
| <span class="linenos">26</span> | ||||
| <span class="linenos">27</span><span class="n">calc</span><span class="o">.</span><span class="n">source_parameters</span><span class="o">.</span><span class="n">energy</span> <span class="o">=</span> <span class="n">XRaySource</span><span class="o">.</span><span class="n">AL_KALPHA</span> | ||||
| <span class="linenos">28</span><span class="n">calc</span><span class="o">.</span><span class="n">source_parameters</span><span class="o">.</span><span class="n">theta</span>  <span class="o">=</span> <span class="o">-</span><span class="mf">54.7</span> | ||||
| <span class="linenos">29</span><span class="n">calc</span><span class="o">.</span><span class="n">source_parameters</span><span class="o">.</span><span class="n">phi</span>    <span class="o">=</span> <span class="mi">90</span> | ||||
| <span class="linenos">30</span><span class="n">calc</span><span class="o">.</span><span class="n">spectroscopy_parameters</span><span class="o">.</span><span class="n">final_state</span> <span class="o">=</span> <span class="mi">1</span> | ||||
| <span class="linenos">31</span> | ||||
| <span class="linenos">32</span><span class="n">calc</span><span class="o">.</span><span class="n">calculation_parameters</span><span class="o">.</span><span class="n">scattering_order</span> <span class="o">=</span> <span class="mi">3</span> | ||||
| <span class="linenos">33</span><span class="n">calc</span><span class="o">.</span><span class="n">tmatrix_parameters</span><span class="o">.</span><span class="n">tl_threshold</span> <span class="o">=</span> <span class="mf">1e-4</span> | ||||
| <span class="linenos">34</span><span class="n">calc</span><span class="o">.</span><span class="n">calculation_parameters</span><span class="o">.</span><span class="n">vibrational_damping</span> <span class="o">=</span> <span class="s1">'averaged_tl'</span> | ||||
| <span class="linenos">35</span><span class="n">calc</span><span class="o">.</span><span class="n">calculation_parameters</span><span class="o">.</span><span class="n">RA_cutoff</span> <span class="o">=</span> <span class="mi">2</span> | ||||
| <span class="linenos">36</span> | ||||
| <span class="hll"><span class="linenos">37</span><span class="n">my_filters</span> <span class="o">=</span> <span class="p">(</span><span class="s1">'forward_scattering'</span><span class="p">,</span> <span class="s1">'distance_cutoff'</span><span class="p">)</span> | ||||
| </span><span class="hll"><span class="linenos">38</span><span class="n">calc</span><span class="o">.</span><span class="n">calculation_parameters</span><span class="o">.</span><span class="n">path_filtering</span> <span class="o">=</span> <span class="n">my_filters</span> | ||||
| </span><span class="hll"><span class="linenos">39</span><span class="n">calc</span><span class="o">.</span><span class="n">calculation_parameters</span><span class="o">.</span><span class="n">distance</span> <span class="o">=</span> <span class="mi">30</span> | ||||
| </span><span class="hll"><span class="linenos">40</span><span class="n">calc</span><span class="o">.</span><span class="n">calculation_parameters</span><span class="o">.</span><span class="n">off_cone_events</span> <span class="o">=</span> <span class="mi">0</span> | ||||
| </span><span class="hll"><span class="linenos">41</span><span class="p">[</span><span class="n">a</span><span class="o">.</span><span class="n">set</span><span class="p">(</span><span class="s1">'forward_angle'</span><span class="p">,</span> <span class="mi">40</span><span class="p">)</span> <span class="k">for</span> <span class="n">a</span> <span class="ow">in</span> <span class="n">cluster</span><span class="p">]</span> | ||||
| </span><span class="linenos">42</span> | ||||
| <span class="linenos">43</span><span class="n">calc</span><span class="o">.</span><span class="n">set_atoms</span><span class="p">(</span><span class="n">cluster</span><span class="p">)</span> | ||||
| <span class="linenos">44</span> | ||||
| <span class="linenos">45</span><span class="c1"># Compute and add previous data for comparison</span> | ||||
| <span class="linenos">46</span><span class="n">data</span> <span class="o">=</span> <span class="n">calc</span><span class="o">.</span><span class="n">get_theta_scan</span><span class="p">(</span><span class="n">level</span><span class="o">=</span><span class="s1">'2p'</span><span class="p">,</span> | ||||
| <span class="linenos">47</span>                            <span class="n">theta</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="o">-</span><span class="mf">30.</span><span class="p">,</span> <span class="mf">80.</span><span class="p">,</span> <span class="mf">0.5</span><span class="p">),</span> | ||||
| <span class="linenos">48</span>                            <span class="n">phi</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> | ||||
| <span class="linenos">49</span>                            <span class="n">kinetic_energy</span><span class="o">=</span><span class="mf">1382.28</span><span class="p">)</span> | ||||
| <span class="linenos">50</span><span class="n">no_filters</span> <span class="o">=</span> <span class="n">Data</span><span class="o">.</span><span class="n">load</span><span class="p">(</span><span class="s1">'path_filtering.hdf5'</span><span class="p">)</span> | ||||
| <span class="linenos">51</span><span class="n">data</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">add_columns</span><span class="p">(</span><span class="o">**</span><span class="p">{</span><span class="s1">'no_filters'</span><span class="p">:</span> <span class="n">no_filters</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">cross_section</span><span class="p">})</span> | ||||
| <span class="linenos">52</span><span class="n">view</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">views</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> | ||||
| <span class="linenos">53</span><span class="n">view</span><span class="o">.</span><span class="n">select</span><span class="p">(</span><span class="s1">'theta'</span><span class="p">,</span> <span class="s1">'cross_section'</span><span class="p">,</span> <span class="n">index</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">legend</span><span class="o">=</span><span class="s2">"With path filtering"</span><span class="p">)</span> | ||||
| <span class="linenos">54</span><span class="n">view</span><span class="o">.</span><span class="n">select</span><span class="p">(</span><span class="s1">'theta'</span><span class="p">,</span> <span class="s1">'no_filters'</span><span class="p">,</span> <span class="n">legend</span><span class="o">=</span><span class="s2">"Without path filtering"</span><span class="p">)</span> | ||||
| <span class="linenos">55</span> | ||||
| <span class="linenos">56</span><span class="n">data</span><span class="o">.</span><span class="n">view</span><span class="p">()</span> | ||||
| </pre></div> | ||||
| </div> | ||||
| </div> | ||||
| </section> | ||||
|  |  | |||
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 84 KiB | 
|  | @ -878,7 +878,7 @@ | |||
|    "name": "python", | ||||
|    "nbconvert_exporter": "python", | ||||
|    "pygments_lexer": "ipython3", | ||||
|    "version": "3.11.3" | ||||
|    "version": "3.11.13" | ||||
|   } | ||||
|  }, | ||||
|  "nbformat": 4, | ||||
|  |  | |||
|  | @ -133,7 +133,7 @@ | |||
|    "name": "python", | ||||
|    "nbconvert_exporter": "python", | ||||
|    "pygments_lexer": "ipython3", | ||||
|    "version": "3.11.3" | ||||
|    "version": "3.11.13" | ||||
|   } | ||||
|  }, | ||||
|  "nbformat": 4, | ||||
|  |  | |||
|  | @ -103,7 +103,8 @@ | |||
|     ":::{figure-md} filters-fig\n", | ||||
|     "<img src=\"filters.jpg\" alt=\"path filtering\" width=\"600px\" align=\"center\">\n", | ||||
|     "\n", | ||||
|     "Some examples of scattering paths with `forward_scattering`, `backward_scattering` and `distance` filters selected. The accepted forward angle is 45°, the accepted backscattering angle is 20° and the threshold distance is $6a_0$ where $a_0$ is the lattice parameter. Note that the yellow path is rejected but if the `off_cone_events` option is set to a value > 1, then it could have been accepted." | ||||
|     "Some examples of scattering paths with `forward_scattering`, `backward_scattering` and `distance` filters selected. The accepted forward angle is 45°, the accepted backscattering angle is 20° and the threshold distance is $6a_0$ where $a_0$ is the lattice parameter. Note that the yellow path is rejected but if the `off_cone_events` option is set to a value > 1, then it could have been accepted.\n", | ||||
|     ":::" | ||||
|    ] | ||||
|   }, | ||||
|   { | ||||
|  | @ -113,7 +114,9 @@ | |||
|    "source": [ | ||||
|     "## Application to a deep plane in a Si(001) sample\n", | ||||
|     "\n", | ||||
|     "The following script will compute contribution of all the planes of a Si(001) substrate to get the total photoelectron intensity of a Si(2s) polar scan. \n", | ||||
|     "The following script will compute the contribution of a Si(2p) atom in the 4{sup}`th` plane of a Si(001) cluster at scattering order 3.\n", | ||||
|     "\n", | ||||
|     "Taking into account all scattering paths took 15 minutes to compute.\n", | ||||
|     "\n", | ||||
|     "(msd-paper)=\n", | ||||
|     ":::{seealso}\n", | ||||
|  | @ -126,14 +129,46 @@ | |||
|     "\n", | ||||
|     ":::{tab-item} <i class=\"fa-solid fa-circle-question\"></i> Quiz\n", | ||||
|     "\n", | ||||
|     "The script is almost completed, try to define path filtering options and compare results with and without filtering for emitter in plane n° 3 at scattering order 2.\n", | ||||
|     "The following script is almost completed, try to define path filtering options (no backscattering, accept all paths with forward angles < 40° and reject paths longer than the diameter of the cluster).\n", | ||||
|     "\n", | ||||
|     "Compute the contribution of plane n° 7\n", | ||||
|     "```{literalinclude} Si001.py\n", | ||||
|     ":lineno-match:\n", | ||||
|     ":emphasize-lines: 37-41\n", | ||||
|     "```\n", | ||||
|     "\n", | ||||
|     "1. How long was your calculation ?\n", | ||||
|     "2. How does it compare to the calculation with **all** scattering paths up to order 3 ?\n", | ||||
|     "3. What is the proportion of scattering paths of order 3 that were actually taken into account ?\n", | ||||
|     "\n", | ||||
|     ":::\n", | ||||
|     "\n", | ||||
|     "::::" | ||||
|    ] | ||||
|   }, | ||||
|   { | ||||
|    "cell_type": "markdown", | ||||
|    "id": "19fbd486-b0c1-450c-a00d-79984945aefd", | ||||
|    "metadata": {}, | ||||
|    "source": [ | ||||
|     "```{toggle}\n", | ||||
|     "The calculation took few seconds and the result is very close to the calculation with all scattering paths.\n", | ||||
|     "\n", | ||||
|     "Only 0.01% of 3{sup}`rd` order paths were actually taken into account\n", | ||||
|     "\n", | ||||
|     ":::{figure-md} si-fig\n", | ||||
|     "<img src=\"results.png\" alt=\"Si polar scan\" width=\"600px\" align=\"center\">\n", | ||||
|     "\n", | ||||
|     "Si(2p) polar scan (contribution of an emitter in the 4{sup}`th` plane with all 7 114 945 scattering paths taken into account (orange curve), and for only 1525 filtered paths (blue curve).\n", | ||||
|     "\n", | ||||
|     ":::\n", | ||||
|     "\n", | ||||
|     ":::{literalinclude} Si001_completed.py\n", | ||||
|     ":lineno-match:\n", | ||||
|     ":emphasize-lines: 37-41\n", | ||||
|     ":::\n", | ||||
|     "\n", | ||||
|     "``` " | ||||
|    ] | ||||
|   } | ||||
|  ], | ||||
|  "metadata": { | ||||
|  | @ -152,7 +187,7 @@ | |||
|    "name": "python", | ||||
|    "nbconvert_exporter": "python", | ||||
|    "pygments_lexer": "ipython3", | ||||
|    "version": "3.11.3" | ||||
|    "version": "3.11.13" | ||||
|   } | ||||
|  }, | ||||
|  "nbformat": 4, | ||||
|  |  | |||
										
											Binary file not shown.
										
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							|  | @ -266,7 +266,7 @@ | |||
|        "\n", | ||||
|        "<!--Inserting Generated X3D Scene-->\n", | ||||
|        "<scene>\n", | ||||
|        "  <viewpoint position=\"0 0 28.28000000000003\">\n", | ||||
|        "  <viewpoint position=\"0 0 28.28\">\n", | ||||
|        "    <group/>\n", | ||||
|        "  </viewpoint>\n", | ||||
|        "  <transform translation=\"-0.8837500000000003 -2.220446049250313e-16 -3.002\">\n", | ||||
|  | @ -634,7 +634,7 @@ | |||
|        "            <sphere radius=\"1.2\"/>\n", | ||||
|        "          </shape>\n", | ||||
|        "        </transform>\n", | ||||
|        "        <transform translation=\"-7.070000000000022 0.0 4.6629367034256575e-15\">\n", | ||||
|        "        <transform translation=\"-7.070000000000007 0.0 4.6629367034256575e-15\">\n", | ||||
|        "          <shape>\n", | ||||
|        "            <appearance>\n", | ||||
|        "              <material diffuseColor=\"0.749 0.761 0.78\"/>\n", | ||||
|  | @ -642,7 +642,7 @@ | |||
|        "            <sphere radius=\"1.6\"/>\n", | ||||
|        "          </shape>\n", | ||||
|        "        </transform>\n", | ||||
|        "        <transform translation=\"-7.070000000000022 2.040933201585325 1.724999999999999\">\n", | ||||
|        "        <transform translation=\"-7.070000000000007 2.040933201585325 1.724999999999999\">\n", | ||||
|        "          <shape>\n", | ||||
|        "            <appearance>\n", | ||||
|        "              <material diffuseColor=\"1.0 0.631 0.0\"/>\n", | ||||
|  | @ -698,7 +698,7 @@ | |||
|        "            <sphere radius=\"1.2\"/>\n", | ||||
|        "          </shape>\n", | ||||
|        "        </transform>\n", | ||||
|        "        <transform translation=\"-1.7674999999999983 3.0613998023779985 4.6629367034256575e-15\">\n", | ||||
|        "        <transform translation=\"-1.7675000000000125 3.0613998023779985 4.6629367034256575e-15\">\n", | ||||
|        "          <shape>\n", | ||||
|        "            <appearance>\n", | ||||
|        "              <material diffuseColor=\"0.749 0.761 0.78\"/>\n", | ||||
|  | @ -706,7 +706,7 @@ | |||
|        "            <sphere radius=\"1.6\"/>\n", | ||||
|        "          </shape>\n", | ||||
|        "        </transform>\n", | ||||
|        "        <transform translation=\"-1.7674999999999983 5.102333003963331 1.724999999999999\">\n", | ||||
|        "        <transform translation=\"-1.7675000000000125 5.102333003963331 1.724999999999999\">\n", | ||||
|        "          <shape>\n", | ||||
|        "            <appearance>\n", | ||||
|        "              <material diffuseColor=\"1.0 0.631 0.0\"/>\n", | ||||
|  | @ -754,7 +754,7 @@ | |||
|        "            <sphere radius=\"1.6\"/>\n", | ||||
|        "          </shape>\n", | ||||
|        "        </transform>\n", | ||||
|        "        <transform translation=\"-3.535000000000011 6.12279960475599 4.6629367034256575e-15\">\n", | ||||
|        "        <transform translation=\"-3.5349999999999966 6.12279960475599 4.6629367034256575e-15\">\n", | ||||
|        "          <shape>\n", | ||||
|        "            <appearance>\n", | ||||
|        "              <material diffuseColor=\"0.749 0.761 0.78\"/>\n", | ||||
|  | @ -878,7 +878,7 @@ | |||
|    "name": "python", | ||||
|    "nbconvert_exporter": "python", | ||||
|    "pygments_lexer": "ipython3", | ||||
|    "version": "3.11.3" | ||||
|    "version": "3.11.13" | ||||
|   } | ||||
|  }, | ||||
|  "nbformat": 4, | ||||
|  |  | |||
|  | @ -133,7 +133,7 @@ | |||
|    "name": "python", | ||||
|    "nbconvert_exporter": "python", | ||||
|    "pygments_lexer": "ipython3", | ||||
|    "version": "3.11.3" | ||||
|    "version": "3.11.13" | ||||
|   } | ||||
|  }, | ||||
|  "nbformat": 4, | ||||
|  |  | |||
|  | @ -103,7 +103,8 @@ | |||
|     ":::{figure-md} filters-fig\n", | ||||
|     "<img src=\"filters.jpg\" alt=\"path filtering\" width=\"600px\" align=\"center\">\n", | ||||
|     "\n", | ||||
|     "Some examples of scattering paths with `forward_scattering`, `backward_scattering` and `distance` filters selected. The accepted forward angle is 45°, the accepted backscattering angle is 20° and the threshold distance is $6a_0$ where $a_0$ is the lattice parameter. Note that the yellow path is rejected but if the `off_cone_events` option is set to a value > 1, then it could have been accepted." | ||||
|     "Some examples of scattering paths with `forward_scattering`, `backward_scattering` and `distance` filters selected. The accepted forward angle is 45°, the accepted backscattering angle is 20° and the threshold distance is $6a_0$ where $a_0$ is the lattice parameter. Note that the yellow path is rejected but if the `off_cone_events` option is set to a value > 1, then it could have been accepted.\n", | ||||
|     ":::" | ||||
|    ] | ||||
|   }, | ||||
|   { | ||||
|  | @ -113,7 +114,9 @@ | |||
|    "source": [ | ||||
|     "## Application to a deep plane in a Si(001) sample\n", | ||||
|     "\n", | ||||
|     "The following script will compute contribution of all the planes of a Si(001) substrate to get the total photoelectron intensity of a Si(2s) polar scan. \n", | ||||
|     "The following script will compute the contribution of a Si(2p) atom in the 4{sup}`th` plane of a Si(001) cluster at scattering order 3.\n", | ||||
|     "\n", | ||||
|     "Taking into account all scattering paths took 15 minutes to compute.\n", | ||||
|     "\n", | ||||
|     "(msd-paper)=\n", | ||||
|     ":::{seealso}\n", | ||||
|  | @ -126,14 +129,46 @@ | |||
|     "\n", | ||||
|     ":::{tab-item} <i class=\"fa-solid fa-circle-question\"></i> Quiz\n", | ||||
|     "\n", | ||||
|     "The script is almost completed, try to define path filtering options and compare results with and without filtering for emitter in plane n° 3 at scattering order 2.\n", | ||||
|     "The following script is almost completed, try to define path filtering options (no backscattering, accept all paths with forward angles < 40° and reject paths longer than the diameter of the cluster).\n", | ||||
|     "\n", | ||||
|     "Compute the contribution of plane n° 7\n", | ||||
|     "```{literalinclude} Si001.py\n", | ||||
|     ":lineno-match:\n", | ||||
|     ":emphasize-lines: 37-41\n", | ||||
|     "```\n", | ||||
|     "\n", | ||||
|     "1. How long was your calculation ?\n", | ||||
|     "2. How does it compare to the calculation with **all** scattering paths up to order 3 ?\n", | ||||
|     "3. What is the proportion of scattering paths of order 3 that were actually taken into account ?\n", | ||||
|     "\n", | ||||
|     ":::\n", | ||||
|     "\n", | ||||
|     "::::" | ||||
|    ] | ||||
|   }, | ||||
|   { | ||||
|    "cell_type": "markdown", | ||||
|    "id": "19fbd486-b0c1-450c-a00d-79984945aefd", | ||||
|    "metadata": {}, | ||||
|    "source": [ | ||||
|     "```{toggle}\n", | ||||
|     "The calculation took few seconds and the result is very close to the calculation with all scattering paths.\n", | ||||
|     "\n", | ||||
|     "Only 0.01% of 3{sup}`rd` order paths were actually taken into account\n", | ||||
|     "\n", | ||||
|     ":::{figure-md} si-fig\n", | ||||
|     "<img src=\"results.png\" alt=\"Si polar scan\" width=\"600px\" align=\"center\">\n", | ||||
|     "\n", | ||||
|     "Si(2p) polar scan (contribution of an emitter in the 4{sup}`th` plane with all 7 114 945 scattering paths taken into account (orange curve), and for only 1525 filtered paths (blue curve).\n", | ||||
|     "\n", | ||||
|     ":::\n", | ||||
|     "\n", | ||||
|     ":::{literalinclude} Si001_completed.py\n", | ||||
|     ":lineno-match:\n", | ||||
|     ":emphasize-lines: 37-41\n", | ||||
|     ":::\n", | ||||
|     "\n", | ||||
|     "``` " | ||||
|    ] | ||||
|   } | ||||
|  ], | ||||
|  "metadata": { | ||||
|  | @ -152,7 +187,7 @@ | |||
|    "name": "python", | ||||
|    "nbconvert_exporter": "python", | ||||
|    "pygments_lexer": "ipython3", | ||||
|    "version": "3.11.3" | ||||
|    "version": "3.11.13" | ||||
|   } | ||||
|  }, | ||||
|  "nbformat": 4, | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue