У меня есть скрипт Function.m такой, что, например, когда я пишу TEST=Function(1,2)
, у меня есть TEST.x1=4
и TEST.x2=[5,6,7]
.Я хочу использовать fsolve
, чтобы помочь мне найти ввод.Если быть точным, я хочу определить функцию, скажем a=@(y)Function(1,y)-4
, чтобы при использовании [z,vector]=fsolve(@(y)a(y),5)
matlab мог помочь мне получить z=2
и vector=[5,6,7]
.
Я бы хотел ее решитьопределив ту же структуру New_Function.m, что и Function.m, так что он возвращает значения x1
, т. е. TEST=New_Function(1,2)
дает только TEST=4
.Затем я пишу new_a=@(y)New_Function(1,y)-4
и решаю z=fsolve(@(y)new_a(y),5)
и определяю new_vector=Function(1,z)
, чтобы я мог получить доступ к new_vector.x2
.
Я хочу знать, возможно ли выполнить мою задачу без определения нового сценария или внесения поправоксодержание в существующем скрипте.Как написать код?