You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.2 KiB
C
37 lines
1.2 KiB
C
|
1 month ago
|
// Fit.h: interface for the CFit class.
|
||
|
|
//
|
||
|
|
//////////////////////////////////////////////////////////////////////
|
||
|
|
|
||
|
|
#if !defined(AFX_FIT_H__41DC17A4_1A37_4320_A81F_CDBF720798D0__INCLUDED_)
|
||
|
|
#define AFX_FIT_H__41DC17A4_1A37_4320_A81F_CDBF720798D0__INCLUDED_
|
||
|
|
|
||
|
|
#if _MSC_VER > 1000
|
||
|
|
#pragma once
|
||
|
|
#endif // _MSC_VER > 1000
|
||
|
|
|
||
|
|
#include "Vector.h"
|
||
|
|
|
||
|
|
//extern double GetFun(int i,double x,double y);
|
||
|
|
|
||
|
|
class CFit : public CVector
|
||
|
|
{
|
||
|
|
void GetMatrix(double * &matrix,double x, double y, double z, double (__cdecl *GetFun )(int m,double x,double y));
|
||
|
|
public:
|
||
|
|
double Value(double x, double y, double (__cdecl *GetFun )(int m,double x,double y));
|
||
|
|
void Write(CString m_input,CString m_output, double (__cdecl *GetFun )(int m,double x,double y));
|
||
|
|
void Play(CString name, double (__cdecl *GetFun )(int m,double x,double y));
|
||
|
|
void Play(int total, double *x, double *y, double *z, double (__cdecl *GetFun )(int m,double x,double y));
|
||
|
|
CFit();
|
||
|
|
virtual ~CFit();
|
||
|
|
};
|
||
|
|
|
||
|
|
class CFitNonLinear : public CFit
|
||
|
|
{
|
||
|
|
public:
|
||
|
|
CFitNonLinear(void);
|
||
|
|
~CFitNonLinear(void);
|
||
|
|
int GaussNewton(int total, double* x, double* y, double (__cdecl *FunctionDifferentiation )(int m,double a));
|
||
|
|
};
|
||
|
|
|
||
|
|
#endif // !defined(AFX_FIT_H__41DC17A4_1A37_4320_A81F_CDBF720798D0__INCLUDED_)
|