25 #include <QStringList>
28 #include "scaleditem.h"
44 static const int NumParMax = 20;
47 Type = UserType + Function
72 double parErrMod[NumParMax];
93 FunItem(
const KConfigGroup* plo,
const KUrl& urlPlo,
unsigned color = 0,
114 Symbol symbol = SolidLine,
double fx = 1,
double fy = 1,
116 double deltaX = 0,
bool visible =
true,
117 FillStyle fillStyle = NoBrush,
double xOffset = 0,
118 double yOffset = 0,
double relSize = 1);
132 static void calcTable(
const double* x,
double* values,
133 double (*func)(
double,
const double*),
134 const double* par,
int n,
QObject* parent = 0);
139 int calcTable()
const;
145 int calcTable(
bool logX)
const;
147 inline double deltaT()
const {
return m_deltaT; };
154 static bool errorStructChanged(
const DataErrorStruct& e1,
155 const DataErrorStruct& e2);
164 void exponent(
int& expX,
int& expY,
double& fx,
double& fy,
bool logX)
const;
172 void exportTable(
QTextStream& stream,
char separator,
char format,
173 int precision)
const;
195 const bool* bFit,
double* par,
198 double tol = 1e-14,
int itMax = 100,
LMFit* lm = 0,
199 double* chiSquare = 0,
double* corr = 0,
double* parErr = 0,
200 double* avgErr = 0,
QObject* parent = 0);
208 double (*funcY)(double,
const double*);
219 double (**func)(
double,
const double*));
230 void limits(
double& xMin,
double& xMax,
double& yMin,
double& yMax,
243 static bool parChanged(
const double* p1,
const double* p2);
251 static QString parToString(
const double* par,
char format,
int precision);
253 inline double*
parY() {
return m_parY; };
255 void setDashOffset();
260 inline void setDeltaT(
double deltaT) { m_deltaT = deltaT; };
267 bool setFuncY(
const KUrl& url,
const QString& name);
274 virtual void setPar(
int i,
double value,
bool yFunc =
true);
279 inline void setTMax(
double xMax) { m_tMax = xMax; };
284 inline void setTMin(
double xMin) { m_tMin = xMin; };
292 static void stringToPar(
const QString& s,
double* par);
294 inline double tMax()
const {
return m_tMax; };
296 inline double tMin()
const {
return m_tMin; };
298 const double* tValues()
const;
300 virtual int type()
const {
return Type; };
302 inline const KUrl&
urlY()
const {
return m_urlY; };
311 void writePlo(KConfigGroup* plo,
const KUrl& urlPlo,
bool absolute,
312 char format,
int precision)
const;
314 double* yValues()
const;
323 void paintCond(
QPainter* painter)
const;
327 double m_tMin, m_tMax, m_deltaT;
328 mutable double tMino, tMaxo, deltaTo;
329 mutable double (*funcYo)(double,
const double*);
330 double m_parY[NumParMax];
331 mutable double parYo[NumParMax];
Parameter fit class.
Definition: lmfit.h:42
FillStyle
Fill styles.
Definition: kplitem.h:47
virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)=0
Symbol
Symbol types.
Definition: kplitem.h:85
const QLibrary * libY() const
Returns pointer to library for y function.
Definition: funitem.h:221
static bool limits(double &xMin, double &xMax, const double *values, int n)
Calculates minimum and maximum values of an array.
double deltaT() const
Returns argument step size.
Definition: funitem.h:147
static void exponent(double a, int &iExp, double &f)
Calculates normalization factor.
void setTMax(double xMax)
Sets maximum argument value.
Definition: funitem.h:279
void setTMin(double xMin)
Sets minimum argument value.
Definition: funitem.h:284
virtual int type() const
Returns specific QGraphicsItem type number.
Definition: funitem.h:300
const KUrl & urlY() const
Returns URL of y function library.
Definition: funitem.h:302
Function item class.
Definition: funitem.h:40
x column.
Definition: funitem.h:59
QString errModPath
Path of library containing error model function.
Definition: funitem.h:76
Data error structure.
Definition: funitem.h:53
virtual QRectF boundingRect() const =0
QString errModName
Name of error model function.
Definition: funitem.h:74
ErrorModelArgument
Error model function argument.
Definition: funitem.h:58
ErrorModelArgument errModArg
Error model function argument.
Definition: funitem.h:70
virtual QPainterPath shape() const
void writePlo(KConfigGroup *plo, bool visible) const
Writes into plot file.
Scaled item class.
Definition: scaleditem.h:24
double tMax() const
Returns maximum argument value.
Definition: funitem.h:294
QString nameY() const
Returns y function name.
Definition: funitem.h:233
double * parY()
Returns y function parameter array pointer.
Definition: funitem.h:253
void setDeltaT(double deltaT)
Sets argument step size.
Definition: funitem.h:260
Array item class.
Definition: arrayitem.h:36
double tMin() const
Returns minimum argument value.
Definition: funitem.h:296