23#include <ql/experimental/finitedifferences/fdmvppstartlimitstepcondition.hpp>
24#include <ql/experimental/finitedifferences/fdmvppstepconditionfactory.hpp>
25#include <ql/methods/finitedifferences/meshers/uniform1dmesher.hpp>
31 : args_(
std::move(args)) {
34 "start and running hour limt together is not supported");
48 ext::shared_ptr<Fdm1dMesher>
60 QL_FAIL(
"vpp type is not supported");
63 return ext::shared_ptr<Fdm1dMesher>(
70 const ext::shared_ptr<FdmInnerValueCalculator>& fuel,
71 const ext::shared_ptr<FdmInnerValueCalculator>& spark)
const {
83 return ext::shared_ptr<FdmVPPStepCondition>(
88 QL_FAIL(
"vpp type is not supported");
ext::shared_ptr< Fdm1dMesher > stateMesher() const
ext::shared_ptr< FdmVPPStepCondition > build(const FdmVPPStepConditionMesher &mesh, Real fuelCostAddon, const ext::shared_ptr< FdmInnerValueCalculator > &fuel, const ext::shared_ptr< FdmInnerValueCalculator > &spark) const
const VanillaVPPOption::arguments args_
enum QuantLib::FdmVPPStepConditionFactory::Type type_
FdmVPPStepConditionFactory(VanillaVPPOption::arguments args)
template class providing a null value for a given type.
std::size_t Size
size of a container