14 #include "FFpLib/FFpFatigue/FFpCycle.H"
58 void resize (
size_t nSpatialPoints);
59 bool unref (
bool clearReadOp =
false);
61 const std::string& oper,
int axis);
62 bool initAxes (
const std::vector<FFaResultDescription>& xdesc,
63 const std::vector<FFaResultDescription>& ydesc,
64 const std::string& xOper,
const std::string& yOper,
65 const std::pair<double,double>& tRange,
66 const std::string& tOper,
short int end1);
82 std::string& errMsg,
double minX = 0.0,
double maxX =-1.0);
85 const std::vector<FFpCurve*>& compCurves,
86 const char** compNames,
bool clipXdomain,
87 std::string& message);
95 const std::string& cId, std::string& errMsg);
98 bool useScaledShifted,
const DFTparams& dft,
99 double& rms,
double& avg,
double& stdDev,
100 double& integral,
double& min,
double& max,
101 std::string& errMsg)
const;
103 double getDamage (
const RFprm& rf,
double toMPa,
const FFpSNCurve& sn);
114 double getValue (
double x,
bool& monotonX)
const;
118 bool clipX (
double Xmin,
double Xmax);
125 bool sample (
double start,
double stop,
double shift,
double scale,
126 bool subMean,
size_t n, std::vector<double>& yOut,
127 std::string& errMsg)
const;
Enum variables with text representations.
#define FFaEnumEntryEnd
Defines the end of an enum mapping definition.
Definition: FFaEnum.H:237
#define FFaEnumEntry(Value, Text)
Adds one entry to the current enum mapping definition.
Definition: FFaEnum.H:234
Classes that make up the core of a operation/transformation system.
Class representing a result variable description.
Definition: FFaResultDescription.H:31
Definition: FFpCurve.H:35
double Xrange
Definition: FFpCurve.H:150
size_t timeSamples
Definition: FFpCurve.H:152
bool initAxis(const FFaResultDescription &desc, const std::string &oper, int axis)
Definition: FFpCurve.C:186
void resizeReader(int axis, size_t n=0)
Definition: FFpCurve.C:102
bool replaceByIntegral()
Definition: FFpCurve.C:853
bool reversePoints()
Definition: FFpCurve.C:1278
friend std::ostream & operator<<(std::ostream &os, const PointData &)
Definition: FFpCurve.C:377
int getSpatialXaxisObject(size_t i) const
Definition: FFpCurve.C:277
bool unref(bool clearReadOp=false)
Definition: FFpCurve.C:115
std::vector< FFpCycle > cycles
Definition: FFpCurve.H:147
int numberOfSamples(double delta, double start, double stop) const
Definition: FFpCurve.C:982
bool combineData(int ID, const std::string &expression, const std::vector< FFpCurve * > &compCurves, const char **compNames, bool clipXdomain, std::string &message)
Definition: FFpCurve.C:612
std::pair< double, double > timeRange
Definition: FFpCurve.H:153
short int beamEndFlag
Definition: FFpCurve.H:156
double getXrange() const
Definition: FFpCurve.H:116
void resize(size_t nSpatialPoints)
Definition: FFpCurve.C:75
double getDamage(const RFprm &rf, double toMPa, const FFpSNCurve &sn)
Definition: FFpCurve.C:1173
bool loadTemporalData(double currentTime)
Definition: FFpCurve.C:400
bool clipX(double Xmin, double Xmax)
Definition: FFpCurve.C:139
bool loadSpatialData(double currentTime, const double epsT=0.0)
Definition: FFpCurve.C:444
double getValue(double x, bool &monotonX) const
Definition: FFpCurve.C:735
bool hasDataChanged() const
Definition: FFpCurve.H:107
double lastKey
Definition: FFpCurve.H:149
const std::pair< double, double > & getTimeRange() const
Definition: FFpCurve.H:69
RFprm lastRF
Definition: FFpCurve.H:148
std::string * rdOper[N_AXES]
Definition: FFpCurve.H:145
bool getCurveStatistics(bool entire, double start, double stop, bool useScaledShifted, const DFTparams &dft, double &rms, double &avg, double &stdDev, double &integral, double &min, double &max, std::string &errMsg) const
Definition: FFpCurve.C:1070
const std::vector< double > & getAxisData(int ax) const
Definition: FFpCurve.H:112
std::vector< PointData > reader[N_AXES]
Definition: FFpCurve.H:144
void clear()
Definition: FFpCurve.C:57
bool inDomain(double x) const
Definition: FFpCurve.C:723
bool loadFileData(const std::string &filePath, const std::string &channel, std::string &errMsg, double minX=0.0, double maxX=-1.0)
Definition: FFpCurve.C:561
bool findVarRefsAndOpers(FFrExtractor *extr, std::string &errMsg)
Definition: FFpCurve.C:303
bool useInitialXaxis
Definition: FFpCurve.H:155
~FFpCurve()
Definition: FFpCurve.H:53
void setDataChanged()
Definition: FFpCurve.C:128
TimeOp
Definition: FFpCurve.H:39
@ AMax
Definition: FFpCurve.H:39
@ Min
Definition: FFpCurve.H:39
@ None
Definition: FFpCurve.H:39
@ RMS
Definition: FFpCurve.H:39
@ Mean
Definition: FFpCurve.H:39
@ Max
Definition: FFpCurve.H:39
size_t lastX
Definition: FFpCurve.H:151
bool usingInitialXaxis() const
Definition: FFpCurve.H:79
void finalizeTimeOp()
Definition: FFpCurve.C:546
void printPosition(std::ostream &os) const
Definition: FFpCurve.C:392
std::vector< double > points[N_AXES]
Definition: FFpCurve.H:146
bool replaceByDFT(const DFTparams &dft, const std::string &cId, std::string &errMsg)
Definition: FFpCurve.C:881
bool performRainflowCalc(const RFprm &rf, bool doPVXonly=false)
Definition: FFpCurve.C:1230
bool replaceByScaledShifted(const DFTparams &dft)
Definition: FFpCurve.C:790
bool notReadThisFar(double &lastStep) const
Definition: FFpCurve.C:286
bool initAxes(const std::vector< FFaResultDescription > &xdesc, const std::vector< FFaResultDescription > &ydesc, const std::string &xOper, const std::string &yOper, const std::pair< double, double > &tRange, const std::string &tOper, short int end1)
Definition: FFpCurve.C:200
bool sample(double start, double stop, double shift, double scale, bool subMean, size_t n, std::vector< double > &yOut, std::string &errMsg) const
Definition: FFpCurve.C:1035
bool dataChanged
Definition: FFpCurve.H:157
@ Y
Definition: FFpCurve.H:36
@ X
Definition: FFpCurve.H:36
@ N_AXES
Definition: FFpCurve.H:36
TimeOp timeOper
Definition: FFpCurve.H:154
bool empty() const
Definition: FFpCurve.H:105
FFpCurve(size_t nSpatialPoints=1)
Definition: FFpCurve.H:51
bool replaceByDerivative()
Definition: FFpCurve.C:819
bool loadCurrentSpatialX()
Definition: FFpCurve.C:521
bool replaceByRainflow(const RFprm &rf, double toMPa, bool doPVXonly, const std::string &cId, std::string &errMsg)
Definition: FFpCurve.C:1191
bool needRainflow
Definition: FFpCurve.H:158
FFpCurve & operator=(const FFpCurve &)=delete
bool checkAxesSize()
Definition: FFpCurve.C:171
FFaEnumMapping(TimeOp)
Definition: FFpCurve.H:41
std::vector< double > & operator[](int axis)
Definition: FFpCurve.H:111
void onDataPlotted()
Definition: FFpCurve.H:108
Definition: FFrVariableReference.H:18
integer(ptr), save, private x
Definition: extCtrlSysRoutinesModule.f90:16
real(dp), save, private g
Definition: FNVwaveForceModule.f90:42
integer channel
Column index for data file.
Definition: initiateFunctionTypeModule.f90:26
character(len=500) expression
Explicit function expression.
Definition: initiateFunctionTypeModule.f90:35
Definition: FFpDFTparams.H:13
Definition: FFpCurve.H:136
FFaResultDescription * rDescr
Definition: FFpCurve.H:137
FFaOperation< double > * readOp
Definition: FFpCurve.H:139
FFrVariableReference * varRef
Definition: FFpCurve.H:138
Definition: FFpCurve.H:25
double start
Definition: FFpCurve.H:26
RFprm(double g=0.0)
Definition: FFpCurve.H:29
double gateValue
Definition: FFpCurve.H:28
double stop
Definition: FFpCurve.H:27
RFprm(double t0, double t1, double g)
Definition: FFpCurve.H:30
subroutine scale(vec, a)
Definition: windTurbineRoutinesModule.f90:510