|
OOFEM 3.0
|
#include <stepfunction.h>
Public Member Functions | |
| StepFunction (int i, Domain *d) | |
| StepFunction (int i, Domain *d, const std::vector< std::tuple< double, double > > &datevalues) | |
| virtual | ~StepFunction () |
| void | initializeFrom (InputRecord &ir) override |
| void | giveInputRecord (DynamicInputRecord &input) override |
| const char * | giveClassName () const override |
| const char * | giveInputRecordName () const override |
| void | saveContext (DataStream &stream, ContextMode mode) override |
| void | restoreContext (DataStream &stream, ContextMode mode) override |
| double | evaluateAtTime (double t) override |
| double | evaluateVelocityAtTime (double t) override |
| double | evaluateAccelerationAtTime (double t) override |
| Public Member Functions inherited from oofem::Function | |
| Function (int n, Domain *d) | |
| virtual | ~Function () |
| Destructor. | |
| virtual double | evaluate (TimeStep *tStep, ValueModeType mode) |
| virtual void | evaluate (FloatArray &answer, const std ::map< std ::string, FunctionArgument > &valDict, GaussPoint *gp=nullptr, double param=0.) |
| virtual double | evaluate (const std ::map< std ::string, FunctionArgument > &valDict) |
| double | giveFunctionParameter (int paramID) |
| Public Member Functions inherited from oofem::FEMComponent | |
| FEMComponent (int n, Domain *d) | |
| virtual | ~FEMComponent ()=default |
| Virtual destructor. | |
| Domain * | giveDomain () const |
| virtual void | setDomain (Domain *d) |
| int | giveNumber () const |
| void | setNumber (int num) |
| virtual void | updateLocalNumbering (EntityRenumberingFunctor &f) |
| virtual void | initializeFrom (InputRecord &ir, int priority) |
| virtual void | initializeFinish () |
| virtual void | postInitialize () |
| Performs post initialization steps. Called after all components are created and initialized. | |
| virtual int | checkConsistency () |
| virtual void | printOutputAt (FILE *file, TimeStep *tStep) |
| virtual void | printYourself () |
| Prints receiver state on stdout. Useful for debugging. | |
| virtual Interface * | giveInterface (InterfaceType t) |
| std::string | errorInfo (const char *func) const |
| Returns string for prepending output (used by error reporting macros). | |
Protected Attributes | |
| std::vector< std::tuple< double, double > > | datevalues |
| Protected Attributes inherited from oofem::FEMComponent | |
| int | number |
| Component number. | |
| Domain * | domain |
| Link to domain object, useful for communicating with other FEM components. | |
Additional Inherited Members | |
| Public Attributes inherited from oofem::Function | |
| Domain * | funcDomain |
| int | parameterType |
This class implements a step function, which is a piecewise constant function having only finitely many pieces. The function is defined by 'numberOfPoints' points. 'dates' and 'values'. The function is defined as:
\[f(t) = \begin{cases} v_1, & t < t_2 \\ v_i, & t_i \leq t < t_{i+1}, i= 2, \ldots, n-1 \\ v_n, & t \geq t_n \end{cases} \]
where \( (t_i, v_i), i=1,\ldots,n \) are the points stored in 'dates' and 'values'.
Definition at line 64 of file stepfunction.h.
| oofem::StepFunction::StepFunction | ( | int | i, |
| Domain * | d ) |
Definition at line 48 of file stepfunction.C.
References datevalues, and oofem::Function::Function().
|
inline |
Definition at line 71 of file stepfunction.h.
References datevalues, and oofem::Function::Function().
|
inlinevirtual |
Definition at line 73 of file stepfunction.h.
|
inlineoverridevirtual |
Returns the second time derivative of the function at given time.
| t | Time. |
Implements oofem::Function.
Definition at line 85 of file stepfunction.h.
|
overridevirtual |
Returns the value of the function at given time.
| t | Time. |
Reimplemented from oofem::Function.
Definition at line 51 of file stepfunction.C.
References datevalues, and OOFEM_ERROR.
|
overridevirtual |
Returns the first time derivative of the function at given time.
| t | Time. |
Implements oofem::Function.
Definition at line 112 of file stepfunction.C.
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 77 of file stepfunction.h.
|
overridevirtual |
Setups the input record string of receiver.
| input | Dynamic input record to be filled by receiver. |
Reimplemented from oofem::FEMComponent.
Definition at line 168 of file stepfunction.C.
References _IFT_StepFunction_ft, _IFT_StepFunction_t, datevalues, and oofem::DynamicInputRecord::setField().
|
inlineoverridevirtual |
Implements oofem::FEMComponent.
Definition at line 78 of file stepfunction.h.
References _IFT_StepFunction_Name.
|
overridevirtual |
Initializes receiver according to object description stored in input record. This function is called immediately after creating object using constructor. Input record can be imagined as data record in component database belonging to receiver. Receiver may use value-name extracting functions to extract particular field from record. Note that initializeFrom may be called mutiple times.
| ir | Input record to initialize from. |
| priority | Priority of the input record. This is used to determine the order of initialization |
Reimplemented from oofem::FEMComponent.
Definition at line 121 of file stepfunction.C.
References _IFT_StepFunction_dataFile, _IFT_StepFunction_ft, _IFT_StepFunction_t, datevalues, oofem::InputRecord::hasField(), IR_GIVE_FIELD, IR_GIVE_OPTIONAL_FIELD, OOFEM_ERROR, and oofem::FloatArray::size().
|
overridevirtual |
Restores the receiver state previously written in stream.
| stream | Input stream. |
| mode | Determines amount of info available in stream (state, definition, ...). |
| throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::Function.
Definition at line 202 of file stepfunction.C.
References CM_Definition, datevalues, OOFEM_ERROR, oofem::FloatArray::restoreYourself(), and oofem::FloatArray::size().
|
overridevirtual |
Stores receiver state to output stream.
| stream | Output stream. |
| mode | Determines amount of info required in stream (state, definition, ...). |
| throws | an ContextIOERR exception if error encountered. |
Reimplemented from oofem::Function.
Definition at line 186 of file stepfunction.C.
References CM_Definition, datevalues, and oofem::FloatArray::storeYourself().
|
protected |
Definition at line 67 of file stepfunction.h.
Referenced by evaluateAtTime(), giveInputRecord(), initializeFrom(), restoreContext(), saveContext(), StepFunction(), and StepFunction().