.. 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_3_SAS_Rb2CrO4.py: Rb2CrO4, 87Rb (I=3/2) SAS ^^^^^^^^^^^^^^^^^^^^^^^^^ 87Rb (I=3/2) Switched-angle spinning (SAS) simulation. The following is a switched-angle spinning (SAS) simulation of :math:`\text{Rb}_2\text{CrO}_4`. While :math:`\text{Rb}_2\text{CrO}_4` has two rubidium sites, the site with the smaller quadrupolar interaction was selectively observed and reported by Shore `et. al.` [#f1]_. The following is the simulation based on the published tensor parameters. .. 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 site = Site( isotope="87Rb", isotropic_chemical_shift=-7, # in ppm shielding_symmetric={"zeta": 110, "eta": 0}, quadrupolar={ "Cq": 3.5e6, # in Hz "eta": 0.3, "alpha": 0, # in rads "beta": 70 * 3.14159 / 180, # in rads "gamma": 0, # in rads }, ) spin_system = SpinSystem(sites=[site]) 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=4.2, # in T spectral_dimensions=[ { "count": 256, "spectral_width": 1.5e4, # in Hz "reference_offset": -5e3, # in Hz "label": "70.12 dimension", "events": [{"rotor_angle": 70.12 * 3.14159 / 180}], # in radians }, { "count": 512, "spectral_width": 15e3, # in Hz "reference_offset": -7e3, # 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_system] # add the spin systems sim.methods = [sas] # add the method. # Configure the simulator object. For non-coincidental tensors, set the value of the # `integration_volume` attribute to `hemisphere`. sim.config.integration_volume = "hemisphere" 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_3_SAS_Rb2CrO4_001.png :alt: plot 3 SAS Rb2CrO4 :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.2 kHz", dim_index=0), apo.Gaussian(FWHM="0.2 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_3_SAS_Rb2CrO4_002.png :alt: plot 3 SAS Rb2CrO4 :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.585 seconds) .. _sphx_glr_download_examples_2D_simulation(crystalline)_plot_3_SAS_Rb2CrO4.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_3_SAS_Rb2CrO4.ipynb :alt: Launch binder :width: 150 px .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_3_SAS_Rb2CrO4.py ` .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_3_SAS_Rb2CrO4.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_