ayuda con interpolacion
Alguien que tenga algo de interpólacion y ajuste de curvas, se los agradecere si pueden antes del jueves. Gracias de antemano
Es el dia de tu suerte:
#ifndef CurvaH
#define CurvaH
#include <math.h>
class Curva
{
public:
float calculo(float X[6],float Y[6], int num);
};
float Curva::calculo(float x[6],float y[6], int num)
{
int npx=num;
int npy=num;
float tmx=0;
float tmy=0;
float sum1=0;
float sum2=0;
/*Calculo de promedio de la columna*/
for(int i=1;i<=npx;i++)
{
tmx=tmx+x[i];
tmy=tmy+y[i];
}
float mx,my;
mx=tmx/npx;
my=tmy/npy;
/*Sumatorias*/
for(int i=1;i<=npx;i++)
{
sum1=(x[i]-mx)*(x[i]-mx)+sum1;
sum2=(x[i]-mx)*(y[i]-my)+sum2;
}
float k;
k=sum2/sum1;
return k;
}
#endif
esta es la clase que hice para interpolar "num" numeros de datos de una curva, lo llamas desde el programa principal con /* Calculo de las pendientes iniciales*/
k1=XY.calculo(X1,Y1,3);
3 es el nº de datos a tomar para la interpolación y x1 e y1 los valores discretos que toma para cada abcsisa...
salu2 ojala te sirva
#ifndef CurvaH
#define CurvaH
#include <math.h>
class Curva
{
public:
float calculo(float X[6],float Y[6], int num);
};
float Curva::calculo(float x[6],float y[6], int num)
{
int npx=num;
int npy=num;
float tmx=0;
float tmy=0;
float sum1=0;
float sum2=0;
/*Calculo de promedio de la columna*/
for(int i=1;i<=npx;i++)
{
tmx=tmx+x[i];
tmy=tmy+y[i];
}
float mx,my;
mx=tmx/npx;
my=tmy/npy;
/*Sumatorias*/
for(int i=1;i<=npx;i++)
{
sum1=(x[i]-mx)*(x[i]-mx)+sum1;
sum2=(x[i]-mx)*(y[i]-my)+sum2;
}
float k;
k=sum2/sum1;
return k;
}
#endif
esta es la clase que hice para interpolar "num" numeros de datos de una curva, lo llamas desde el programa principal con /* Calculo de las pendientes iniciales*/
k1=XY.calculo(X1,Y1,3);
3 es el nº de datos a tomar para la interpolación y x1 e y1 los valores discretos que toma para cada abcsisa...
salu2 ojala te sirva
