Convert a function from mathematica to MATLAB
古いコメントを表示
My question is how to write the following function that I have in Mathematica in MATLAB? Here is the function:
\[Gamma] =
Join[Table[{Riffle[Range[0, -\[ScriptL]0, -1],
Range[\[ScriptL]0]][[i]], 1}, {i, 1, 2 \[ScriptL]0 + 1}],
Table[{Riffle[Range[0, -\[ScriptL]0, -1],
Range[\[ScriptL]0]][[i]], -1}, {i, 1, 2 \[ScriptL]0 + 1}]];
factorFxn[\[ScriptL]_, m1_, m2_, p1_, p2_] :=
(If[\[Gamma][[m1, 2]] == \[Gamma][[p1, 2]] && \[Gamma][[m2,
2]] == \[Gamma][[p2, 2]],
If[\[Gamma][[p1, 1]] - \[Gamma][[m1, 1]] == \[Gamma][[m2,
1]] - \[Gamma][[p2, 1]],
Sum[(2 \[ScriptL] + 1)^2 Sum[
If[\[Gamma][[p1, 1]] - \[Gamma][[m1, 1]] ==
mval && \[Gamma][[m2, 1]] - \[Gamma][[p2, 1]] ==
mval, (-1)^(\[Gamma][[m1, 1]] + \[Gamma][[m2, 1]] +
mval) ThreeJSymbol[{\[ScriptL], -\[Gamma][[m1,
1]]}, {\[ScriptL], \[Gamma][[p1,
1]]}, {\[ScriptL]temp, -mval}] \
ThreeJSymbol[{\[ScriptL]temp,
mval}, {\[ScriptL], -\[Gamma][[m2,
1]]}, {\[ScriptL], \[Gamma][[p2,
1]]}] ThreeJSymbol[{\[ScriptL], 0}, {\[ScriptL],
0}, {\[ScriptL]temp, 0}]^2,
0], {mval, -\[ScriptL]temp, \[ScriptL]temp}], \
{\[ScriptL]temp, 0, 2 \[ScriptL]}], 0]
, 0] -
If[\[Gamma][[m1, 2]] == \[Gamma][[p2, 2]] && \[Gamma][[m2,
2]] == \[Gamma][[p1, 2]],
If[-\[Gamma][[p1, 1]] + \[Gamma][[m2,
1]] == -\[Gamma][[m1, 1]] + \[Gamma][[p2, 1]],
Sum[(2 \[ScriptL] + 1)^2 Sum[
If[-\[Gamma][[p1, 1]] + \[Gamma][[m2, 1]] ==
mval && -\[Gamma][[m1, 1]] + \[Gamma][[p2, 1]] ==
mval, (-1)^(\[Gamma][[m1, 1]] + \[Gamma][[m2, 1]] +
mval) ThreeJSymbol[{\[ScriptL], -\[Gamma][[m1,
1]]}, {\[ScriptL], \[Gamma][[p2,
1]]}, {\[ScriptL]temp, -mval}] \
ThreeJSymbol[{\[ScriptL]temp,
mval}, {\[ScriptL], -\[Gamma][[m2,
1]]}, {\[ScriptL], \[Gamma][[p1,
1]]}] ThreeJSymbol[{\[ScriptL], 0}, {\[ScriptL],
0}, {\[ScriptL]temp, 0}]^2,
0], {mval, -\[ScriptL]temp, \[ScriptL]temp}], \
{\[ScriptL]temp, 0, 2 \[ScriptL]}], 0]
, 0] );
1 件のコメント
Walter Roberson
2021 年 5 月 22 日
編集済み: Walter Roberson
2025 年 1 月 21 日
回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Linear Algebra についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!