You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:基于NDEigensystem求解氧核Woods-Saxon势的负特征值

Woods-Saxon势薛定谔方程求解问题修正

你的代码存在几个关键问题,导致结果与预期不符,以下是针对性修正:

1. 未定义Woods-Saxon势核心参数

氧核的Woods-Saxon势需要指定具体参数,典型取值为:

V0 = 50; R = 1.2*16^(1/3); a = 0.6;

(单位:V0为MeV,R、a为fm,自然单位下ℏ=1)

2. 径向薛定谔算子缺失离心项

径向薛定谔方程的标准形式必须包含离心势项(除非求解s波l=0),算子修正为:

ℏ = 1; m = 1; (* 自然单位下质量取1 *)
l = 0; (* 示例求解s波,l=0 *)
V[r_] := (-V0)/(1 + Exp[(r - R)/a])
\[ScriptCapitalL] = -ℏ²/(2m) u''[r] + (V[r] + ℏ²l(l+1)/(2m r²)) u[r];

3. 未指定边界条件

NDEigensystem需要明确物理边界:r=0处l≥0时u(0)=0,r→∞时u(r)→0,补充后求解代码:

{vals, funs} = NDEigensystem[{\[ScriptCapitalL], u[0] == 0, u[10] == 0}, u[r], {r, 0, 10}, 10];

4. 绘图表达式量纲混乱

原代码h*funs + vals将波函数与能量直接相加,属于错误操作。正确绘图应单独展示波函数与势能:

Show[
  Plot[Evaluate[funs], {r, 0, 10}, PlotLegends -> Map["E = " <> ToString[NumberForm[#, 2]] &, vals]],
  Plot[V[r], {r, 0, 10}, PlotStyle -> {Dashed, Black}],
  PlotRange -> {{0, 10}, {-50, 10}},
  AxesOrigin -> {0, 0},
  AxesLabel -> {"r (fm)", "Wavefunction Amplitude / Potential (MeV)"}
]

完整修正代码

(* 氧核Woods-Saxon势参数 *)
V0 = 50; R = 1.2*16^(1/3); a = 0.6;
ℏ = 1; m = 1; (* 自然单位 *)
l = 0; (* 求解s波,l=0 *)

(* 定义径向薛定谔算子 *)
V[r_] := (-V0)/(1 + Exp[(r - R)/a])
\[ScriptCapitalL] = -ℏ²/(2m) u''[r] + (V[r] + ℏ²l(l+1)/(2m r²)) u[r];

(* 求解前10个特征值和特征函数 *)
{vals, funs} = NDEigensystem[{\[ScriptCapitalL], u[0] == 0, u[10] == 0}, u[r], {r, 0, 10}, 10];

(* 绘制结果 *)
Show[
  Plot[Evaluate[funs], {r, 0, 10}, PlotLegends -> Map["E = " <> ToString[NumberForm[#, 2]] &, vals]],
  Plot[V[r], {r, 0, 10}, PlotStyle -> {Dashed, Black}],
  PlotRange -> {{0, 10}, {-50, 10}},
  AxesOrigin -> {0, 0},
  AxesLabel -> {"r (fm)", "Wavefunction Amplitude / Potential (MeV)"}
]

内容的提问来源于stack exchange,提问作者Kol

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 20:23:10