Update of /cvsroot/quantlibaddin/QuantLibAddin/qlo
In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv19829/qlo
Modified Files:
marketmodels.cpp marketmodels.hpp
Log Message:
1) renamed PseudoRoot as MarketModel
2) expanded its interface
3) code refactoring using MarketModel
Index: marketmodels.hpp
===================================================================
RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/marketmodels.hpp,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -d -r1.16 -r1.17
*** marketmodels.hpp 1 Sep 2006 14:27:00 -0000 1.16
--- marketmodels.hpp 1 Sep 2006 20:12:32 -0000 1.17
***************
*** 21,25 ****
#include <oh/objhandler.hpp>
#include <ql/MarketModels/accountingengine.hpp>
! #include <ql/MarketModels/pseudoroot.hpp>
#include <ql/MarketModels/evolutiondescription.hpp>
#include <ql/MarketModels/curvestate.hpp>
--- 21,25 ----
#include <oh/objhandler.hpp>
#include <ql/MarketModels/accountingengine.hpp>
! #include <ql/MarketModels/marketmodel.hpp>
#include <ql/MarketModels/evolutiondescription.hpp>
#include <ql/MarketModels/curvestate.hpp>
***************
*** 29,33 ****
#include <ql/MarketModels/Products/marketmodelforwards.hpp>
#include <ql/MarketModels/Products/marketmodelcaplets.hpp>
! #include <ql/MarketModels/PseudoRoots/expcorrabcdvol.hpp>
namespace QuantLibAddin {
--- 29,33 ----
#include <ql/MarketModels/Products/marketmodelforwards.hpp>
#include <ql/MarketModels/Products/marketmodelcaplets.hpp>
! #include <ql/MarketModels/Models/expcorrabcdvol.hpp>
namespace QuantLibAddin {
***************
*** 53,60 ****
};
! class PseudoRoot : public ObjHandler::LibraryObject<QuantLib::PseudoRoot> {
};
! class ExpCorrFlatVol : public PseudoRoot {
public:
ExpCorrFlatVol(
--- 53,60 ----
};
! class MarketModel : public ObjHandler::LibraryObject<QuantLib::MarketModel> {
};
! class ExpCorrFlatVol : public MarketModel {
public:
ExpCorrFlatVol(
***************
*** 68,72 ****
};
! class ExpCorrAbcdVol : public PseudoRoot {
public:
ExpCorrAbcdVol(
--- 68,72 ----
};
! class ExpCorrAbcdVol : public MarketModel {
public:
ExpCorrAbcdVol(
***************
*** 143,147 ****
class ForwardRateEvolver : public MarketModelEvolver {
public:
! ForwardRateEvolver(const boost::shared_ptr<QuantLib::PseudoRoot>&,
const QuantLib::EvolutionDescription&,
const QuantLib::BrownianGeneratorFactory&);
--- 143,147 ----
class ForwardRateEvolver : public MarketModelEvolver {
public:
! ForwardRateEvolver(const boost::shared_ptr<QuantLib::MarketModel>&,
const QuantLib::EvolutionDescription&,
const QuantLib::BrownianGeneratorFactory&);
***************
*** 150,154 ****
class ForwardRateIpcEvolver : public MarketModelEvolver {
public:
! ForwardRateIpcEvolver(const boost::shared_ptr<QuantLib::PseudoRoot>&,
const QuantLib::EvolutionDescription&,
const QuantLib::BrownianGeneratorFactory&);
--- 150,154 ----
class ForwardRateIpcEvolver : public MarketModelEvolver {
public:
! ForwardRateIpcEvolver(const boost::shared_ptr<QuantLib::MarketModel>&,
const QuantLib::EvolutionDescription&,
const QuantLib::BrownianGeneratorFactory&);
Index: marketmodels.cpp
===================================================================
RCS file: /cvsroot/quantlibaddin/QuantLibAddin/qlo/marketmodels.cpp,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -d -r1.17 -r1.18
*** marketmodels.cpp 1 Sep 2006 14:27:00 -0000 1.17
--- marketmodels.cpp 1 Sep 2006 20:12:32 -0000 1.18
***************
*** 20,25 ****
#endif
#include <qlo/marketmodels.hpp>
! #include <ql/MarketModels/PseudoRoots/expcorrflatvol.hpp>
! #include <ql/MarketModels/PseudoRoots/expcorrabcdvol.hpp>
#include <ql/MarketModels/BrownianGenerators/mtbrowniangenerator.hpp>
#include <ql/MarketModels/Evolvers/forwardratepcevolver.hpp>
--- 20,25 ----
#endif
#include <qlo/marketmodels.hpp>
! #include <ql/MarketModels/Models/expcorrflatvol.hpp>
! #include <ql/MarketModels/Models/expcorrabcdvol.hpp>
#include <ql/MarketModels/BrownianGenerators/mtbrowniangenerator.hpp>
#include <ql/MarketModels/Evolvers/forwardratepcevolver.hpp>
***************
*** 37,41 ****
const std::vector<QuantLib::Rate>& displacements)
{
! libraryObject_ = boost::shared_ptr<QuantLib::PseudoRoot>(
new QuantLib::ExpCorrFlatVol(longTermCorr,
beta,
--- 37,41 ----
const std::vector<QuantLib::Rate>& displacements)
{
! libraryObject_ = boost::shared_ptr<QuantLib::MarketModel>(
new QuantLib::ExpCorrFlatVol(longTermCorr,
beta,
***************
*** 60,64 ****
const std::vector<QuantLib::Rate>& displacements)
{
! libraryObject_ = boost::shared_ptr<QuantLib::PseudoRoot>(
new QuantLib::ExpCorrAbcdVol(a, b, c, d, ks,
longTermCorr,
--- 60,64 ----
const std::vector<QuantLib::Rate>& displacements)
{
! libraryObject_ = boost::shared_ptr<QuantLib::MarketModel>(
new QuantLib::ExpCorrAbcdVol(a, b, c, d, ks,
longTermCorr,
***************
*** 165,169 ****
ForwardRateEvolver::ForwardRateEvolver(
! const boost::shared_ptr<QuantLib::PseudoRoot>& pseudoRoot,
const QuantLib::EvolutionDescription& evolutionDescription,
const QuantLib::BrownianGeneratorFactory& generatorFactory)
--- 165,169 ----
ForwardRateEvolver::ForwardRateEvolver(
! const boost::shared_ptr<QuantLib::MarketModel>& pseudoRoot,
const QuantLib::EvolutionDescription& evolutionDescription,
const QuantLib::BrownianGeneratorFactory& generatorFactory)
***************
*** 176,180 ****
ForwardRateIpcEvolver::ForwardRateIpcEvolver(
! const boost::shared_ptr<QuantLib::PseudoRoot>& pseudoRoot,
const QuantLib::EvolutionDescription& evolutionDescription,
const QuantLib::BrownianGeneratorFactory& generatorFactory)
--- 176,180 ----
ForwardRateIpcEvolver::ForwardRateIpcEvolver(
! const boost::shared_ptr<QuantLib::MarketModel>& pseudoRoot,
const QuantLib::EvolutionDescription& evolutionDescription,
const QuantLib::BrownianGeneratorFactory& generatorFactory)
|