Sei sulla pagina 1di 8

TRABAJO ANÁLISIS NUMÉRICO

Grupo D

Presentado por:
Juan Carlos Anaya Bohórquez
Código 1903241
Thomas Javier carrillo Basto
Código 2200773

Presentado a:
Dr. Elder Jesús Villamizar Roa

Universidad Industrial de Santander


Facultad de Ciencias
Escuela de Matemáticas
Bucaramanga
2022
MÉTODO SPLINES CÚBICOS

Pseudocódigo

Leer x, y
y = transponer(y)
x = transponer(x)
n = filas(x)
M_aux = [x(1, 1), y(1, 1)]
Para i = 2 Hasta 2 * (n – 2) Paso 2
M_aux(i, 1) = x(0.5 * i + 1, 1)
M_aux(i + 1, 1) = x(0.5 * i + 1, 1)
M_aux(i, 2) = y(0.5 * i + 1, 1)
M_aux(i + 1, 2) = y(0.5 * i + 1, 1)
Fin Para

M_aux(i + 1, 2) = y(0.5 * i + 1, 1)
M_aux(i + 2, 1) = x(n , 1)
M_aux(i + 2, 2) = y(n, 1)
n = filas(M_aux)
Para i = 0 Hasta n – 2 Paso 2
M1(i + 1, 1 + 2*i) = M_aux(i + 1, 1).^3
M1(i + 1, 2 + 2*i) = M_aux(i + 1, 1).^2
M1(i + 1, 3 + 2*i) = M_aux(i + 1, 1)
M1(i + 1, 4 + 2*i) = 1
M1(i + 2, 1 + 2*i) = M_aux(i + 2, 1).^3
M1(i + 2, 2 + 2*i) = M_aux(i + 2, 1).^2
M1(i + 2, 3 + 2*i) = M_aux(i + 2, 1)
M1(i + 2, 4 + 2*i) = 1
Fin Para

n = filas(x)
Para j = i + 2 Hasta n – 1 + i Paso 1
M1(j + 1, 1 + 4*(j – (i + 2))) = 3 * x(j – i, 1) ^2
M1(j + 1, 2 + 4*(j – (i + 2))) = 2 * x(j – i, 1)
M1(j + 1, 3 + 4*(j – (i + 2))) = 1
M1(j + 1, 5 + 4*(j – (i + 2))) = -3 * x(j – i, 1) ^2
M1(j + 1, 6 + 4*(j – (i + 2))) = -2 * x(j – i, 1)
M1(j + 1, 7 + 4*(j – (i + 2))) = -1
Fin Para

Para k = j + 1 Hasta n – 2 + j Paso 1


M1(k + 1, 1 + 4*(k – j -1)) = 6 * x(k –j + 1, 1)
M1(k + 1, 2 + 4*(k – j -1)) = 1
M1(k + 1, 5 + 4*(k – j -1)) = -6 * x(k – j + 1, 1)
M1(k + 1, 6 + 4*(k – j -1)) = -2 * x(j – i, 1)
Fin Para
M1(k + 2, 1) = 6 * x(1, 1)
M1(k + 2, 2) = 1
M1(k + 3, 4*(n – 1) - 3) = 6 * x(n, 1)
M1(k + 3, 4*(n - 1) - 2) = 1
Sz_M1 = filas(M1)
Sz_Maux = filas(M_aux)
b = ceros(1, Sz_M1)
Para i = 1 Hasta Sz_Maux
b(1, i) = M_aux(i, 2)
Fin Para
Mostrar M1
Mostrar b
Fin Programa
MÉTODO SPLINES CUADRÁTICOS

Pseudocódigo

Leer x, y
y = transponer(y)
x = transponer(x)
n = filas(x)
M_aux = [x(1, 1), y(1, 1)]
Para i = 2 Hasta 2 * (n – 2) Paso 2
M_aux(i, 1) = x(0.5 * i + 1, 1)
M_aux(i + 1, 1) = x(0.5 * i + 1, 1)
M_aux(i, 2) = y(0.5 * i + 1, 1)
M_aux(i + 1, 2) = y(0.5 * i + 1, 1)
Fin Para

M_aux(i + 2, 1) = x(n , 1)
M_aux(i + 2, 2) = y(n, 1)
n = filas(M_aux)
Para i = 1 Hasta n – 1 Paso 2
M1(i, 1 + 1.5*(i – 1)) = M_aux(i, 1).^2
M1(i, 2 + 1.5*(i – 1)) = M_aux(i, 1)
M1(i, 3 + 1.5*(i – 1)) = 1
M1(i + 1, i + 1.5*(i – 1)) = M_aux(i + 1, 1).^2
M1(i + 1, i + 1.5*(i – 1)) = M_aux(i + 1, 1)
M1(i + 1, i + 1.5*(i – 1)) = 1
Fin Para

n = filas(x)
Para j = i + 2 Hasta (i + 2) + (n – 2) – 1 Paso 1
M1(j, 1 + 3*(j – (i + 2))) = 2 * x(j – (i + 2) + 2, 1)
M1(j, 2 + 3*(j – (i + 2))) = 1
M1(j, 4 + 3*(j – (i + 2))) = -2 * x(j – (i + 2) + 2, 1)
M1(j, 5 + 3*(j – (i + 2))) = -1
Fin Para

M1(j + 1, 1) = 2 * x(1, 1)
M1(j + 1, 2) = 1
b = ceros(1, (2*n – 2) + (n – 2) + 1)
Para i = 1 Hasta (2*n – 2)
b(1, i) = M_aux(i, 2)
Fin Para
b = transponer(b)
Mostrar M_aux
Mostrar M1
Mostrar b
Fin Programa

Potrebbero piacerti anche