Я хотел бы оценить многомерную функцию в точке, возвращаемой решателем:
F=x*y+x*y*z-2*y*z
solutions=nonlinsolve([diff(F,x),diff(F,y),diff(F,z)],[x,y,z])
, которая дает
⎧⎛ 2⋅z ⎞⎫
⎨⎜─────, 0, z⎟⎬
⎩⎝z + 1 ⎠⎭
Теперь я хочу оценить F
в этой точке,но я не нахожу удобного способа использования результата из nonlinsolve
с subs
или способа создания словаря из Symbol: point
пар из результата решателя.
EDIT - После вопроса я рассмотрел следующее: одной возможностью было бы построить с циклом по переменным словарь {x:s[0],y:s[1],z:s[2]}
, где s
равен solutions.args[0]
, для вызова:
F.subs({x:s[0],y:s[1],z:s[2]})
Однако я не знаю, как перебирать имена переменных из данных [x,y,z]
, чтобы получить это. Конец редактирования
Есть предложения?