My problem has 60 variables (x1
to x60
) and here is the function:
f=(x1+x2+x3)*x1+(x2+x3+x4)*x2+...+(x58+x59+x60)*x58
I want to get the Hessian matrix of the function f
. However, because there are so many variables, I don't want to write them one by one for syms
and f
.
I know I can manually calculate the Hessian matrix of the function f
as the function is not too difficult. However, I occasionally need to change the form of the function, such as changing the function to (increase the number of variables in the brackets):
f=(x1+x2+x3+x4)*x1+(x2+x3+x4+x5)*x2+...+(x57+x58+x59+x60)*x57
Therefore, I don't want to manually compute the Hessian matrix of function f
as long as the function form changes. Is there any easier way to use syms
to write f
with these 60 variables in MATLAB so that I can use hessian
to get the Hessian matrix of f
?