How do I create a series of variables (V0, V1, ...Vn) which act as independent variables in conjunction with a series of sums?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Domantas Laurinavicius
el 1 de Feb. de 2021
Editada: Domantas Laurinavicius
el 4 de Feb. de 2021
Basically, I have a symsum which I intend on feeding into a fittype() function.
The fittype is of the form (V0/2) + (V1/2)*cos(1*x) + (V2/2)*cos(2*x) +... (Vn/2)*cos(n*x) where each Vn is an independent variable in a non-linear least squares.
Those Vn variables are going into a matrix so the values need to be extractable, right now I'm using coeffvalues(fitresult) or manually getting them out with fitresult.V0, V1 etc (that could be a question on its own).
I have the sum of cos funcs
syms x n
Func = symsum((1/2)*cos(n*x),n,[1 5])
but I can't figure out how to (1) create an array of variables V0:Vn and outputting them as variables and (2) how to combine those with a symsum output into the fittype given above.
0 comentarios
Respuesta aceptada
Chaitanya Mallela
el 4 de Feb. de 2021
Editada: Chaitanya Mallela
el 4 de Feb. de 2021
fittype function accepts character array as input argument but the symsum function gives symbolic variable. To apply fittype to this function you need to split the symsum expression into terms and convert them to character array and generate independent variable Vn as coefficients to fittype function.
syms x n
Func = cell2sym(children(symsum((1/2)*cos(n*x),n,[1 5])));
g = fittype(arrayfun(@char,Func,'UniformOutput',false),'coefficients',arrayfun(@char,sym('V',[1,5]),'UniformOutput',false))
1 comentario
Domantas Laurinavicius
el 4 de Feb. de 2021
Editada: Domantas Laurinavicius
el 4 de Feb. de 2021
Más respuestas (0)
Ver también
Categorías
Más información sobre Linear and Nonlinear Regression en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!