QuantLib
: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
ql
methods
finitedifferences
operators
modtriplebandlinearop.hpp
Go to the documentation of this file.
1
/* -*- mode: c++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
3
/*
4
Copyright (C) 2013 Klaus Spanderen
5
6
This file is part of QuantLib, a free-software/open-source library
7
for financial quantitative analysts and developers - http://quantlib.org/
8
9
QuantLib is free software: you can redistribute it and/or modify it
10
under the terms of the QuantLib license. You should have received a
11
copy of the license along with this program; if not, please email
12
<quantlib-dev@lists.sf.net>. The license is also available online at
13
<http://quantlib.org/license.shtml>.
14
15
This program is distributed in the hope that it will be useful, but WITHOUT
16
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17
FOR A PARTICULAR PURPOSE. See the license for more details.
18
*/
19
20
/*! \file modtriplebandlinearop.hpp
21
\brief modifiable triple band linear operator
22
*/
23
24
#ifndef quantlib_mod_triple_band_linear_op_hpp
25
#define quantlib_mod_triple_band_linear_op_hpp
26
27
#include <
ql/methods/finitedifferences/meshers/fdmmesher.hpp
>
28
#include <
ql/methods/finitedifferences/operators/triplebandlinearop.hpp
>
29
30
namespace
QuantLib
{
31
32
class
ModTripleBandLinearOp
:
public
TripleBandLinearOp
{
33
public
:
34
ModTripleBandLinearOp
(
Size
direction,
35
const
ext::shared_ptr<FdmMesher>& mesher)
36
:
TripleBandLinearOp
(direction, mesher) { }
37
38
explicit
ModTripleBandLinearOp
(
const
TripleBandLinearOp
& m)
39
:
TripleBandLinearOp
(m) { }
40
41
Real
lower
(
Size
i)
const
{
return
lower_
[i]; }
42
Real
&
lower
(
Size
i) {
return
lower_
[i]; }
43
Real
diag
(
Size
i)
const
{
return
diag_
[i]; }
44
Real
&
diag
(
Size
i) {
return
diag_
[i]; }
45
Real
upper
(
Size
i)
const
{
return
upper_
[i]; }
46
Real
&
upper
(
Size
i) {
return
upper_
[i]; }
47
};
48
}
49
50
#endif
QuantLib::ModTripleBandLinearOp
Definition:
modtriplebandlinearop.hpp:32
QuantLib::ModTripleBandLinearOp::ModTripleBandLinearOp
ModTripleBandLinearOp(const TripleBandLinearOp &m)
Definition:
modtriplebandlinearop.hpp:38
QuantLib::ModTripleBandLinearOp::ModTripleBandLinearOp
ModTripleBandLinearOp(Size direction, const ext::shared_ptr< FdmMesher > &mesher)
Definition:
modtriplebandlinearop.hpp:34
QuantLib::ModTripleBandLinearOp::upper
Real & upper(Size i)
Definition:
modtriplebandlinearop.hpp:46
QuantLib::ModTripleBandLinearOp::diag
Real diag(Size i) const
Definition:
modtriplebandlinearop.hpp:43
QuantLib::ModTripleBandLinearOp::upper
Real upper(Size i) const
Definition:
modtriplebandlinearop.hpp:45
QuantLib::ModTripleBandLinearOp::diag
Real & diag(Size i)
Definition:
modtriplebandlinearop.hpp:44
QuantLib::ModTripleBandLinearOp::lower
Real lower(Size i) const
Definition:
modtriplebandlinearop.hpp:41
QuantLib::ModTripleBandLinearOp::lower
Real & lower(Size i)
Definition:
modtriplebandlinearop.hpp:42
QuantLib::TripleBandLinearOp
Definition:
triplebandlinearop.hpp:37
QuantLib::TripleBandLinearOp::diag_
std::unique_ptr< Real[]> diag_
Definition:
triplebandlinearop.hpp:72
QuantLib::TripleBandLinearOp::lower_
std::unique_ptr< Real[]> lower_
Definition:
triplebandlinearop.hpp:72
QuantLib::TripleBandLinearOp::upper_
std::unique_ptr< Real[]> upper_
Definition:
triplebandlinearop.hpp:72
fdmmesher.hpp
mesher for a fdm grid
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
triplebandlinearop.hpp
general triple band linear operator
Generated by
Doxygen
1.9.5