Всем привет. Есть ли у кого идеи как мне разрешить довольно простую, казалось бы, задачку:
В Wolfram Mathematica 6.0 задана функция Func:
Func[x_, y_, t_] := x + y*Sin[t];
Требуется задать функцию DFunc[x_, y_, t_] , являющейся частной производной функции Func по t. По идее, это записывается так:
DFun[x_, y_, t_] := D[Fun[x, y, t], t];
И для буквенных выражений x=a; y=b; t=c; все работает и выдается b Cos[c]. Но если t=10, выдается ошибка: "General: 10 is not a valid variable" и частная производная берется не по t, а по '10'.
Вопрос: так как же мне задать функцию DFunc[x_, y_, t_] , являющейся частной производной функции Func по t, чтобы потом подставлять в нее численные значения?
На самом деле задаваемая функция более громоздкая, поэтому вариант "прописать частную производную ручками" не подходит.
pitrik2
чот я не опнимаю
а ты не можешь функции передать параметр?
DFun[x_, y_, t_] := D[Fun[x, y, DX], DX] [t];
nomad
Задачка разрешилась следующим образом:
DFun[x_, y_, t_] := ReleaseHold[D[Func[x, y, Hold[t]], Hold[t]]];
Всем, проявившим интерес, спасибо
nomad
Всем привет. Есть ли у кого идеи как мне разрешить довольно простую, казалось бы, задачку:В Wolfram Mathematica 6.0 задана функция Func:
Требуется задать функцию DFunc[x_, y_, t_] , являющейся частной производной функции Func по t. По идее, это записывается так:
И для буквенных выражений x=a; y=b; t=c; все работает и выдается b Cos[c]. Но если t=10, выдается ошибка: "General: 10 is not a valid variable" и частная производная берется не по t, а по '10'.
Вопрос: так как же мне задать функцию DFunc[x_, y_, t_] , являющейся частной производной функции Func по t, чтобы потом подставлять в нее численные значения?
На самом деле задаваемая функция более громоздкая, поэтому вариант "прописать частную производную ручками" не подходит.