ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Evidencia 3 metodos numericos


Enviado por   •  4 de Marzo de 2019  •  Trabajos  •  1.410 Palabras (6 Páginas)  •  490 Visitas

Página 1 de 6

En esta tercera evidencia se hará un programa que resuelva un problema de tiro libre tomando en consideración la fricción del viento.

  1. Investiga cuál es la ecuación diferencial que modela la trayectoria de un proyectil, considerando la fricción del aire.
  2. Resuelve esta ecuación considerando un terreno plano, una gravedad constante de 9.81m/s2 y el viento sin movimiento. Los casos para los que los debes resolver son para un tiro a 10°, 30°, 45° y 90° con una velocidad inicial de 20 m/s.
  3. El programa debe de arrojar cuál es la posición final del proyectil, así como su velocidad final.
  4. Se debe buscar en qué ángulo el proyectil alcanza la mayor distancia.

Resultados:

Un proyectil de masa m que se dispara desde el origen con velocidad v0, haciendo un ángulo θ0 con la horizontal

Si despreciamos el empuje, las fuerzas que actúan sobre el cuerpo de masa m son:

  • El peso mg
  • La fuerza de rozamiento Fr, que es sentido contrario al vector velocidad (tangente a la trayectoria). →Fr=−mb→v

Para poder calcular el tiro parabólico obtuvimos las siguientes ecuaciones para x y y:

[pic 1]

Para poder calcular el tiempo (t) despejamos de la ecuación en x y obtuvimos la siguiente ecuación:

[pic 2]

En un simulador de lanzamiento de proyectiles corrimos el programa demostrando cuanto alcance tiene el proyectil lanzándolo a diferentes ángulos

tal como en esta imagen a una velocidad inicial de 20 m/s demuestra que el ángulo que mas alcance tiene el proyectil es a los 45 grados.

[pic 3]

[pic 4]

A continuación de plantea el siguiente código en lenguaje C# para demostrar que el ángulo que mas alcance tiene es el de 45 grados.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace ConsoleApplication1

{

    class Program

    {

        static void Main(string[] args)

        {

 

            double vi = 20, al, an, g = 9.81, t, b=0.01, vfinal;

            Console.WriteLine("Escribe los siguientes angulos 10°, 30°, 45° y 90°, en cada apartado");

            Console.WriteLine("Dame un angulo");

            an = double.Parse(Console.ReadLine());

            al = (vi * vi) * Math.Sin(2 * (an * Math.PI / 180)) / g;

            Console.WriteLine("El alcance es: " + al);

            t = ((-1 / b) * (Math.Log(1 - ((b * al) / (20 * Math.Cos(an))))));

            Console.WriteLine("El tiempo es: " + t);

           

            vfinal=(20 * Math.Cos(an))*Math.Exp(-b*t);

            Console.WriteLine("La velocidad final es: " + vfinal);

            Console.ReadLine();

            {

                Console.WriteLine("Dame un angulo");

                an = double.Parse(Console.ReadLine());

                al = (vi * vi) * Math.Sin(2 * (an * Math.PI / 180)) / g;

                Console.WriteLine("El alcance es: " + al);

                t = ((-1 / b) * (Math.Log(1 - ((b * al) / (20 * Math.Cos(an))))));

...

Descargar como (para miembros actualizados)  txt (4.9 Kb)   pdf (156.3 Kb)   docx (58.8 Kb)  
Leer 5 páginas más »
Disponible sólo en Clubensayos.com