Class TimeChangedLevyProcess
Defined in File time_changed_levy_process.hpp
Inheritance Relationships
Base Type
public otyca::StochasticProcess
(Class StochasticProcess)
Class Documentation
-
class TimeChangedLevyProcess : public otyca::StochasticProcess
Represents a time-changed Lévy process, where a base Lévy process is evaluated at a stochastic clock.
This class composes a Lévy process with a time change process to model a wider range of stochastic behaviors. It supports computing characteristic functions, their derivatives, and various parameter manipulations.
Public Functions
-
inline virtual TimeChangedLevyProcess *clone() const
Clone this process.
- Returns:
A new heap-allocated copy of the current object.
-
inline TimeChangedLevyProcess(const TimeChangedLevyProcess &other)
Copy constructor.
Performs a deep copy of the internal Lévy and time change processes.
- Parameters:
other – The process to copy.
-
inline TimeChangedLevyProcess()
Default constructor.
-
virtual arma::cx_mat characteristic_function(const arma::cx_colvec &u, const arma::rowvec &t) const override
Computes the characteristic function.
- Parameters:
u – Complex-valued column vector of Fourier arguments.
t – Row vector of time points.
- Returns:
A characteristic function matrix where rows correspond to u and columns to t.
-
virtual std::vector<arma::cx_mat> characteristic_function_derivatives(const arma::cx_colvec &u, const arma::rowvec &t) const override
Computes the characteristic function’s derivatives to process parameters.
- Parameters:
u – Complex-valued column vector of Fourier arguments.
t – Row vector of time points.
- Returns:
A vector of characteristic function matrices with each matrix is the characteristic function’s derivatives to each process parameter
-
virtual void set_transformed_calibration_parameters(const std::vector<double> &transformed_parameters)
Set the transformed parameters of the process.
- Parameters:
transformed_parameters – Vector of transformed parameter values.
-
virtual void set_parameters(const std::vector<double> ¶meters)
Set the raw parameters of the process.
- Parameters:
parameters – Vector of raw parameter values.
-
virtual std::vector<double> get_transformed_calibration_parameters() const
Get the transformed parameters.
- Returns:
A vector of transformed parameter values.
-
virtual std::vector<double> get_parameters() const
Get the raw parameters.
- Returns:
A vector of raw parameter values.
-
virtual std::vector<std::string> get_parameter_names() const
Get the names of the parameters.
- Returns:
A vector of parameter names.
-
virtual std::vector<double> get_transformed_calibration_parameter_variances() const
Get the variances of the transformed parameters.
- Returns:
A vector of variances.
-
virtual std::string name() const
Get the name of the process.
- Returns:
A string representing the name.
-
virtual std::string specification() const
Get the model specification string.
- Returns:
A string representation of the specification.
-
virtual std::vector<double> transformation_derivatives() const
Get the derivatives of the transformation.
- Returns:
A vector of transformation derivative values.
-
inline std::shared_ptr<TimeChangeProcess> get_time_change() const
Get the time change process.
- Returns:
A shared pointer to the time change process.
Set the time change process.
- Parameters:
p – Shared pointer to the new time change process.
-
inline std::shared_ptr<LevyProcess> get_levy_process() const
Get the underlying Lévy process.
- Returns:
A shared pointer to the Lévy process.
Set the underlying Lévy process.
- Parameters:
p – Shared pointer to the new Lévy process.
-
virtual std::ostream &print(std::ostream &out) const
Print a summary of the process to an output stream.
- Parameters:
out – Output stream.
- Returns:
Reference to the output stream.
-
inline virtual TimeChangedLevyProcess *clone() const