Академический Документы
Профессиональный Документы
Культура Документы
abier anil
to lo
energizado por
Nivel
Este trabajo es bajo licencia 3.0 Licencia Creative Commons Reconocimiento-No comercial-Sin obras
derivadas.
www.openeering.com
Paso 1: Propósito de este tutorial
Es muy común en el área de ingeniería para resolver problemas no lineales
de estado estacionario.
// Ejemplo 1
deff ( 'res = fct 1 (x)', 'res = cos (x) -x')
La representación gráfica se da en la siguiente figura. x0 = 0.
xsol = fsolve (x0, fct 1)
x = linspace (-2,2,51)
FCOS = cos (x)
fx = x
SCF (1)
CLF (1)
plot (x, fcos, 'r-');
p = get ( "hdl"); p.children.thickness = 3; plot (x, fx,
'B-');
p = get ( "hdl"); p.children.thickness = 3;
(Codificación del
ejemplo)
La solución obtenida es: xsol = 0,7390851
// Ejemplo 2
En este ejemplo se resuelve el siguiente problema de 2 dimensiones
deff ( 'res = fct_2 (x) , [ 'Res (1) = x (2) -
(X (1) .A2 + 1) '; 'Res (2) = x (1) - (2 * x (2) -x (2)
.A2) / 3'])
SCF
(2)
CLF
(2)
x1 = linspace (-3,3,101)
La representación gráfica se da en la siguiente figura. La figura revela la y1 = x1.A2 + 1
presencia de dos soluciones. Dependiendo del punto inicial, el fsolve
función puede llegar a la primera o la segunda solución según lo informado y2 = linspace (-3,5,51)
x2 = (2 * y2-y2.a2) / 3
por el ejemplo.
parcela (x1, y1, 'r-');
p = get ( "hdl"); p.children.thickness = 3;
parcela (x2, y2, 'B-');
x0 = [1; 0]
xsol1 = fsolve (x0,
fct_2) res1 = fct_2
(xsol1)
(Codificación del ejemplo)
x0 = [-3; 8]
Las soluciones obtenidas son
xsol2 = fsolve (x0, fct_2)
• Xteórico = [0.3294085; 1,10851]
res2 = fct 2 (xsol2) ___________________________________
• xsol2 = [- 1.5396133; 3.3704093]
con
• res1 = 10A (-14) * [0,1332268; 0.0610623]
• res2 = 10A (-13) * [- 0.3375078; - 0.1310063]
Paso 6: ejemplo fsolve con solucionador incrustado
En este ejemplo se combinan el uso de la función fsolve para resolver un
problema de contorno utilizando el método de toma.
La idea es la de insertar la ecuación diferencial (ODE) solver (método de
disparo) ordinario dentro de la función fsolve la creación de una función
apropiada para ser resueltos. Este enfoque es bastante general ya que el
solucionador ODE puede ser visto como una función de la caja negro
Llamando a la función
externa f
Este problema de contorno se puede reducir a la siguiente problema inicial solucionador no Caja negra
ecuación diferencial lineal función
(Código de
Ejemplo)
(Solución inicial con s = - 3 0 y solución óptima con s = - 3
5,858547)
Paso 8: ajuste no lineal de mínimos cuadrados
No lineal de mínimos cuadrados es una técnica numérica utilizada cuando
tenemos n ecuaciones lineales en incógnitas. Estasignifica que, en
estos casos,
tenemos más ecuaciones que incógnitas. Este caso es muy común e
interesante y que surge, por ejemplo, cuando queremos ajustar los datos
con no lineal (y no polinómicas) ecuaciones.
de la siguiente ecuación
argumentos:
Las características del algoritmo son:
• x0: vector real de longitud n (valor inicial del argumento de la
• La función Isqrsolve se basa en el algoritmo de Levenberg-
función);
Marquardt;
• fct: externa (es decir, la función o de la lista o de cadena);
• Si no se proporciona la jacobiana se calcula una aproximación de • m: número entero, el número de funciones. m debe ser mayor que
diferencias orientadas hacia; o igual a n;
• fjac: externa (es decir, la función o de la lista o de cadena);
• Es un método iterativo, es decir, se parte de un valor de
• detener: Vector opcional
aproximación inicial x0 y luego se realiza una iteración obtener [Ftol, xtol, GTOL, maxfev, epsfcn, factor de] el valor
x1, y así sucesivamente; predeterminado es [1.d-8,1.d-8,1.d-5,1000,0,100]
• Sólo uno se encuentra una solución y esta solución depende de • diag: es una matriz de longitud n. diag debe contener entradas
la aproximación inicial x0 (cuenca de atracción). positivas que sirven como factores multiplicativos escala de
las variables;
• x: vector real (estimación final de la solución vector);
• v: vector real (valor de fct (x));
• Info: indicador de terminación
Para ejemplos y más detalles ver:
http://help.scilab.Org/docs/5.3.3/en EE.UU. / lsqrsolve.html
Paso 10: ejemplo Isqrsolve
En este ejemplo queremos estimar el parámetro de la siguiente función de
Gauss (fgauss)