如何绘制嵌入在Mathematica中的模块中的功能

发布于 2025-02-05 04:19:02 字数 752 浏览 2 评论 0原文

我想为此功能绘制2D图。 SS拓扑共振电路的效率 我是Mathematica的新手。这就是我尝试过的,如果有人可以帮助我对其进行故障排除并发布工作版本,我将不胜感激。

Eff [d_,f_]:=Module[{C1,C2,L1,L2,R1,R2,Rs,Ro,a,b,w,mu,RL,M,eff,fr,Vi,N1,N2},
w = 2 Pi f;
C1 = 1/(L1*w^2);
C2= 1/(L2*w^2);
L1 = L2 = 14 10^-6;fr=270 10^3;
Ro=R1=R2=Rs=0.2;
a = b = 0.5; mu = 4 Pi*10^-7; Vi = 100;N1=N2=100;
M[d]=  N1 N2 Block[{k = Sqrt[(4 a b)/((a + b)^2 + d^2)]}, mu Sqrt[a b]  2/k ((1 - k^2/2) EllipticK[k^2] - EllipticE[k^2])];
eff =(C2^2*M[d]^2*Ro*w^4)/(R1 + Rs + C2*(-2*L2 + C2*(R2 + RL)^2)*(R1 + Rs)*w^2 + C22*(M [d]2*(R2 + RL) + L2^2*(R1 + Rs))*w^4)
]
Plot[Eff [0.1,f] ,{f,100 10^3,100 10^6}]

值是测试值。请我感谢任何帮助来完成这项工作。

I want to plot a 2D graph for this function.
Efficiency of a SS topology resonant circuit
I am new to Mathematica. This is what I have tried, I would appreciate it if someone could help me troubleshoot it and post a working version.

Eff [d_,f_]:=Module[{C1,C2,L1,L2,R1,R2,Rs,Ro,a,b,w,mu,RL,M,eff,fr,Vi,N1,N2},
w = 2 Pi f;
C1 = 1/(L1*w^2);
C2= 1/(L2*w^2);
L1 = L2 = 14 10^-6;fr=270 10^3;
Ro=R1=R2=Rs=0.2;
a = b = 0.5; mu = 4 Pi*10^-7; Vi = 100;N1=N2=100;
M[d]=  N1 N2 Block[{k = Sqrt[(4 a b)/((a + b)^2 + d^2)]}, mu Sqrt[a b]  2/k ((1 - k^2/2) EllipticK[k^2] - EllipticE[k^2])];
eff =(C2^2*M[d]^2*Ro*w^4)/(R1 + Rs + C2*(-2*L2 + C2*(R2 + RL)^2)*(R1 + Rs)*w^2 + C22*(M [d]2*(R2 + RL) + L2^2*(R1 + Rs))*w^4)
]
Plot[Eff [0.1,f] ,{f,100 10^3,100 10^6}]

The values are test values. Please I will appreciate any help to make this work.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

稚气少女 2025-02-12 04:19:02

好吧,这是一个显示 Mathematica 代码不需要看起来很糟糕的版本。 :)

Eff[d_, f_] := Module[
  {
   L1 = 14 10^(-6),
   L2 = 14 10^(-6),
   R1 = 0.2,
   R2 = 0.2,
   Rs = 0.2,
   Ro = 0.2,
   a = 0.5,
   b = 0.5,
   w = 2 Pi f,
   mu = 4 Pi 10^(-7),
   RL = 1,
   N1 = 100,
   N2 = 100,
   C1, C2, M, k
  },
  C1 = 1 / (L1*w^2);
  C2 = 1 / (L2*w^2);
  k = Sqrt[
    (4 a b)/
     ((a + b)^2 + d^2)
    ];
  M = N1 N2 mu Sqrt[a b] 2 / k 
    ((1 - k^2 / 2) EllipticK[k^2] - EllipticE[k^2]);
  Return[
   (C2^2 M^2 Ro w^4) /
    (
     R1 + Rs
      + C2 (-2 L2 + C2 (R2 + RL)^2) (R1 + Rs) w^2
      + C2^2 (M^2 (R2 + RL) + L2^2 (R1 + Rs)) w^4 
     )
   ]
  ]

LogLinearPlot[
 Evaluate[
  Table[
   Eff[d, f], {d, 0.1, 1.1, 0.1}
   ]
  ], {f, 10^3, 10^8},
 Frame -> True,
 GridLines -> Automatic,
 PlotLegends -> Table[d, {d, 0.1, 1.1, 0.1}]
 ]

Plot3D[
 Eff[d, f], {d, 0.1, 1.1}, {f, 10^3, 10^8},
 ScalingFunctions -> {Identity, "Log", Identity},
 PlotRange -> All
 ]

Well, here is a version showing that Mathematica code does not need to look awful. :)

