Solving a complex, user defined function when one variable is known.
显示 更早的评论
I'm trying to simplify an overspecified system. In short, I have 4 input variables that determine 3 output variables that are calculated through a function F:
[y1,y2,y3] = F(x1,x2,x3,x4);
The function F is a series of matrix operations that includes some trigonometric functions, so it's definitely nonlinear. However, because of how this system is defined (the first three inputs are three angles for a gimbal joint), if I specify a value for any of the inputs, it becomes a square system and there is only one answer.
What I would like to do is write a function, let's call it T, such that:
T( known_x1, desired_y1, desired_y2, desired_y3 ) = solution for x2,x3,x4.
Unfortunately, the math in F is too complex to do this symbolically. I've tried writing an fsolve, but it's not working, and I've also thought about an fmincon in which I minimize the norm of the error.
I will also say that I'm trying to do this in order to simplify a larger optimization problem. Ultimately it tries to optimize all four of these variables, but to speed things up, I'd like to simplify down to one variable.
Can anyone advise on how to write the function T that I describe above?
Thanks, Matt
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Systems of Nonlinear Equations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!