Note

Wolfram Player provides access to most of the capabilities of ♯SHAARP.si except for Full Analytical expressions.

Open the ♯SHAARP.si.nb in the Mathematica® software on your computer

  1. Unzip the file and open the SHAARP.si.nb.
    • Note: It is recommended to keep all the files in the same directory to access the full features of ♯SHAARP.si
    • Make sure that the Dynamic Evaluation has been enabled (it is enabled by default).
  2. From the menu EvaluateEvaluate Notebook
    • Note: This process will clear out all the definitions from other notebooks and enable the “Notation” package for the analytical solutions.
  3. After ~30s waiting time for initialization, you will see the main panel:
  4. The main panel contains four parts
    • Input panels specify all the input parameters
    • Output panels give the output diagrams and equations
    • Progress bar show the progress after clicking the Update button
    • Update button execute the program by clicking it

Try preset demos

  • On the left-hand panel (LHP), scroll down to “Case Studies”.
  • Click on LiNbO3 (1120) MTI X-cut. All the parameters will be autofilled for this case.
  • In the “Functionality”, select “SHG Simulation”. Leave the other LHP settings in their default settings.
  • At the top R.H. corner, click “Update". (Please be patient, it may take a few seconds; Watch the progress bar on the top to track when the calculation is done.)
  • The second row of the right-hand panel (RHP) should depict the SHG polar plots (I^{2\omega}(\varphi,\psi), and I^{2\omega}(\varphi,\psi+\pi/2)) for the default settings of polarization and plane of incidence (PoI) in the LHP.
  • Placing the cursor on the polar plots, and you can view a detailed description of the plots.

Now you have obtained your first numerical simulation of SHG polarimetry from a single interface. Next, let’s explore various polarization settings for the fundamental (\omega) and SHG (2\omega) waves.

Polarization Settings

  • The definition of the incident polarization (at frequency \omega) is given as E=(E_p,E_s)=E_0(\cos\varphi, \sin\psi e^{i\Delta\delta} ), where E_p and E_s are the p and s polarization components that are, respectively, parallel to and perpendicular to the PoI. The PoI is a plane formed by the incident wavevector, \pmb{k}^{\omega}, and the normal to the crystal surface. The polarization of the SHG wave at frequency 2\omega is measured using a linear polarizer at an angle \psi, where \psi=0^o and 90^o corresponds to the p-polarized and s-polarized SHG light, respectively.
  • In the “Polarimetry Settings”, you can vary
    1. the incident angle (\theta^i, in the range between 0-90^o),
    2. the incident (\omega) polarization direction (\varphi)
    3. output (2\omega) polarization direction (\psi), and
    4. the ellipticity of incident wave (\Delta\delta)
  • In the “Incident Angle θi(o)”, set incident angle (at frequency \omega)  to 0^o, and press “Update” to evaluate the changes. In the first row on the RHP, the polarized SHG response will change. The change of incident angle will also be revealed in the “Probing Geometry” plot in the second row of the RHP.
  • Now set the “Output SHG Polarization” to “Fix Analyzer”. A “Fixed Analyzer Angle” option will appear, allowing you to select a specific output polarization direction. Keep the angle at 0^o for now (corresponding to p-polarization), and click “Update”. The SHG polar plots will change accordingly, and you can view the change to the polarization setting in the Polarization Relations plot in the second row of the RHP.
  • Now click “3D Schematic” and then “Update”. The 3D Schematic option allows you to visualize the Probing Geometry and Polarization Relations in 3D, and you can change the view direction by dragging the plots.
  • You can also change the incident polarization. Try playing with the polarization settings and press “Update” to generate new plots.

Now you have some experience in setting up the polarization conditions for both fundamental and the SHG waves, in viewing your polarization settings using Probing Geometry and Polarization Relations plots, and generating different SHG polarimetry plots. Next, we will play with the crystal settings.

Note

Note that for the “LiNbO3 (1120) MTI X-cut” case, Z_3 is parallel to L_1 in 3D Probing Geometry plot.

Note

Note that Z_3 is now parallel to L_2 in the 3D Probing Geometry plot.

Now you have finished the tutorial on the orientations. Detailed discussions about various coordinate systems and orientations can be found in the manual. Question marks next to “Use Miller Indices (hkl)” can help you quickly refer to the definition of (Z_1,Z_2,Z_3) based on the point group you have selected.

Note

These tensors are property tensors specified in the crystal physics coordinates and do not need to be changed when changing the crystal orientation.