Eff[d_, f_] := Module[
  {
   L1 = 14 10^(-6),
   L2 = 14 10^(-6),
   R1 = 0.2,
   R2 = 0.2,
   Rs = 0.2,
   Ro = 0.2,
   a = 0.5,
   b = 0.5,
   w = 2 Pi f,
   mu = 4 Pi 10^(-7),
   RL = 1,
   N1 = 100,
   N2 = 100,
   C1, C2, M, k
  },
  C1 = 1 / (L1*w^2);
  C2 = 1 / (L2*w^2);
  k = Sqrt[
    (4 a b)/
     ((a + b)^2 + d^2)
    ];
  M = N1 N2 mu Sqrt[a b] 2 / k 
    ((1 - k^2 / 2) EllipticK[k^2] - EllipticE[k^2]);
  Return[
   (C2^2 M^2 Ro w^4) /
    (
     R1 + Rs
      + C2 (-2 L2 + C2 (R2 + RL)^2) (R1 + Rs) w^2
      + C2^2 (M^2 (R2 + RL) + L2^2 (R1 + Rs)) w^4 
     )
   ]
  ]

and

LogLinearPlot[
 Evaluate[
  Table[
   Eff[d, f], {d, 0.1, 1.1, 0.1}
   ]
  ], {f, 10^3, 10^8},
 Frame -> True,
 GridLines -> Automatic,
 PlotLegends -> Table[d, {d, 0.1, 1.1, 0.1}]
 ]

or

Plot3D[
 Eff[d, f], {d, 0.1, 1.1}, {f, 10^3, 10^8},
 ScalingFunctions -> {Identity, "Log", Identity},
 PlotRange -> All
 ]
本宫微胖 2025-02-12 04:19:02

FRvi不使用。

Clear[L1, L2, Ro, R1, R2, Rs, a, b, mu, N1, N2, d]

M[d_] := Module[{k = Sqrt[(4 a b)/((a + b)^2 + d^2)]}, 
  N1 N2 mu Sqrt[a b] 2/k ((1 - k^2/2) EllipticK[k^2] - EllipticE[k^2])]

w[f_] := 2 Pi f
C1[f_] := 1/(L1*w[f]^2)
C2[f_] := 1/(L2*w[f]^2)

eff[d_, f_, RL_] := (C2[f]^2*M[d]^2*Ro*w[f]^4)/
  (R1 + Rs + C2[f]*(-2*L2 + C2[f]*(R2 + RL)^2)*(R1 + Rs)*w[f]^2 +
    C2[f]^2*(M[d]^2*(R2 + RL) + L2^2*(R1 + Rs))*w[f]^4)

L1 = L2 = 14 10^-6;
Ro = R1 = R2 = Rs = 0.2;
a = b = 0.5;
mu = 4 Pi*10^-7;
N1 = N2 = 100;
d = 0.1;

Legended[Show[Sequence @@
   Table[Plot[eff[d, f, RL], {f, 100 10^3, 100 10^6}, 
     PlotStyle -> ColorData[97, Round[5 RL + 1]],
     AxesLabel -> (Style[#, 14] & /@ {"  f", "eff"})],
    {RL, 0, 1, 0.2}], PlotRange -> All, AxesOrigin -> {0, 0}],
 LineLegend[ColorData[97, #] & /@ Range[6],
  Table["RL=" <> ToString[RL], {RL, 0, 1, 0.2}]]]

fr and Vi are not used.

Clear[L1, L2, Ro, R1, R2, Rs, a, b, mu, N1, N2, d]

M[d_] := Module[{k = Sqrt[(4 a b)/((a + b)^2 + d^2)]}, 
  N1 N2 mu Sqrt[a b] 2/k ((1 - k^2/2) EllipticK[k^2] - EllipticE[k^2])]

w[f_] := 2 Pi f
C1[f_] := 1/(L1*w[f]^2)
C2[f_] := 1/(L2*w[f]^2)

eff[d_, f_, RL_] := (C2[f]^2*M[d]^2*Ro*w[f]^4)/
  (R1 + Rs + C2[f]*(-2*L2 + C2[f]*(R2 + RL)^2)*(R1 + Rs)*w[f]^2 +
    C2[f]^2*(M[d]^2*(R2 + RL) + L2^2*(R1 + Rs))*w[f]^4)

L1 = L2 = 14 10^-6;
Ro = R1 = R2 = Rs = 0.2;
a = b = 0.5;
mu = 4 Pi*10^-7;
N1 = N2 = 100;
d = 0.1;

Legended[Show[Sequence @@
   Table[Plot[eff[d, f, RL], {f, 100 10^3, 100 10^6}, 
     PlotStyle -> ColorData[97, Round[5 RL + 1]],
     AxesLabel -> (Style[#, 14] & /@ {"  f", "eff"})],
    {RL, 0, 1, 0.2}], PlotRange -> All, AxesOrigin -> {0, 0}],
 LineLegend[ColorData[97, #] & /@ Range[6],
  Table["RL=" <> ToString[RL], {RL, 0, 1, 0.2}]]]

enter image description here

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文