Рассмотрим следующий фрагмент кода Mathematica:
a := {1, 2, 3};
f[n_, a_] := Sum[a[[j]], {j, 1, n}];
Outer[f, {3}, (a)]
Цель состоит в том, чтобы просто оценить f[3,a]
.Но я получаю следующие сообщения об ошибках:
During evaluation of In[16]:= Part::partd: Part specification 1[[1]] is longer
than depth of object. >>
During evaluation of In[16]:= Part::partd: Part specification 1[[2]] is longer
than depth of object. >>
During evaluation of In[16]:= Part::partd: Part specification 1[[3]] is longer
than depth of object. >>
During evaluation of In[16]:= General::stop: Further output of Part::partd will
be suppressed during this calculation. >>
Out[16]= {{1[[1]] + 1[[2]] + 1[[3]], 2[[1]] + 2[[2]] + 2[[3]],
3[[1]] + 3[[2]] + 3[[3]]}}
Таким образом, очевидно, что Outer разделяет входную переменную списка и обрабатывает ее компоненты отдельно.
У меня вопрос, как я могу связать компонентывместе в окружении Outer
?Большое спасибо!