viernes, 20 de enero de 2012

método de LAGRANGE

‎/*
clase base del método de LAGRANGE
*/

public class Lagrange {

private Array<Double> X = new Array<Double>();
private Array<Double> fX = new Array<Double>();

public void add(double x, double fx) {
this.X.add(x);
this.fX.add(fx);
}

public double V(int sub,double x) {
double producto = 1;
for (int k = 0; k < X.size(); k++) {
if (x != X.get(k) && k!=sub ) {
producto *= (x - X.get(k));
}
}
return producto;
}

public double g(double x) {
Array<Double> V = new Array<Double>();
double sumatoria=0;
for (int i = 0; i < fX.size(); i++) {
sumatoria += (V(i,x)/V(i,X.get(i)))*fX.get(i);
}
return sumatoria;
}
}

1 comentario: