Anonymous function of a series of nonlinear equations to accept vector input
2 次查看(过去 30 天)
显示 更早的评论
I have a series of nonlinear equations, written as an anonymous function handle that outputs a vector solution of each function and Im trying to input a vector of x1,x2,x3. For the sake of the the error in my code I simplified it dramatically, however I cannot seem to get the function to output my desired results.
f= @(x1,x2,x3) [x1.^3;x2.^2;x3.^2]
x=[1;1;1]
f(x')
"Invalid expression. When calling a function or indexing a variable, use parentheses.
Otherwise, check for mismatched delimiters"
1 个评论
Dyuman Joshi
2023-9-21
The function you have defined expects 3 inputs -
f= @(x1,x2,x3) [x1.^3;x2.^2;x3.^2]
But you have provided only 1 input, so it gives error
x=[1;1;1]
f(x')
I don't know how you about this error - "Invalid expression. When calling a function or indexing a variable, use parentheses. Otherwise, check for mismatched delimiters"
回答(1 个)
Star Strider
2023-9-21
Either:
f= @(x1,x2,x3) [x1.^3;x2.^2;x3.^2];
x=[1;1.2;1.3];
f(x(1),x(2),x(3))
or:
f= @(x) [x(1).^3;x(2).^2;x(3).^2];
x=[1;1.2;1.3];
f(x')
should work.
.
2 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Computations 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!