Differential Equations of Complex Variables
s.r.chinn
Function OPA(pw, zz, yw, dydz)
Wave pw // pw[0] = imK1, pw[1] =imK2, pw[2] = imK3
Variable zz // z value at which to calculate derivatives
Wave yw // yw[0]-yw[5] containing real and imag parts of 3 complex variables
Wave dydz // wave to receive d reE1/dz, d ImE1/dz etc. (output)
// idler signal pump
variable/C E1 = cmplx(yw[0],yw[1]) , E2 = cmplx(yw[2],yw[3]), E3 = cmplx(yw[4],yw[5])
variable/C K1 = cmplx(0,pw[0]), K2 = cmplx(0,pw[1]), K3 = cmplx(0,pw[2])
dydz[0] = real( K1 * conj(E2) * E3 ) // idler
dydz[1] = imag( K1 * conj(E2) * E3 )
dydz[2] = real( K2 * conj(E1) * E3 ) // signal
dydz[3] = imag( K2 * conj(E1) * E3 )
dydz[4] = real( K3 * E1 * E2 ) // pump
dydz[5] = imag( K3 * E1 * E2 )
return 0
End
//---------------------------------------------------------------------------------------------------------------------------------------
Function testOPA()
Make/D/O/N=(400,6) wopa
setscale/P x, 0, 0.005, wopa
wopa[0][0] = 0.0 // real idler // initial conditions at z=0
wopa[0][1] = 0.0 // imag idler
wopa[0][2] = 0.2 // real signal
wopa[0][3] = 0.0 // imag signal
wopa[0][4] = 5 // real pump
wopa[0][5] = 0.0 // imag pump
make/D/O wparm = {(1/3), 1.000, (4/3)} // ratios of inverse wavelengths
IntegrateODE/M=1/E=1e-6 OPA, wparm, wopa // derivative function, parameters, results
end
Wave pw // pw[0] = imK1, pw[1] =imK2, pw[2] = imK3
Variable zz // z value at which to calculate derivatives
Wave yw // yw[0]-yw[5] containing real and imag parts of 3 complex variables
Wave dydz // wave to receive d reE1/dz, d ImE1/dz etc. (output)
// idler signal pump
variable/C E1 = cmplx(yw[0],yw[1]) , E2 = cmplx(yw[2],yw[3]), E3 = cmplx(yw[4],yw[5])
variable/C K1 = cmplx(0,pw[0]), K2 = cmplx(0,pw[1]), K3 = cmplx(0,pw[2])
dydz[0] = real( K1 * conj(E2) * E3 ) // idler
dydz[1] = imag( K1 * conj(E2) * E3 )
dydz[2] = real( K2 * conj(E1) * E3 ) // signal
dydz[3] = imag( K2 * conj(E1) * E3 )
dydz[4] = real( K3 * E1 * E2 ) // pump
dydz[5] = imag( K3 * E1 * E2 )
return 0
End
//---------------------------------------------------------------------------------------------------------------------------------------
Function testOPA()
Make/D/O/N=(400,6) wopa
setscale/P x, 0, 0.005, wopa
wopa[0][0] = 0.0 // real idler // initial conditions at z=0
wopa[0][1] = 0.0 // imag idler
wopa[0][2] = 0.2 // real signal
wopa[0][3] = 0.0 // imag signal
wopa[0][4] = 5 // real pump
wopa[0][5] = 0.0 // imag pump
make/D/O wparm = {(1/3), 1.000, (4/3)} // ratios of inverse wavelengths
IntegrateODE/M=1/E=1e-6 OPA, wparm, wopa // derivative function, parameters, results
end
Forum
Support
Gallery
Igor Pro 9
Learn More
Igor XOP Toolkit
Learn More
Igor NIDAQ Tools MX
Learn More