Mathematica Asked by kowalski on February 9, 2021
I have the following code
Clear["Global`*"]
fp = 5.97;
Δ = 0;
f1 = fp + Δ;
f2 = fp - Δ;
f4 = 5.38413;
ωp = 2 π*fp;
ω1 = 2 π*f1;
ω2 = 2 π*f2;
ω4 = 2 π*f4;
ω3 = (ω1 + ω2 - ω4);
a = 10;
NN = 200*a;
LL = 1200*10^-3;
I0 = 0.1;
I1 = 0.48*I0;
I2 = 0.48*I0;
zchar = 50;
Cj = 39*10^-6;
CC0 = 480*10^-6;
k1 = Sqrt[1 - Cj LL ω1^2]/(a*Sqrt[CC0 LL] ω1);
k2 = Sqrt[1 - Cj LL ω2^2]/(a*Sqrt[CC0 LL] ω2);
k3 = Sqrt[1 - Cj LL ω3^2]/(a*Sqrt[CC0 LL] ω3);
k4 = Sqrt[1 - Cj LL ω4^2]/(a*Sqrt[CC0 LL] ω4);
κ1 = -(k1/(8 I0^2*LL^2*(1 - LL*Cj*ω1^2)));
κ2 = -(k2/(8 I0^2*LL^2*(1 - LL*Cj*ω2^2)));
κ3 = -(k3/(8 I0^2*LL^2*(1 - LL*Cj*ω3^2)));
κ4 = -(k4/(8 I0^2*LL^2*(1 - LL*Cj*ω4^2)));
α11 = -(k1/(16*I0^2*LL^2*(1 - LL*Cj*ω1^2)));
α12 = -(k1/(8*I0^2*LL^2*(1 - LL*Cj*ω1^2)));
α13 = -(k1/(8*I0^2*LL^2*(1 - LL*Cj*ω1^2)));
α14 = -(k1/(8*I0^2*LL^2*(1 - LL*Cj*ω1^2)));
α21 = -(k2/(8*I0^2*LL^2*(1 - LL*Cj*ω2^2)));
α22 = -(k2/(16*I0^2*LL^2*(1 - LL*Cj*ω2^2)));
α23 = -(k2/(8*I0^2*LL^2*(1 - LL*Cj*ω2^2)));
α24 = -(k2/(8*I0^2*LL^2*(1 - LL*Cj*ω2^2)));
α31 = -(k3/(8*I0^2*LL^2*(1 - LL*Cj*ω3^2)));
α32 = -(k3/(8*I0^2*LL^2*(1 - LL*Cj*ω3^2)));
α33 = -(k3/(16*I0^2*LL^2*(1 - LL*Cj*ω3^2)));
α34 = -(k3/(8*I0^2*LL^2*(1 - LL*Cj*ω3^2)));
α41 = -(k4/(8*I0^2*LL^2*(1 - LL*Cj*ω4^2)));
α42 = -(k4/(8*I0^2*LL^2*(1 - LL*Cj*ω4^2)));
α43 = -(k4/(8*I0^2*LL^2*(1 - LL*Cj*ω4^2)));
α44 = -(k4/(16*I0^2*LL^2*(1 - LL*Cj*ω4^2)));
A10 = (I1*zchar)/(ω1*Sqrt[2]);
A20 = (I2*zchar)/(ω2*Sqrt[2]);
α1 = α11*Abs[A10]^2 + α12*Abs[A20]^2;
α2 = α21*Abs[A10]^2 + α22*Abs[A20]^2;
α3 = α31*Abs[A10]^2 + α32*Abs[A20]^2;
α4 = α41*Abs[A10]^2 + α42*Abs[A20]^2;
ΔkL = (k1 + k2) - k3 - k4;
system[j_] := {A1'[x] ==
I*κ1*Conjugate[A2[x]]*A3[x]*A4[x]*
E^(-I*ΔkL*x) +
I*A1[x]*(α11*Abs[A1[x]]^2 + α12*
Abs[A2[x]]^2 + α13*Abs[A3[x]]^2 + α14*
Abs[A4[x]]^2),
A2'[x] ==
I*κ2*Conjugate[A1[x]]*A3[x]*A4[x]*
E^(-I*ΔkL*x) +
I*A2[x]*(α21*Abs[A1[x]]^2 + α22*
Abs[A2[x]]^2 + α23*Abs[A3[x]]^2 + α24*
Abs[A4[x]]^2),
A3'[x] ==
I*κ3*A1[x]*A2[x]*Conjugate[A4[x]]*
E^(I*ΔkL*x) +
I*A3[x]*(α31*Abs[A1[x]]^2 + α32*
Abs[A2[x]]^2 + α33*Abs[A3[x]]^2 + α34*
Abs[A4[x]]^2),
A4'[x] ==
I*κ4*A1[x]*A2[x]*Conjugate[A3[x]]*
E^(I*ΔkL*x) +
I*A4[x]*(α41*Abs[A1[x]]^2 + α42*
Abs[A2[x]]^2 + α43*Abs[A3[x]]^2 + α44*
Abs[A4[x]]^2), A1[0] == A10, A2[0] == A20,
A3[0] == j*(A10 + A20), A4[0] == 0};
sol[j_] := NDSolve[system[j], {A1, A2, A3, A4}, {x, 0, NN}]
LogLinearPlot[{10*Log10[Abs[(A3[NN]/A3[0]) /. sol[j]]^2], 10*Log10[Abs[(A3[NN]/A3[0]) /. sol[10^-5]]^2] - 1}, {j, 10^-5, 5}, PlotRange -> {Full, All}, AxesOrigin -> {0, 0}, PlotStyle ->{Directive[Black], Directive[Gray, Dashed]}, ImageSize -> Large]
(A10 + A20) // N
Upon running, it should generate a plot like the following:
One can see that under the system[j_]
and sol[j_]
function, I am attempting to solve the (four) differential equations (A1[x]
,A2[x]
,A3[x]
,A4[x]
) numerically. In particular, I’ve defined my initial condition for A3[0]
with respect to j
where j
is the variable to be plotted on the x-axis. As one can see, I am plotting j
normalized to A10+A20
as shown in the condition A3[0]==j*(A10+A20)
In particular, the x intersection between the black and the gray-dashed curve should be sensitive to the parameter I0
(set to 0.1
in this case). However, changing I0
to any other parameter doesn’t change the plot whatsoever (one can check this). I confirmed my suspicion by redefining my initial condition for A3[0]
as simply A3[0]==j
(rather than A3[0]==j*(A10+A20)
) and the intersection between the black and gray curve indeed changes as I0
changes. This seems to suggest that I am normalizing to the wrong parameter (A10+A20
), but this shouldn’t be a problem. Because A3[0]
represents some wave amplitude and A10+A20
represents the initial pump amplitudes and it is conventional to normalize the wave with respect to the pump amplitudes.
What is the problem here? Is I0
some how dependent on the x-axis so that something cancels when I define my A3[0]
as A3[0]==j*(A10+A20)
? Any suggestions for normalizing the x-axis?
Thank you.
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP