.. only:: html .. note:: :class: sphx-glr-download-link-note Click :ref:`here ` to download the full example code or to run this example in your browser via Binder .. rst-class:: sphx-glr-example-title .. _sphx_glr_examples_2D_simulation(crystalline)_plot_2_SAS_Rb2SO4.py: Rb2SO4, 87Rb (I=3/2) SAS ^^^^^^^^^^^^^^^^^^^^^^^^ 87Rb (I=3/2) Switched-angle spinning (SAS) simulation. The following is an example of switched-angle spinning (SAS) simulation of :math:`\text{Rb}_2\text{SO}_4`, which has two distinct rubidium sites. The NMR tensor parameters for these sites are taken from Shore `et. al.` [#f1]_. .. code-block:: python import matplotlib as mpl import matplotlib.pyplot as plt import mrsimulator.signal_processing as sp import mrsimulator.signal_processing.apodization as apo from mrsimulator import Simulator, SpinSystem, Site from mrsimulator.methods import Method2D # global plot configuration font = {"size": 9} mpl.rc("font", **font) mpl.rcParams["figure.figsize"] = [4.25, 3.0] Generate the site and spin system objects. .. code-block:: python sites = [ Site( isotope="87Rb", isotropic_chemical_shift=16, # in ppm quadrupolar={"Cq": 5.3e6, "eta": 0.1}, # Cq in Hz ), Site( isotope="87Rb", isotropic_chemical_shift=40, # in ppm quadrupolar={"Cq": 2.6e6, "eta": 1.0}, # Cq in Hz ), ] spin_systems = [SpinSystem(sites=[s]) for s in sites] Use the generic 2D method, `Method2D`, to simulate a SAS spectrum by customizing the method parameters, as shown below. Note, the Method2D method simulates an infinite spinning speed spectrum. .. code-block:: python sas = Method2D( channels=["87Rb"], magnetic_flux_density=9.4, # in T spectral_dimensions=[ { "count": 256, "spectral_width": 3.5e4, # in Hz "reference_offset": 1e3, # in Hz "label": "90 dimension", "events": [{"rotor_angle": 90 * 3.14159 / 180}], # in radians }, { "count": 256, "spectral_width": 22e3, # in Hz "reference_offset": -4e3, # in Hz "label": "MAS dimension", "events": [{"rotor_angle": 54.74 * 3.14159 / 180}], # in radians }, ], ) Create the Simulator object, add the method and spin system objects, and run the simulation. .. code-block:: python sim = Simulator() sim.spin_systems = spin_systems # add the spin systems sim.methods = [sas] # add the method. sim.run() The plot of the simulation. .. code-block:: python data = sim.methods[0].simulation ax = plt.subplot(projection="csdm") cb = ax.imshow(data / data.max(), aspect="auto", cmap="gist_ncar_r") plt.colorbar(cb) ax.invert_xaxis() plt.tight_layout() plt.show() .. image:: /examples/2D_simulation(crystalline)/images/sphx_glr_plot_2_SAS_Rb2SO4_001.png :alt: plot 2 SAS Rb2SO4 :class: sphx-glr-single-img Add post-simulation signal processing. .. code-block:: python processor = sp.SignalProcessor( operations=[ # Gaussian convolution along both dimensions. sp.IFFT(dim_index=(0, 1)), apo.Gaussian(FWHM="0.4 kHz", dim_index=0), apo.Gaussian(FWHM="0.4 kHz", dim_index=1), sp.FFT(dim_index=(0, 1)), ] ) processed_data = processor.apply_operations(data=data) processed_data /= processed_data.max() The plot of the simulation after signal processing. .. code-block:: python ax = plt.subplot(projection="csdm") cb = ax.imshow(processed_data.real, cmap="gist_ncar_r", aspect="auto") plt.colorbar(cb) ax.invert_xaxis() plt.tight_layout() plt.show() .. image:: /examples/2D_simulation(crystalline)/images/sphx_glr_plot_2_SAS_Rb2SO4_002.png :alt: plot 2 SAS Rb2SO4 :class: sphx-glr-single-img .. [#f1] Shore, J.S., Wang, S.H., Taylor, R.E., Bell, A.T., Pines, A. Determination of quadrupolar and chemical shielding tensors using solid-state two-dimensional NMR spectroscopy, J. Chem. Phys. (1996) **105** *21*, 9412. `DOI: 10.1063/1.472776 `_ .. rst-class:: sphx-glr-timing **Total running time of the script:** ( 0 minutes 0.511 seconds) .. _sphx_glr_download_examples_2D_simulation(crystalline)_plot_2_SAS_Rb2SO4.py: .. only :: html .. container:: sphx-glr-footer :class: sphx-glr-footer-example .. container:: binder-badge .. image:: images/binder_badge_logo.svg :target: https://mybinder.org/v2/gh/DeepanshS/mrsimulator/master?urlpath=lab/tree/docs/_build/html/../../notebooks/examples/2D_simulation(crystalline)/plot_2_SAS_Rb2SO4.ipynb :alt: Launch binder :width: 150 px .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_2_SAS_Rb2SO4.py ` .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_2_SAS_Rb2SO4.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_