Search:

Summary | Source files | Compilation | Precompiled | Options | References

Mopagras

A simulator for the electromagnetic wave propagation in stratified and periodic media possessing optical parametric amplification.

fig1

Figure 1. Logarithmic amplification of the reflected signal vs bias resonance detuning α. The dashed reference line shows the corresponding forward amplification in a medium in which the refractive index is spatially uniform. Used parameters in the simulation were β = 10.0 cm-1, γ = 0, δ = 0, η = 3.0 cm-1, κ = 1.4 cm-1, and a geometrical length of L = 3.0 cm. [J. Nonl. Opt. Phys. Mat., 15, 113-139 (2006)]

Summary of the program

The MOPAGRAS program calculates field envelopes of forward and backward travelling wave components inside a magneto-optically parametric Bragg grating of sinusoidal spatial distribution of the refractive index.

The program essentially wraps the calculating core provided by the mopagrat() routine (mopagrat.f) into a stand-alone executable program, in which commandline parsing for parameters and output files is supported, as well as including the possibility to specifying different scan parameters, that is to say, specifying different variables to be varied in investigating for example optimization or phase matching properties of the parametric process. For a summary of the command-line options supported, see the separate section where these are listed. The MOPAGRAS program was originally compiled with g77 (GNU Fortran 77) [1]; however, any standards-compliant Fortran compiler should do.

The MOPAGRAS program was the engine behind the graphs published in Journal of Nonlinear Optical Physics and Materials 15, 113-139 (2006). For further information on optical parametric processes in magneto-optical media, see Refs. [2-5].

Current revision

Revision 1.4, as of 03/01/2006. Copyright © Fredrik Jonsson 2006, under GPL

Source files

mopagras.tgz [7 kB] The gzip:ed tape archive containing all the source for the MOPAGRAS program, together with the Makefile for compilation and generation of all graphs displayed in J. Nonl. Opt. Phys. Mat. 15, 113-139 (2006).

mopagras.f [20 kB] Fortran 77 source for the MOPAGRAS program.
[ download | view source ]

mopagrat.f [8 kB] Fortran 77 source for the mopagrat() routine, being the core engine of the MOPAGRAT program.
[ download | view source ]

ccubsolv.f [2 kB] Fortran 77 source for the ccubsolv() routine, employed for solving the eigenvalues of the system determinant appearing in the analytical solution to wave propagation in magneto-optical parametric gratings. For details on the ccubsolv() routine, see its separate documentation.
[ download | view source ]

zgaussj.f [4 kB] Fortran 77 source for the zgaussj() routine, employed for solving systems of complex-valued linear equations by Gauss-Jordan elimination and element pivoting. For details on the zgaussj() routine, see its separate documentation.
[ download | view source ]

Makefile [11 kB] The Makefile for compilation of the executable file. To compile, simply run 'make' in the directory containing all source files and this Makefile.
[ download | view source ]

Compilation

Place the Fortran 77 source files mopagras.f, mopagrat.f, ccubsolv.f, and zgaussj.f in the same directory as the Makefile, and simply run 'make' in order to compile the executable file.

Precompiled executables

mopagras [(No file available)] Executable program compiled for Mac OS X using the GNU Fortran 77 Compiler (g77).

Command-line options

--verbose

Toggle verbose mode ON/OFF. (Default: off)

-olcp, --outputfile_lcp <filename>

Specifies the name of the file where simulated data for the left circularly polarized (LCP) electromagnetic field component are to be saved.

-orcp, --outputfile_rcp <filename>

Specifies the name of the file where simulated data for the right circularly polarized (RCP) electromagnetic field component are to be saved.

--a1iplus, --signal_lcp <complex-valued number>

Specifies the normalized amplitude of the left circularly polarized component of the signal wave incident to the grating at z = 0. The convention for the normalization is explicitly stated in page 131, Eq. (34), of J. Nonl. Opt. Phys. Mat. 15, 113-139 (2006).

--a1iminus, --signal_rcp <complex-valued number>

Specifies the normalized amplitude of the right circularly polarized component of the signal wave incident to the grating at z = 0. The convention for the normalization is explicitly stated in page 131, Eq. (34), of J. Nonl. Opt. Phys. Mat. 15, 113-139 (2006).

