diff --git a/docs/source/notes/linear_optics.ipynb b/docs/source/notes/linear_optics.ipynb index 420dd11..0006e95 100644 --- a/docs/source/notes/linear_optics.ipynb +++ b/docs/source/notes/linear_optics.ipynb @@ -657,20 +657,20 @@ "\n", "$$\n", "\\bigl|a_n\\bigr|^2 \\sim \\text{energy density} \\\\\n", - "\\begin{align}\n", + "\\begin{aligned}\n", "\\Bigl|a_n\\!\\left[t\\right]\\Bigr|^2 &\\sim \\frac{\\text{energy}}{\\text{time}}\n", "&\n", "\\Bigl|a_n\\!\\left[\\nu\\right]\\Bigr|^2 &\\sim \\frac{\\text{energy}}{\\text{frequency}}\n", - "\\end{align}\n", + "\\end{aligned}\n", "$$\n", "\n", "$$\n", "\\left(\\hat{\\mathbf{e}}_n \\times \\hat{\\mathbf{h}}_n^*\\right) \\sim \\frac{1}{\\text{area}} \\\\\n", - "\\begin{align}\n", - "\\hat{e}^2 &\\sim \\frac{1}{\\left(\\epsilon_0 \\ c\\right) \\text{area}}\n", + "\\begin{aligned}\n", + "\\hat{e}^2 &\\sim \\frac{1}{\\left(\\epsilon_0 \\ c\\right) \\, \\text{area}}\n", "&\n", - "\\hat{h}^2 &\\sim \\frac{1}{\\left(\\mu_0 \\ c\\right) \\text{area}}\n", - "\\end{align}\n", + "\\hat{h}^2 &\\sim \\frac{1}{\\left(\\mu_0 \\ c\\right) \\, \\text{area}}\n", + "\\end{aligned}\n", "$$" ], "metadata": { @@ -716,7 +716,7 @@ }, "language_info": { "name": "python", - "version": "3.11.0", + "version": "3.10.10", "mimetype": "text/x-python", "codemirror_mode": { "name": "ipython", diff --git a/docs/source/notes/nonlinear_optics.ipynb b/docs/source/notes/nonlinear_optics.ipynb index ffa2b7b..eff59fc 100644 --- a/docs/source/notes/nonlinear_optics.ipynb +++ b/docs/source/notes/nonlinear_optics.ipynb @@ -1015,7 +1015,7 @@ "#### Analytic Nonlinear Terms\n", "Negative frequency components at the input to a nonlinear process can always be replaced by conjugated positive frequency components, the difficulty arises when restricting the range of output frequencies to positive values. To reduce the numerical complexity, nonlinear terms are best calculated as products in the time domain. However, the time-domain products are not strictly analytic as in general they each span both positive and negative frequencies. If one were to perform these products in the time domain with analytic grids that only support the positive half of the spectrum, the negative frequency components would alias into positive frequencies. This could lead to erroneous results, especially if an aliased term is inadvertently phase matched.\n", "\n", - "The simplest way around this is to cheat the analyticity and perform the frequency-to-time-domain Fourier transform with enough extra points to allow the negative frequency components to alias outside of the frequency range of interest. The \"analytic\" nonlinear terms are thus all entries in the above tables with the potential to generate positive output frequencies. After Fourier transforming back to the frequency domain, the extra points are dropped and only the analytic results remain. If the analytic grid has a support from $0$ to $\\nu_\\text{max}$, then the second-order nonlinearity would need a grid that supports at least another $\\nu_\\text{max}$ worth of points, while the third-order nonlinearity would need an extra $2 \\, \\nu_\\text{max}$, requiring a grid that supports a total of $2 \\, \\nu_\\text{max}$ and $3 \\, \\nu_\\text{max}$ points respectively.\n" + "The simplest way around this is to cheat and perform the frequency-to-time-domain Fourier transform with enough extra points to allow the negative frequency components to alias outside of the frequency range of interest. The \"analytic\" nonlinear terms are thus all entries in the above tables with the potential to generate positive output frequencies. After Fourier transforming back to the frequency domain, the extra points are dropped and only the analytic results remain. If the analytic grid has a support from $0$ to $\\nu_\\text{max}$, then the second-order nonlinearity would need a grid that supports at least another $\\nu_\\text{max}$ worth of points, while the third-order nonlinearity would need an extra $2 \\, \\nu_\\text{max}$, requiring a grid that supports a total of $2 \\, \\nu_\\text{max}$ and $3 \\, \\nu_\\text{max}$ points respectively.\n" ], "metadata": { "nteract": { @@ -1110,7 +1110,7 @@ }, "language_info": { "name": "python", - "version": "3.11.0", + "version": "3.10.10", "mimetype": "text/x-python", "codemirror_mode": { "name": "ipython",