Matlab - Ajustar ecuaciones

 
Vista:
sin imagen de perfil
Val: 78
Ha disminuido 1 puesto en Matlab (en relación al último mes)
Gráfica de Matlab

Ajustar ecuaciones

Publicado por Milena (29 intervenciones) el 01/03/2020 15:16:52
Hola, quiero saber como se formula en matlab la optimización de ecuaciones...
Por ejmplo, si tengo dos matrices:

1
2
A=[0,14	0,31	0,4	0,42]
B=[0,1	0,3	0,5	0,6]

y necesito ajustarle esta ecuación:
A=a[1-exp(-c*B)]

en excel haciéndolo con solver, me da que a= 0,499605718 y c=3,19880456 ... cómo puedo hacer esto en matlab? algunas de las ecuaciones que tengo que hacer tienen restricciones.. como las incluyo en el proceso? y en lo posible que el ajuste sea por mínimos cuadrados!

De antemano agradezco si me pueden ayudar !
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 78
Ha disminuido 1 puesto en Matlab (en relación al último mes)
Gráfica de Matlab

Ajustar ecuaciones

Publicado por Milena (29 intervenciones) el 01/03/2020 19:16:23
Hola, lo pude resolver con un lsqnonlin, y cree la función con la ecuación en otro archivo... ahora mi duda es... al correr esa función, me muestra la respuesta en en Command Window pero no aparece almacenada en el WorkSpace, como hago para guardarla? es que necesito utilizar la respuesta en mi código general?
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 8.059
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Ajustar ecuaciones

Publicado por JOSE JEREMIAS CABALLERO (5779 intervenciones) el 09/03/2020 00:44:41
Podría poner lo que ha hecho para poder hacer los ajustes para que se vea en el woskspace de matlab.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 8.059
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Ajustar ecuaciones

Publicado por JOSE JEREMIAS CABALLERO (5779 intervenciones) el 11/03/2020 05:03:47
1
2
3
4
5
function enviar_datos_a_workspace
syms x
u=solve(x^2-x-7)
assignin('base','uu',u);
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.049
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Ajustar ecuaciones

Publicado por Daniel (334 intervenciones) el 01/03/2020 19:18:24
Hola,

Es igual que en Excel, solo que el Matlab en lugar de una celda hay que crear una función que devuelva el valor que se desea minimizar. Una vez se tiene esto se puede usar la función fminsearch para obtener el mínimo. Algo como esto:

1
2
3
4
5
6
7
8
A = [0.14	0.31	0.4	0.42];
B = [0.1	0.3	0.5	0.6];
 
fun = @(sol) sum(abs(A - sol(1) * (1 - exp(-sol(2)*B))));
 
sol = fminsearch(fun, [1, 1]);
 
sol(1) * (1- exp(-sol(2)*B)

Saludos,
Daniel Rodríguez
Analytics Lane
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar