Я хочу взять производную функции омега по направлению в точке p в направлении V:
omega:x*y*z*z;
p:[2,3,-1];
V:[1,2,3];
p2:p+t*V;
sp:[x=p[1],y=p[2],z=p[3]];
sp2:[x=p2[1],y=p2[2],z=p2[3]];
deltaomega:subst(sp2,omega)-subst(sp,omega);
slope:ratsimp(deltaomega/t);
gVomega:limit(slope,t,0);
Это работает, но две замены кажутся немного хакерскими. Есть ли лучший способ сказать «оценить омегу в p и p + t * V»?
Я знаю, что есть лучшие способы сделать это! Я хочу иметь возможность сделать это из первых принципов (потому что я имею в виду более сложные версии, для которых нет встроенных модулей).