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

METODO DE NEWTON


Enviado por   •  2 de Junio de 2013  •  2.720 Palabras (11 Páginas)  •  374 Visitas

Página 1 de 11

Método de Newton

El algoritmo fue programado en Visual.net

El programa consiste en hallar las raíces de los polinomios de hasta tercer grado, dando como parámetros los coeficientes del polinomio, el valor a iniciar, y la tolerancia. Un esquema sería:

Ejercicio

Hallar una de las raíces del polinomio X3+2x2 +2x+3

Xi= valor inicial

Ea= tolerancia

La raíz es: -1.8105

Código del programa

namespace NewtonRaphson

{

public partial class Form1 : Form

{

public double[] vec=new double[10];//polinomio

public double[] vec1=new double[10];//polinomio derivada

double Xi,resp,Ea,grado,expo,eps;

int i;

public Form1()

{

InitializeComponent();

}

private void Form1_Load(object sender, EventArgs e)

{

}

private void btnCalcular_Click(object sender, EventArgs e)

{

listBox1.Items.Clear();

int k;

vec[0] = Convert.ToDouble(txtX3.Text);

vec[1] = Convert.ToDouble(txtX2.Text);

vec[2] = Convert.ToDouble(txtX1.Text);

vec[3] = Convert.ToDouble(txtX0.Text);

Xi =Convert.ToDouble(txtXi.Text);

Ea=Convert.ToDouble(txtEa.Text);

//*** obtiene la derivada del polinomio ***

grado = 3;

expo = grado;

for (i = 0; i <= grado; i++)

{

vec1[i] = expo * vec[i];

expo--;

}

k = 0;

do

{

eps = Math.Abs(Evaluar1(Xi) / Evaluar2(Xi));

resp = Xi - Evaluar1(Xi) / Evaluar2(Xi);

listBox1.Items.Add(" " +k + " " + Xi);

k++;

Xi = resp;

} while (eps > Ea);

//*********

}

public double Evaluar1(double x)

{

double expo = grado;

double suma1 = vec[Convert.ToInt32(grado)];

for (i = 0; i < grado; i++)

{

suma1 += vec[i] * Math.Pow(x, expo);

expo--;

}

return suma1;

}

public double Evaluar2(double x)

{

double expo = grado-1;

double suma2 = vec1[Convert.ToInt32(grado-1)];

for (i = 0; i < grado-1; i++)

{

suma2 += vec1[i] * Math.Pow(x, expo);

expo--;

}

return suma2;

}

private void btnCerrar_Click(object sender, EventArgs e)

{

Close();

}

private void btnNuevo_Click(object sender, EventArgs e)

{

txtEa.Clear();

txtX0.Clear();

txtX1.Clear();

txtX2.Clear();

txtX3.Clear();

txtXi.Clear();

txtX3.Focus();

listBox1.Items.Clear();

}

}

}

Campos Vectoriales

El algoritmo fue programado en Visual Basic

El programa consiste en dibujar el campo vectorial dando puntos en el eje x y y en donde los parámetros son los coeficientes de la ecuación del campo vectorial, longitud del plano.

Ejercicio

...

Descargar como (para miembros actualizados)  txt (8.7 Kb)  
Leer 10 páginas más »
Disponible sólo en Clubensayos.com