Sie sind auf Seite 1von 5

UNIDAD 1

ACTIVIDAD 2

Alumno: Sara Donahí Rodríguez Avilés


Matrícula: ES172009628
Grupo: MT-MANU1-1902-B2-001
Asignatura: Análisis Numérico
Docente: Dr. Alejandro Salazar Guerrero
Actividad 2. Modelación matemática

1. Como describimos en la sección de Modelación Matemática el hacer un modelo


implica observar un fenómeno y traducirlo a lenguaje matemático. Esta traducción
no es sencilla de automatizar, es decir, puede ser muy personal y variar de persona
a persona, pero en esa sección leíste un bosquejo de cómo hacerlo. A continuación,
implementaremos en Octave como se modela el tiro parabólico.

La ecuación que describe el tiro parabólico desde el origen es:


𝑔
ℎ(𝑡)=− 2𝑡2+𝑣𝑡

donde 𝑔=9.8 𝑚/𝑠2 y 𝑣 es la velocidad inicial del cuerpo proyectado.

La tarea es crear una función en Octave que recibe dos parámetros y regresa un escalar que
representará la altura del proyectil en cada tiempo 𝑡. Deberás mostrar la trayectoria ℎ(𝑡) seguida
para los siguientes valores de 𝑣 y vectores 𝑡

V Vectores de T
10 (0,10,100)
25 (0,20,50)
100 (0,50,300)

Para definir la serie de valores donde aplicarás tu función, es decir, todos los valores 𝑡 tienes
que hacer uso de la función linspace de la siguiente manera

>>> t = linspace(0,10,100)

Que quiere decir que 𝑡 es un vector con valores reales entre 0 y 10 con 100 puntos
distribuidos equidistantemente

Recuerda por cada función debes crear un archivo que se llame igual que la función, pero
con extensión .m y en una carpeta de tu elección.

Tip: Para definir una función, llamada funcX, de n parámetros en Octave la sintaxis es la
siguiente

function y = funcX(n1,n2,…,nk)

Concretamente una función de dos parámetros 𝑥,𝑦 se define como


function y = funcX(x,y)
Tip 2: Octave permite el uso de operaciones puntuales, es decir, extiende la aplicación de la
suma, producto y división (entre otras) a vectores, lo que significa que puedes sumar dos
vectores de manera implícita de la siguiente forma. Supongamos que X e Y son vectores,

>>> Z = X*.Y

El operador punto (.) le indica a Octave que tiene que multiplicar el elemento i-ésimo de X
por el elemento i-ésimo de Y y construir al mismo tiempo el vector Z de tal forma que

Z(i) = X(i) * Y(i)

Si tenemos la función funcM que es una función que recibe un solo parámetro y regresa un
escalar, entonces podemos aplicarla a todo el vector X de la siguiente forma

Z = funcM(X)
Código:

clc;
clear all;

v = input('Proporcione la velocidad: ');


fprintf('\n');
beta = input('Proporcione el angulo de la velocidad: ');
fprintf('\n');
theta = input('Proporcione el angulo de la pendiente: ');
fprintf('\n');
yo = input('Proporcione y0: ');
fprintf('\n');
xo = input('Proporcione x0: ');
fprintf('\n');

% Operaciones y grafica

vy = v*sind(beta);
vx = v*cosd(beta);
t = (tand(theta)-vy/vx)*(-2*vx^2/9.81)*(1/vx);
ti = linspace(0,t);
x = xo + ti.*vx;
y = yo + ti.*vy -(ti.^2).*(9.81/2);
plot(x, y);
hold on;
xmax = xo + t*vx;
ymax = yo + t*vy -(t^2)*(9.81/2);
d = sqrt(xmax^2+ymax^2);
fprintf('Ymax es: ');
disp(ymax);
fprintf('\n');
fprintf('Xmax es: ');
disp(xmax);
fprintf('\n');
fprintf('D es: ');
disp(d);
fprintf('\n');
fprintf('Tiempo total es: ');
disp(t);
fprintf('\n');
xp = linspace(0,xmax);
yp = xp.*tand(theta);
plot(xp, yp);
hold on;

Imagen de la ejecución del código


Bibliografía
Ingeniería Matemática. (10 de junio de 2016). Obtenido de
https://mathengineering.blogspot.com/2016/06/disparo-parabolico-con-octave.html

mecánica, E. m. (30 de septiembre de 2017). Youtube. Obtenido de


https://www.youtube.com/watch?v=MxoQzk8dZdo

Das könnte Ihnen auch gefallen