View
34.706
Download
3
Category
Preview:
DESCRIPTION
Métodos Numéricos 01.
Citation preview
Parte II.Métodos Numéricos
1. Modelos matemáticos
Un modelo matemático se define como una formulación o unaecuación que expresa las características esenciales de un sistemafísico o de un proceso en términos matemáticos. En general:
( ) ( ) ( )⎥⎥⎦
⎤
⎢⎢⎣
⎡=⎟⎟
⎠
⎞⎜⎜⎝
⎛fuerza de FuncionesParámetros
ntesindependieVariables
edependientVariable , ,
f
Caída libre de un objeto
FU Aplicando la segunda ley de Newton:
F = m·a → a = F / m
Sustituyendo:
mF
dtdv
=
La fuerza neta está dada por:F = FD + FUFD
FD = mgFU = -cvCombinando las ecuaciones, se obtiene:
Condicione inicial: v(0) = 0 m/sResolviendo la ecuación diferencial:
v(t) = ( 1-e )
vmcg
dtdv
−=
g·mc
-(c/m)·t
Los métodos numéricos nos permiten resolver la ecuación diferencial mediante operaciones aritméticas:
∆v∆t =
v(t i+1) - v(t i) t i+1 - t i
dvdt
Pendiente aproximada
Pendiente verdadera
t i+1t i
v(t i+1)
v(t i)
∆v
∆t
Aproximando la primera derivada:
Reordenando:
v(t i+1) = v(ti) + [g - v(ti) ](t i+1 – ti)
Esta aproximación se conoce formalmente como método de Euler:
Valor nuevo = Valor anterior + pendiente x tamaño de paso
v(t i+1) - v(t i) t i+1 - t i≈dv
dt∆v∆t = [g - v(t i)] (t i+1 - t i )
cm=
cm
2. Programación y Software
Diagramas de Flujo
Flujo de la lógica del algoritmoLíneas de flujo
IteracionesCiclo de cuenta
InterrupciónFin de página
Confluencia de líneas de flujoUnión
Comparación, pregunta o decisiónDecisión
Entrada o salida de datosEntrada/Salida
Cálculos o manipulación de datosProceso
Inicio o final de un programaTerminal
FUNCIÓNNOMBRESÍMBOLO
Secuencia
Instrucción 1
Instrucción 1Instrucción 2Instrucción 3Instrucción 4
Instrucción 2
Instrucción 3
Instrucción 4
a. Diagrama de flujo b. Pseudocódigo
Selección
Condición?
Bloque verdadero
VerdaderoIF condición THEN
Bloque verdaderoENDIF
a. Diagrama de flujo b. Pseudocódigo
Condición?
Bloque verdadero
Verdadero
Bloque falso
FalsoIF condición THEN
Bloque verdaderoELSE
Bloque falsoENDIF
a. Diagrama de flujo b. Pseudocódigo
Condición 1?
Bloque 1
VerdaderoFalso
Condición 2?
Bloque 2Bloque 3
IF condición1 THENBloque1
ELSEIF condicion2Bloque2
ELSEBloque3
ENDIF
VerdaderoFalso
a. Diagrama de flujo b. Pseudocódigo
Expresiónde prueba
Bloque 1 Bloque 2 Bloque 3
SELECT CASE Expr. de pruebaCASE Valor1
Bloque1CASE Valor2
Bloque2CASE ELSE
Bloque3END SELECT
Valor1 Valor2 Otro
a. Diagrama de flujo b. Pseudocódigo
Repetición
Condición?
Bloque 1
Bloque 2
Verdadero
Falso
DO Bloque1IF Condición EXITBloque2
ENDDO
a. Diagrama de flujo b. Pseudocódigo
i = inicio
i=i + incr
i > fin?
Bloque
Falso
Verdadero
DO i=inicio,fin,incrementoBloque
ENDDO
a. Diagrama de flujo b. Pseudocódigo
EXCEL + VBA
IF / THENIF / THEN
IF condicion THENBloque verdadero
ENDIF
If b < > 0 Thenr1 = -c/b
End If
IF / THEN / ELSEIF / THEN / ELSE
IF condicion THENBloque verdadero
ELSEBloque falso
ENDIF
If a < 0 Thenb = Sqr(Abs(a))
Elseb = Sqr(a)
End If
MATLAB
EXCEL + VBA MATLAB
IF / THEN / ELSEIFIF / THEN / ELSEIF
IF condicion1 THENBloque1
ELSEIF condicion2Bloque2
ELSEBloque3
ENDIF
If class = 1 Thenx = x+8
ElseIf class < 1 Thenx = x-8
Elsex = x-64
End If
EXCEL + VBA MATLABCASECASESELECT CASE Expresión de prueba
CASE Valor1Bloque1
CASE Valor2Bloque2
CASE ELSEBloque2
END SELECT
Select Case a+bCase Is < -50
x = -5Case Is < 0
x = -5Case Else
x = 5End Select
MATLABEXCEL + VBADOEXITDOEXITDO
Bloque1IF Condición EXITBloque2
ENDDO
Doi = i+1If i >= 10 Then Exit Doj = i*x
LoopDOFORDOFORDOFOR i=inicio,fin,incremento
BloqueENDDO
For i=1 To 10 Step 2x = x+i
Next i
EXCEL + VBA MATLABIF / THENIF / THENIF condicion THEN
Bloque verdaderoENDIF
if b ~= 0 r1 = -c/b;
end
IF / THEN / ELSEIF / THEN / ELSEIF condicion THEN
Bloque verdaderoELSE
Bloque falsoENDIF
if a < 0b = sqr(abs(a));
elseb = sqr(a);
end
EXCEL + VBA MATLABIF / THEN / ELSEIFIF / THEN / ELSEIFIF condicion1 THEN
Bloque1ELSEIF condicion2
Bloque2 ELSE
Bloque3 ENDIF
if class = =1 x = x+8;
elseif class < 1 x = x-8;
elsex = x-64;
end
EXCEL + VBA MATLABCASECASESELECT CASE Expresión de prueba
CASE Valor1Bloque1
CASE Valor2Bloque2
CASE ELSEBloque2
END SELECT
Switch a+bcase 1
x = -5;case 2
x = -5 + (a+b)/10;case Else
x = 5;end
EXCEL + VBA MATLAB
DOEXITDOEXITDO
Bloque1IF Condición EXITBloque2
ENDDO
while (1)i = i+1;If i >= 10, break, endj = i*x;
endDOFORDOFORDOFOR i=inicio,fin,incremento
BloqueENDDO
for i=1 : 2 : 10x = x+i;
end
Problemas adicionales
3. Aproximaciones y errores de redondeo
Cifras significativas
Las cifras significativas de un número son aquellas que puedenutilizarse de forma confiable. Se trata del número de dígitos quepueden utilizarse con certeza, más uno estimado.
Exactitud y precisión
Aumenta la exactitudA
umen
ta la
pre
cisi
ón
Valor verdadero
Valor calculado o medido
(a)
(c)
(b)
(d)
Definiciones de error
Error verdadero
Et = Valor verdadero – valor aproximado
Error relativo fraccional verdadero
εt = Error verdaderoValor verdadero
Ejercicio. Cálculo de erroresSuponga que se tiene que medir la longitud de un puente y la de unremache, y se obtiene 4099 y 4.9 cm, respectivamente. Si los valoresverdaderos son 5000 y 5 cm respectivamente, calcule a. El error verdaderob. El error relativo porcentual verdadero en cada caso.
Error aproximado
Ea = Aproximación actual – Aproximación anterior
Error relativo fraccional aproximado
εa = Error aproximadoAproximación actual
A menudo no interesa el signo del error, sino mas bien que su valorabsoluto porcentual sea menor que una tolerancia porcentual prefijadaεs. En tales casos, los cálculos se repiten hasta que
| εa |< εs
Si se cumple con el siguiente criterio, se tendrá la seguridad de que elresultado es correcto en al menos n cifras significativas,
εs = (0.5 x 102-n) %
Ejercicio. Estimación del error con métodos iterativosLa función exponencial se calcula utilizando la serie,
Así cuántos más términos se le agreguen a la serie, la aproximaciónserá cada vez una mejor estimación del valor verdadero de ex. Empezando con el primer término ex = 1 y agregando término portérmino, calcule los errores: relativo porcentual verdadero ynormalizado a un valor aproximado. Estimar el valor de e0.5, hasta queel valor absoluto del error aproximado sea menor que un criterio deerror preestablecido con tres cifras significativas.
!nx...
!3x
!2xx1e
n32x +++++=
Errores de redondeo
Error originado por la omisión de cifras significativas de unvalor numérico.
Por ejemplo,πestimado = 3.1416πexacto = 3.1415926535….
Error de redondeo = | πestimado - πexacto |
Recommended