QuantLib
: a free/open-source library for quantitative finance
Fully annotated sources - version 1.32
Loading...
Searching...
No Matches
ql
methods
montecarlo
lsmbasissystem.hpp
1
/* -*- mode: c++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
3
/*
4
Copyright (C) 2006 Klaus Spanderen
5
Copyright (C) 2010 Kakhkhor Abdijalilov
6
7
This file is part of QuantLib, a free-software/open-source library
8
for financial quantitative analysts and developers - http://quantlib.org/
9
10
QuantLib is free software: you can redistribute it and/or modify it
11
under the terms of the QuantLib license. You should have received a
12
copy of the license along with this program; if not, please email
13
<quantlib-dev@lists.sf.net>. The license is also available online at
14
<http://quantlib.org/license.shtml>.
15
16
This program is distributed in the hope that it will be useful, but WITHOUT
17
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18
FOR A PARTICULAR PURPOSE. See the license for more details.
19
*/
20
25
// lsmbasissystem.hpp
26
27
#ifndef quantlib_lsm_basis_system_hpp
28
#define quantlib_lsm_basis_system_hpp
29
30
#include <ql/qldefines.hpp>
31
#include <ql/math/array.hpp>
32
#include <ql/functional.hpp>
33
#include <vector>
34
35
namespace
QuantLib
{
36
37
class
LsmBasisSystem
{
38
public
:
39
enum
PolynomialType
{
40
Monomial
,
Laguerre
,
Hermite
,
Hyperbolic
,
41
Legendre
,
Chebyshev
,
Chebyshev2nd
42
};
43
44
static
std::vector<ext::function<
Real
(
Real
)> >
45
pathBasisSystem
(
Size
order,
PolynomialType
type);
46
47
static
std::vector<ext::function<
Real
(
Array
)> >
48
multiPathBasisSystem
(
Size
dim,
Size
order,
PolynomialType
type);
49
};
50
51
52
}
53
54
#endif
QuantLib::Array
1-D array used in linear algebra.
Definition:
array.hpp:52
QuantLib::LsmBasisSystem
Definition:
lsmbasissystem.hpp:37
QuantLib::LsmBasisSystem::pathBasisSystem
static std::vector< ext::function< Real(Real)> > pathBasisSystem(Size order, PolynomialType type)
Definition:
lsmbasissystem.cpp:109
QuantLib::LsmBasisSystem::multiPathBasisSystem
static std::vector< ext::function< Real(Array)> > multiPathBasisSystem(Size dim, Size order, PolynomialType type)
Definition:
lsmbasissystem.cpp:159
QuantLib::LsmBasisSystem::PolynomialType
PolynomialType
Definition:
lsmbasissystem.hpp:39
QuantLib::LsmBasisSystem::Laguerre
@ Laguerre
Definition:
lsmbasissystem.hpp:40
QuantLib::LsmBasisSystem::Chebyshev2nd
@ Chebyshev2nd
Definition:
lsmbasissystem.hpp:41
QuantLib::LsmBasisSystem::Hermite
@ Hermite
Definition:
lsmbasissystem.hpp:40
QuantLib::LsmBasisSystem::Legendre
@ Legendre
Definition:
lsmbasissystem.hpp:41
QuantLib::LsmBasisSystem::Monomial
@ Monomial
Definition:
lsmbasissystem.hpp:40
QuantLib::LsmBasisSystem::Hyperbolic
@ Hyperbolic
Definition:
lsmbasissystem.hpp:40
QuantLib::LsmBasisSystem::Chebyshev
@ Chebyshev
Definition:
lsmbasissystem.hpp:41
QuantLib::Real
QL_REAL Real
real number
Definition:
types.hpp:50
QuantLib::Size
std::size_t Size
size of a container
Definition:
types.hpp:58
QuantLib
Definition:
any.hpp:35
Generated by
Doxygen
1.9.5