--a2iplus, --idler_lcp <complex-valued number>

Specifies the normalized amplitude of the left circularly polarized component of the idler wave incident to the grating at z = 0. The convention for the normalization is explicitly stated in page 131, Eq. (34), of J. Nonl. Opt. Phys. Mat. 15, 113-139 (2006).

--a2iminus, --idler_rcp <complex-valued number>

Specifies the normalized amplitude of the right circularly polarized component of the idler wave incident to the grating at z = 0. The convention for the normalization is explicitly stated in page 131, Eq. (34), of J. Nonl. Opt. Phys. Mat. 15, 113-139 (2006).

--magfield <start value>:<stop>:<# samples>

Specifies the magnetic field B0, expressed in units of Tesla. Whenever the specified number of samples is greater than one, this parameter will be scanned between its start and final values.

--alpha <start value>:<stop>:<# samples>

Specifies the gain parameter α, describing the strength of the nonlinear energy transfer between the signal and idler. The α-parameter is defined in page 132, Eq. (37), of J. Nonl. Opt. Phys. Mat. 15, 113-139 (2006). Whenever the specified number of samples is greater than one, this parameter will be scanned between its start and final values.

--beta <start value>:<stop>:<# samples>

Specifies the bias value of the phase mismatch of the optical parametric process, in the absence of magnetic fields. The β-parameter is defined in page 132, Eq. (39), of J. Nonl. Opt. Phys. Mat. 15, 113-139 (2006). Whenever the specified number of samples is greater than one, this parameter will be scanned between its start and final values.

--gamma <start value>:<stop>:<# samples>

Specifies the differential, magneto-optically induced phase detuning parameter γ of the parametric process. The γ-parameter is defined in page 132, Eq. (40), of J. Nonl. Opt. Phys. Mat. 15, 113-139 (2006). Whenever the specified number of samples is greater than one, this parameter will be scanned between its start and final values.

--delta <start value>:<stop>:<# samples>

Specifies the differential, magneto-optically induced resonance detuning parameter δ of the signal wave, describing the detuning from grating resonance. The δ-parameter is defined in page 132, Eq. (38), of J. Nonl. Opt. Phys. Mat. 15, 113-139 (2006). Whenever the specified number of samples is greater than one, this parameter will be scanned between its start and final values.

--eta <start value>:<stop>:<# samples>

Specifies the normalized gain parameter of the optical parametric process. The η-parameter incorporates the strength of the optical pump field and is defined in page 131, Eq. (36), of J. Nonl. Opt. Phys. Mat. 15, 113-139 (2006). Whenever the specified number of samples is greater than one, this parameter will be scanned between its start and final values.

--kappa <start value>:<stop>:<# samples>

Specifies the effective linear coupling coefficient (grating strength) κ experienced by the signal wave due to the periodic spatial modulation of the grating. The κ-parameter is defined in page 122, Eq. (14), of J. Nonl. Opt. Phys. Mat. 15, 113-139 (2006). Whenever the specified number of samples is greater than one, this parameter will be scanned between its start and final values.

--length <start value>:<stop>:<# samples>

Specifies the geometrical length L of the grating. Whenever the specified number of samples is greater than one, this parameter will be scanned between its start and final values.

--zeta <start value>:<stop>:<# samples>

Specifies the position z along the grating (0 ≤ z ≤ L) at which the program should evaluate the transmitted and reflected wave amplitudes. Whenever the specified number of samples is greater than one, this parameter will be scanned between its start and final values.

References

[1] Documentation for the GNU Fortran 77 compiler, commonly denoted g77, is available online at http://gcc.gnu.org/onlinedocs/g77/.

[2] F. Jonsson and C. Flytzanis, J. Nonlin. Opt. Phys. Mat. 15, 113-139 (2006).

[3] F. Jonsson and C. Flytzanis, J. Optics A: Pure Appl. Opt. 2, 299-302 (2000).

[4] F. Jonsson and C. Flytzanis, Opt. Lett. 25, 1249-1251 (2000).

[5] F. Jonsson and C. Flytzanis, Opt. Lett. 24, 1514-1516 (1999).

Return to previous page

Leave a message

Your name:

Your email: (required)

Message:

Generated by ::emailform::

Last modified Wednesday 15 Feb 2023