level 5
dayday14
楼主
G = 6;
g = 4.8;
M[m_] := (1 + Sqrt[g/G]) m;
F1[m_, b_] :=
NIntegrate[
1/s^(3/2) (Exp[-s (b + Sqrt[k^2 + M[m]^2])^2] +
Exp[-s (b - Sqrt[k^2 + M[m]^2])^2]), {s, 1, Infinity}, {k, 0,
Infinity}]
F2[m_, b_] := 2*b*\[Mu]
F[m_, b_] :=
1/(2*Sqrt[\[Pi]])*F1[m, b] - F2[m, b]
locationMin = {0.1261, 0.04304};
location = {};
Do[
\[Mu] = i/100;
res = FindMinimum[{F[m, b], 0 < m < 1 && 0 < b < 1}, {m,
locationMin[[1]]}, {b, locationMin[[2]]}];
locationMin = {m, b} /. res[[2]];
AppendTo[location, locationMin];
Print[{N[\[Mu]], res}], {i, 0, 100}]
运行时总是提示积分有问题,但是去掉N又计算不出来,有谁知道要怎么改吗?谢谢!
2018年01月03日 08点01分
1
g = 4.8;
M[m_] := (1 + Sqrt[g/G]) m;
F1[m_, b_] :=
NIntegrate[
1/s^(3/2) (Exp[-s (b + Sqrt[k^2 + M[m]^2])^2] +
Exp[-s (b - Sqrt[k^2 + M[m]^2])^2]), {s, 1, Infinity}, {k, 0,
Infinity}]
F2[m_, b_] := 2*b*\[Mu]
F[m_, b_] :=
1/(2*Sqrt[\[Pi]])*F1[m, b] - F2[m, b]
locationMin = {0.1261, 0.04304};
location = {};
Do[
\[Mu] = i/100;
res = FindMinimum[{F[m, b], 0 < m < 1 && 0 < b < 1}, {m,
locationMin[[1]]}, {b, locationMin[[2]]}];
locationMin = {m, b} /. res[[2]];
AppendTo[location, locationMin];
Print[{N[\[Mu]], res}], {i, 0, 100}]
运行时总是提示积分有问题,但是去掉N又计算不出来,有谁知道要怎么改吗?谢谢!