Lait205 Ea U2 Iaar

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 11

Presentación: 

En un clúster de desarrollo científico se enfrentan problemas de


diversa índole. Como Licenciado en Tecnologías de la Información y
Comunicación se te asigna la responsabilidad de realizar los programas para
resolverlos. Esto deberás de hacerlo sin la necesidad de la compra de un
software costoso.

Los problemas matemáticos que debes resolver mediante métodos numéricos


son:

1. Raíces de ecuaciones para resolver explícitamente las ecuaciones con


parámetros definidos.

2. Sistemas de ecuaciones lineales algebraicas para determinar el valor o los


valores de una función de una variable independiente que correspondan al valor
óptimo de la función.

3. Ajustes de curvas e interpolación para ajustar curvas a un conjunto de datos


representados por puntos.

En esta unidad se te planteará un problema a resolver por un método numérico


como parte de tu responsabilidad laboral y entregarlos para su revisión.

Propósito: Programar los métodos para hallar los ceros o raíces de ecuaciones


a fin de interpretar el resultado de aplicar las técnicas para resolver diversos
problemas.

Indicaciones:

1. Lee con mucha atención el siguiente problema que se te ha asignado para


resolver temas de fricción en tubos del área de ingeniería mecánica y
aeroespacial:

Considerando que, para el flujo de líquidos y gases a través de sistemas de


enfriamiento, los parámetros de la resistencia al flujo en tales conductos están
determinados por un número adimensional que se llama factor de fricción (en
adelante denominado f). Para flujo turbulento, la ecuación de Colebrook
proporciona un medio para calcular el factor de fricción.
lOMoARcPSD|7755690

ACTIVIDAD INTEGRADORA: Programar los


métodos para hallar ceros o raíces de
ecuaciones

1. DISEÑA EL PROGRAMA CONSIDERANDO LO SIGUIENTE:

Una ecuación de tercer grado es del tipo:

El Método de Newton-Raphson recordaras tiene la siguiente forma y es iterativo:

2. DESARROLLA el programa de forma paramétrica para resolver por medio del Método de
Newton-Raphson cualquier polinomio de tercer grado.
lOMoARcPSD|7755690

Nota: No importa el lenguaje de programación que utilices, lo importante es que realice lo


solicitado.

Los parámetros de entrada son los siguientes:

Ecuación: En forma de cadena (string) de la siguiente forma:

En donde a, b, c, d son valores enteros y sólo considera sumas.

Para representar la ecuación:

La cadena por ingresar en el programa es:

X: Valor inicial de tipo entero.

N: Número de iteraciones que realizará el programa.

Los parámetros de salida son:

X: Valor final de X al término de las N iteraciones del programa.

Fx: Es el valor de la ecuación al sustituir el valor de X.

Nota: Debe ser casi cero si el Método fue divergente.

3.Considerando que, para el flujo de líquidos y gases a través de sistemas de enfriamiento,


los parámetros de la resistencia al flujo en tales conductos están determinados por un número
adimensional que se llama factor de fricción (en adelante denominado f). Para flujo turbulento,
la ecuación de Colebrook proporciona un medio para calcular el factor de fricción.
Donde:

Donde:
lOMoARcPSD|7755690

En la siguiente actividad daremos solución por el planteamiento descrito anteriormente y


explicaremos paso por paso como resolver el problema.

El Número de Reynolds también sirve como criterio de si el flujo es turbulento:

Se busca encontrar el valor de f para flujo de aire por un tubo liso y delgado, considerando los
siguientes valores:

El programa que usaremos será zinjai que usa un lenguaje de programación C++
#include<iostream>

#include<iomanip>

#include<math.h>

#include<stdlib.h>

/* Se define la ecuación con la expresión que

se identifica a la función, con esto el

programa encuentra nuestro punto de

partida descrito en el método de Newton-

Raphson */

#define f(x) 1*x*x*x + 2*x + 5

/* En la segunda parte del programa se define la derivada de la

función la cual esta definida en la parte de arriba, con esto se

permite al programa el segundo requisito establecido

nuevamente por el método de Newton-Raphson*/

#define g(x) 3*x*x + 2

using namespace std;

int main()

{ float x0, x1, f0, f1, g0, e; int step = 1, N;

cout<< setprecision(6)<< fixed; /*

Introducción de las entradas: */

cout<<"Digite el intervalo inicial: ";


lOMoARcPSD|7755690

cin>>x0; cout<<"Digite la

tolerancia: ";

cin>>e; cout<<"Número de

iteraciones: "; cin>>N;

/* Nombre del método: */ cout<<"Método de

Newton Raphson"<< endl; do

g0 = g(x0);

f0 = f(x0);

if(g0 == 0.0)

cout<<"ERROR.";

exit(0);

} x1 = x0 - f0/g0; cout<<"Iteracion-"<< step<<":\t x = "<<

setw(10)<< x1<<" y f(x) = "<< setw(10)<< f(x1)<< endl; x0 =

x1; step = step+1; if(step > N)

cout<<"NO CONVERGE";

exit(0);

} f1 =

f(x1); }wh

ile(fabs(f

1)>e);

cout<<

endl<<"L
lOMoARcPSD|7755690

a raíz es

la

siguiente

: "<< x1;

return 0;

A continuación, se describe el Código, en primera instancia tenemos las librerías en lenguaje


C++

Que usaremos, en particular es math.h que permite el uso de expresiones algebraicas, así
como la ejecución de operaciones. En la segunda parte nos encontramos con la definición de
las funciones, la original (), y su derivada, hacerlo es indispensable para la ejecución de las
operaciones.

Así el programa imprimirá en la pantalla las indicaciones de digitalización, lectura y guardado


de nuestro programa primero tenemos la digitalización del intervalo inicial que representa
nuestro punto de partida (la primera aproximación), posteriormente tenemos la digitación de
la tolerancia o el margen de error deseado, por último, tenemos la digitación del número de
iteraciones que deseamos realizar. Cuando el usuario digite los valores, el programa los
guardará en las variables x0, e y N, respectivamente.

Es importante establecer una condición. Si la derivada es igual a 0, es programa resaltará un


error, ¿por qué?, porque si una división el denominador es 0 se trataría de una operación
indeterminada.
lOMoARcPSD|7755690

Es cuando el programa analiza la siguiente formula:

Con este Código:

El programa mostrará el resultado de las iteraciones y el resultado de la aproximación final.


de esta manera, es como nuestro programa funciona para cualquier función cuadrática que
queramos resolver. En las siguientes capturas de pantalla mostraremos las soluciones a las
tres funciones descritas en la actividad integradora de métodos numéricos:

1. ()=3+2+5

El Código es el siguiente:
lOMoARcPSD|7755690

Y la resolución es la siguiente

2. ()=63+32+7+9 Su

Código es el siguiente:
lOMoARcPSD|7755690

Y su solución es la siguiente:
lOMoARcPSD|7755690

3. ()=3+9

Su Código es el siguiente:
lOMoARcPSD|7755690

Su solución es:

Referencias:

Solución aproximada de ecuaciones de una variable https://www.youtube.com/watch?

v=287sBUviefs http://www.ehu.eus/~mepmufov/html/Parte2.pdf

También podría gustarte