Note

Note, use capital I to represent the imaginary part in Mathematica.

  • Now the polar plots are updated with a real refractive index tensor at \omega but a complex refractive tensor at 2\omega. Next, try making the dielectric tensor at \omega to be complex as well.

SHG Tensor (dijk)

  • Based on the point group symmetry you have selected in the “Crystal Structure”, the nonvanishing terms in the SHG tensor can be uniquely determined and provided in the Voigt notation1.
  • The default setting for the “LiNbO3 (1120) MTI X-cut” provides the nonlinear coefficients of LiNbO3 measured using the fundamental wavelength at 800 nm. You can try to change those values and press “Update” to evaluate the influence on the SHG polar plots.

Now you have finished a quick tutorial on the input panels and performing the SHG simulation. ♯SHAARP not only provides simulations of the polarized SHG response, but also features in generating analytical expressions for fitting experimentally polar plots for determining nonlinear SHG coefficients and the crystal symmetry.

Partial Analytical Expressions/ Full Analytical Expressions

Partial analytical expressions generate analytical expressions with only SHG coefficients as the unknown variables, providing a reliable way to experimentally determine SHG coefficients by fitting these expressions to the experimental polar plots. In this function, the numerical values of linear optical tensors, orientation, and the incident angle will be provided by the user and assumed to be known while the unknown SHG coefficients are left as variables. On the other hand, the Full analytical expressions provide the complete variables-based analytical expressions where the linear and nonlinear optical properties, as well as the various polarization and incidence angles of measurement are assumed to be variables. This method will provide a comprehensive expression for the wave mixing in the nonlinear medium.

Partial Analytical Expressions

  • Taking LiNbO3 as an example. Click LiNbO3 (1120) MTI X-cut in the Case Study, in order to use the default parameters.
  • Click Partial Analytical Expressions in the Functionality section. Press “Update” to initiate the calculation.
  • The RHP will display the final intensity expressions of I^{2\omega}(\varphi,\psi), and I^{2\omega}(\varphi,\psi+\pi/2).
  • The Copy button to the left of the expressions will allow you directly copy the expression and paste it into another document such as a Mathematica notebook, or Microsoft files.

Note

This calculation could take up to a few minutes due to the amount of calculations involved. Please be patient! The progress bar shown at the top of the GUI helps keep track of the progress in the calculation.

Note

In the RHP, you can still use Copy to copy equations, though the equations are not displayed.

  • The output expressions display equations for reflected electric fields at 2\omega frequency (E^{2\omega}(\varphi,\psi) and E^{2\omega}(\varphi,\psi+pi/2)).
  • The analytical expressions are provided in sequence. For example, E^{2\omega}(\varphi,\psi) is expressed using CT,ee,2ω and ET,e,2ω. The expressions for the CT,ee,2ω and ET,e,2ω will also be provided in the output expressions as a function of the material property coefficients and the measurement geometry.

Defining New Presets

Materials Properties Preset Values provide a way to store your input information so that you can review those input later. It works similarly to buttons in the Case Study , butallows users to customize input settings based on the need. This setting is particularly useful if you are varying some input settings to explore the influence and changes towards SHG response. - Take LiNbO3 as an example. Click LiNbO3 (1120) MTI X-cut in the Case Study, to use the default parameters. Click SHG Simulations in the Functionality section. Press “Update” to initiate the calculation. - Click “Preset 1” to store the input information including orientations, crystal structure, linear optical tensor values, and SHG tensor values. You can set labels for your presets and enter “LNO” in the “Preset 1 Label”. Use “Update” to secure the settings. Hovering cursors on preset buttons will provide more information about preset values. - Now, you can click GaAs(111) in the Case Study and press “Update” to evaluate different materials. Go to “Preset 2” and use “Update” to make changes to the settings. - By pressing “Preset 1”, the input information will direct you back to the settings for preset 1. You can also click “Preset 2” to return to saved settings for preset 2. - If you click “Clear Presets”, this process will erase all saved settings for all four presets. You can redefine presets after clearing the definition.

More resources

  • Detailed description of the method can be found here
  • Some specific cases can be found here

Frequently asked questions(FAQ)

Reference

  1. Denev, S. A., Lummen, T. T. A., Barnes, E., Kumar, A. & Gopalan, V. Probing Ferroelectrics Using Optical Second Harmonic Generation. Journal of the American Ceramic Society 94, 2699–2727 (2011).