1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.20"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>QuantLib: SpotRecoveryLatentModel< copulaPolicy > Class Template Reference</title>
<link href='https://fonts.googleapis.com/css?family=Merriweather+Sans:800' rel='stylesheet' type='text/css'>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="quantlibextra.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname"><a href="http://quantlib.org">
<img alt="QuantLib" src="QL-title.jpg"></a>
<div id="projectbrief">A free/open-source library for quantitative finance</div>
<div id="projectnumber">Reference manual - version 1.20</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.20 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespace_quant_lib.html">QuantLib</a></li><li class="navelem"><a class="el" href="class_quant_lib_1_1_spot_recovery_latent_model.html">SpotRecoveryLatentModel</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<a href="#pro-methods">Protected Member Functions</a> |
<a href="class_quant_lib_1_1_spot_recovery_latent_model-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">SpotRecoveryLatentModel< copulaPolicy > Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Random spot recovery rate latent variable portfolio model.
<a href="class_quant_lib_1_1_spot_recovery_latent_model.html#details">More...</a></p>
<p><code>#include <ql/experimental/credit/spotlosslatentmodel.hpp></code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for SpotRecoveryLatentModel< copulaPolicy >:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="class_quant_lib_1_1_spot_recovery_latent_model__inherit__graph.png" border="0" usemap="#a_spot_recovery_latent_model_3_01copula_policy_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="_spot_recovery_latent_model_3_01copula_policy_01_4_inherit__map" id="a_spot_recovery_latent_model_3_01copula_policy_01_4_inherit__map">
<area shape="rect" title="Random spot recovery rate latent variable portfolio model." alt="" coords="13,155,189,196"/>
<area shape="rect" href="class_quant_lib_1_1_latent_model.html" title=" " alt="" coords="5,80,196,107"/>
<area shape="rect" href="class_quant_lib_1_1_observer.html" title="Object that gets notified when a given observable changes." alt="" coords="11,5,86,32"/>
<area shape="rect" href="class_quant_lib_1_1_observable.html" title="Object that notifies its changes to a set of observers." alt="" coords="110,5,198,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a263183664aa45243289a5be6091eac7d"><td class="memItemLeft" align="right" valign="top"><a id="a263183664aa45243289a5be6091eac7d"></a>
 </td><td class="memItemRight" valign="bottom"><b>SpotRecoveryLatentModel</b> (const std::vector< std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > > &<a class="el" href="class_quant_lib_1_1_latent_model.html#a4b308a15a8f13a308117e55209d99fcd">factorWeights</a>, const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &recoveries, <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> modelA, LatentModelIntegrationType::LatentModelIntegrationType integralType, const initTraits &ini=initTraits())</td></tr>
<tr class="separator:a263183664aa45243289a5be6091eac7d"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a74b99e4832df2085d0d5ba3d82af2456"><td class="memItemLeft" align="right" valign="top"><a id="a74b99e4832df2085d0d5ba3d82af2456"></a>
void </td><td class="memItemRight" valign="bottom"><b>resetBasket</b> (const ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_basket.html">Basket</a> > &basket) const</td></tr>
<tr class="separator:a74b99e4832df2085d0d5ba3d82af2456"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a5034d127b501f9abe630adc9cbe89b8a"><td class="memItemLeft" align="right" valign="top"><a id="a5034d127b501f9abe630adc9cbe89b8a"></a>
<a class="el" href="group__types.html#gad9817a6a21dfcb91429f0152c99d6313">Probability</a> </td><td class="memItemRight" valign="bottom"><b>conditionalDefaultProbability</b> (const <a class="el" href="class_quant_lib_1_1_date.html">Date</a> &date, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iName, const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &mktFactors) const</td></tr>
<tr class="separator:a5034d127b501f9abe630adc9cbe89b8a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a5ecfe2190404d92a4641d3478d82c067"><td class="memItemLeft" align="right" valign="top"><a id="a5ecfe2190404d92a4641d3478d82c067"></a>
<a class="el" href="group__types.html#gad9817a6a21dfcb91429f0152c99d6313">Probability</a> </td><td class="memItemRight" valign="bottom"><b>conditionalDefaultProbability</b> (<a class="el" href="group__types.html#gad9817a6a21dfcb91429f0152c99d6313">Probability</a> prob, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iName, const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &mktFactors) const</td></tr>
<tr class="separator:a5ecfe2190404d92a4641d3478d82c067"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aeb0d6e75705e728822e13e88c5b77921"><td class="memItemLeft" align="right" valign="top"><a id="aeb0d6e75705e728822e13e88c5b77921"></a>
<a class="el" href="group__types.html#gad9817a6a21dfcb91429f0152c99d6313">Probability</a> </td><td class="memItemRight" valign="bottom"><b>conditionalDefaultProbabilityInvP</b> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> invCumYProb, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iName, const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &m) const</td></tr>
<tr class="separator:aeb0d6e75705e728822e13e88c5b77921"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a7abaad5215f17f4cd982d6a7cf049d47"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_spot_recovery_latent_model.html#a7abaad5215f17f4cd982d6a7cf049d47">expCondRecovery</a> (const <a class="el" href="class_quant_lib_1_1_date.html">Date</a> &d, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iName, const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &mktFactors) const</td></tr>
<tr class="separator:a7abaad5215f17f4cd982d6a7cf049d47"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a6afd6867d05be65e4053ce2bea88eb0e"><td class="memItemLeft" align="right" valign="top"><a id="a6afd6867d05be65e4053ce2bea88eb0e"></a>
<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><b>expCondRecoveryP</b> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> uncondDefP, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iName, const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &mktFactors) const</td></tr>
<tr class="separator:a6afd6867d05be65e4053ce2bea88eb0e"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aac1f6a9c429d060b3f3b1f5bc9f4dd93"><td class="memItemLeft" align="right" valign="top"><a id="aac1f6a9c429d060b3f3b1f5bc9f4dd93"></a>
<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><b>expCondRecoveryInvPinvRR</b> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> invUncondDefP, <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> invUncondRR, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iName, const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &mktFactors) const</td></tr>
<tr class="separator:aac1f6a9c429d060b3f3b1f5bc9f4dd93"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a845d2c455685f70cb7d1120538021a84"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_spot_recovery_latent_model.html#a845d2c455685f70cb7d1120538021a84">conditionalRecovery</a> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> latentVarSample, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iName, const <a class="el" href="class_quant_lib_1_1_date.html">Date</a> &d) const</td></tr>
<tr class="separator:a845d2c455685f70cb7d1120538021a84"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a91d7fa99812751d7e10d51455ef0dd47"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_spot_recovery_latent_model.html#a91d7fa99812751d7e10d51455ef0dd47">latentRRVarValue</a> (const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &allFactors, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iName) const</td></tr>
<tr class="separator:a91d7fa99812751d7e10d51455ef0dd47"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a06b7716153bfcfaddec14f3a9ca3e7e8"><td class="memItemLeft" align="right" valign="top"><a id="a06b7716153bfcfaddec14f3a9ca3e7e8"></a>
<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><b>conditionalExpLossRR</b> (const <a class="el" href="class_quant_lib_1_1_date.html">Date</a> &d, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iName, const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &mktFactors) const</td></tr>
<tr class="separator:a06b7716153bfcfaddec14f3a9ca3e7e8"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:abcd28ae674476a5a90c1d4db49818cfd"><td class="memItemLeft" align="right" valign="top"><a id="abcd28ae674476a5a90c1d4db49818cfd"></a>
<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><b>conditionalExpLossRRInv</b> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> invP, <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> invRR, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iName, const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &mktFactors) const</td></tr>
<tr class="separator:abcd28ae674476a5a90c1d4db49818cfd"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a4698ee9571f03b1636eec707c2cb0dd7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_spot_recovery_latent_model.html#a4698ee9571f03b1636eec707c2cb0dd7">expectedLoss</a> (const <a class="el" href="class_quant_lib_1_1_date.html">Date</a> &d, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iName) const</td></tr>
<tr class="separator:a4698ee9571f03b1636eec707c2cb0dd7"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_methods_class_quant_lib_1_1_latent_model"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_quant_lib_1_1_latent_model')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="class_quant_lib_1_1_latent_model.html">LatentModel< copulaPolicy ></a></td></tr>
<tr class="memitem:ac5c54df7ed3b930268c8d7752c101725 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><b>update</b> ()</td></tr>
<tr class="separator:ac5c54df7ed3b930268c8d7752c101725 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:acce0ab2cacc475b2434f24c65c91685a inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="acce0ab2cacc475b2434f24c65c91685a"></a>
<a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><b>size</b> () const</td></tr>
<tr class="separator:acce0ab2cacc475b2434f24c65c91685a inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a56abc887c13cbde93385f6875e849541 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="a56abc887c13cbde93385f6875e849541"></a>
<a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a56abc887c13cbde93385f6875e849541">numFactors</a> () const</td></tr>
<tr class="memdesc:a56abc887c13cbde93385f6875e849541 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="mdescLeft"> </td><td class="mdescRight">Number of systemic factors. <br /></td></tr>
<tr class="separator:a56abc887c13cbde93385f6875e849541 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac9c9998bd5485693575f044342216cdc inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="ac9c9998bd5485693575f044342216cdc"></a>
<a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#ac9c9998bd5485693575f044342216cdc">numTotalFactors</a> () const</td></tr>
<tr class="memdesc:ac9c9998bd5485693575f044342216cdc inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="mdescLeft"> </td><td class="mdescRight">Number of total free random factors; systemic and idiosyncratic. <br /></td></tr>
<tr class="separator:ac9c9998bd5485693575f044342216cdc inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae4ed5d88e196cc3c54f7793f8196fbb4 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#ae4ed5d88e196cc3c54f7793f8196fbb4">LatentModel</a> (const std::vector< std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > > &factorsWeights, const typename copulaType::initTraits &ini=copulaType::initTraits())</td></tr>
<tr class="separator:ae4ed5d88e196cc3c54f7793f8196fbb4 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:abe3447b3892833206298d351755afc1e inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#abe3447b3892833206298d351755afc1e">LatentModel</a> (const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &factorsWeight, const typename copulaType::initTraits &ini=copulaType::initTraits())</td></tr>
<tr class="separator:abe3447b3892833206298d351755afc1e inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:abafaa85a02d48b40e33125881e5cd57d inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#abafaa85a02d48b40e33125881e5cd57d">LatentModel</a> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> correlSqr, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> nVariables, const typename copulaType::initTraits &ini=copulaType::initTraits())</td></tr>
<tr class="separator:abafaa85a02d48b40e33125881e5cd57d inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a167de0197f4aa9da234d78f844902aeb inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a167de0197f4aa9da234d78f844902aeb">LatentModel</a> (const <a class="el" href="class_quant_lib_1_1_handle.html">Handle</a>< <a class="el" href="class_quant_lib_1_1_quote.html">Quote</a> > &singleFactorCorrel, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> nVariables, const typename copulaType::initTraits &ini=copulaType::initTraits())</td></tr>
<tr class="separator:a167de0197f4aa9da234d78f844902aeb inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a4b308a15a8f13a308117e55209d99fcd inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="a4b308a15a8f13a308117e55209d99fcd"></a>
const std::vector< std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a4b308a15a8f13a308117e55209d99fcd">factorWeights</a> () const</td></tr>
<tr class="memdesc:a4b308a15a8f13a308117e55209d99fcd inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="mdescLeft"> </td><td class="mdescRight">Provides values of the factors \( a_{i,k} \). <br /></td></tr>
<tr class="separator:a4b308a15a8f13a308117e55209d99fcd inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a2196b7464ec3bb07339e71d9d7caf99d inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="a2196b7464ec3bb07339e71d9d7caf99d"></a>
const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a2196b7464ec3bb07339e71d9d7caf99d">idiosyncFctrs</a> () const</td></tr>
<tr class="memdesc:a2196b7464ec3bb07339e71d9d7caf99d inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="mdescLeft"> </td><td class="mdescRight">Provides values of the normalized idiosyncratic factors \( Z_i \). <br /></td></tr>
<tr class="separator:a2196b7464ec3bb07339e71d9d7caf99d inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a31dc4b961ba8016810704c496e14079c inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="a31dc4b961ba8016810704c496e14079c"></a>
<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a31dc4b961ba8016810704c496e14079c">latentVariableCorrel</a> (<a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iVar1, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iVar2) const</td></tr>
<tr class="memdesc:a31dc4b961ba8016810704c496e14079c inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="mdescLeft"> </td><td class="mdescRight">Latent variable correlations: <br /></td></tr>
<tr class="separator:a31dc4b961ba8016810704c496e14079c inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a9d2172a86cee3a6b5e87ef6804283d9a inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__types.html#gad9817a6a21dfcb91429f0152c99d6313">Probability</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a9d2172a86cee3a6b5e87ef6804283d9a">cumulativeY</a> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> val, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iVariable) const</td></tr>
<tr class="separator:a9d2172a86cee3a6b5e87ef6804283d9a inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac42e8a3a9fe28bd7cbb0144e1fde4e98 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="ac42e8a3a9fe28bd7cbb0144e1fde4e98"></a>
<a class="el" href="group__types.html#gad9817a6a21dfcb91429f0152c99d6313">Probability</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#ac42e8a3a9fe28bd7cbb0144e1fde4e98">cumulativeZ</a> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> z) const</td></tr>
<tr class="memdesc:ac42e8a3a9fe28bd7cbb0144e1fde4e98 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="mdescLeft"> </td><td class="mdescRight">Cumulative distribution of Z, the idiosyncratic/error factors. <br /></td></tr>
<tr class="separator:ac42e8a3a9fe28bd7cbb0144e1fde4e98 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a7a6a9e92d606e0b463736794cc2415b8 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="a7a6a9e92d606e0b463736794cc2415b8"></a>
<a class="el" href="group__types.html#gad9817a6a21dfcb91429f0152c99d6313">Probability</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a7a6a9e92d606e0b463736794cc2415b8">density</a> (const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &m) const</td></tr>
<tr class="memdesc:a7a6a9e92d606e0b463736794cc2415b8 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="mdescLeft"> </td><td class="mdescRight">Density function of M, the market/systemic factors. <br /></td></tr>
<tr class="separator:a7a6a9e92d606e0b463736794cc2415b8 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a54052fb0c8917e0d63d6d52230e3b59a inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="a54052fb0c8917e0d63d6d52230e3b59a"></a>
<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a54052fb0c8917e0d63d6d52230e3b59a">inverseCumulativeDensity</a> (<a class="el" href="group__types.html#gad9817a6a21dfcb91429f0152c99d6313">Probability</a> p, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iFactor) const</td></tr>
<tr class="memdesc:a54052fb0c8917e0d63d6d52230e3b59a inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="mdescLeft"> </td><td class="mdescRight">Inverse cumulative distribution of the systemic factor iFactor. <br /></td></tr>
<tr class="separator:a54052fb0c8917e0d63d6d52230e3b59a inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a36e205d1cabb02b58e65e4f1ee08658f inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a36e205d1cabb02b58e65e4f1ee08658f">inverseCumulativeY</a> (<a class="el" href="group__types.html#gad9817a6a21dfcb91429f0152c99d6313">Probability</a> p, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iVariable) const</td></tr>
<tr class="separator:a36e205d1cabb02b58e65e4f1ee08658f inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:acd5b1879390c62bbddd5f61deb20b49e inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#acd5b1879390c62bbddd5f61deb20b49e">inverseCumulativeZ</a> (<a class="el" href="group__types.html#gad9817a6a21dfcb91429f0152c99d6313">Probability</a> p) const</td></tr>
<tr class="separator:acd5b1879390c62bbddd5f61deb20b49e inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a2b0482da26b94fcd714869c802efd590 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_quant_lib_1_1_disposable.html">Disposable</a>< std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a2b0482da26b94fcd714869c802efd590">allFactorCumulInverter</a> (const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &probs) const</td></tr>
<tr class="separator:a2b0482da26b94fcd714869c802efd590 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a0dd0aa599a5b42688ff1ca2bd4cf9d3f inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a0dd0aa599a5b42688ff1ca2bd4cf9d3f">latentVarValue</a> (const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &allFactors, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> iVar) const</td></tr>
<tr class="separator:a0dd0aa599a5b42688ff1ca2bd4cf9d3f inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a6d107efc12437354987e3537fc1cbe62 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="a6d107efc12437354987e3537fc1cbe62"></a>
const copulaType & </td><td class="memItemRight" valign="bottom"><b>copula</b> () const</td></tr>
<tr class="separator:a6d107efc12437354987e3537fc1cbe62 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ada44c6f03858c0d5f260c1815cc22246 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#ada44c6f03858c0d5f260c1815cc22246">integratedExpectedValue</a> (const ext::function< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a>(const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &v1)> &f) const</td></tr>
<tr class="separator:ada44c6f03858c0d5f260c1815cc22246 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac5a4f1b3cf4b5973b5362998c89a82a3 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_quant_lib_1_1_disposable.html">Disposable</a>< std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#ac5a4f1b3cf4b5973b5362998c89a82a3">integratedExpectedValue</a> (const ext::function< <a class="el" href="class_quant_lib_1_1_disposable.html">Disposable</a>< std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > >(const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > &v1)> &f) const</td></tr>
<tr class="separator:ac5a4f1b3cf4b5973b5362998c89a82a3 inherit pub_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_methods_class_quant_lib_1_1_observer"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_quant_lib_1_1_observer')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="class_quant_lib_1_1_observer.html">Observer</a></td></tr>
<tr class="memitem:af6a9d3ca0b7f388f3b7ccb1eccf11f63 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memItemLeft" align="right" valign="top"><a id="af6a9d3ca0b7f388f3b7ccb1eccf11f63"></a>
 </td><td class="memItemRight" valign="bottom"><b>Observer</b> (const <a class="el" href="class_quant_lib_1_1_observer.html">Observer</a> &)</td></tr>
<tr class="separator:af6a9d3ca0b7f388f3b7ccb1eccf11f63 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a6810b3645967da11d5f5d4804d37bacc inherit pub_methods_class_quant_lib_1_1_observer"><td class="memItemLeft" align="right" valign="top"><a id="a6810b3645967da11d5f5d4804d37bacc"></a>
<a class="el" href="class_quant_lib_1_1_observer.html">Observer</a> & </td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="class_quant_lib_1_1_observer.html">Observer</a> &)</td></tr>
<tr class="separator:a6810b3645967da11d5f5d4804d37bacc inherit pub_methods_class_quant_lib_1_1_observer"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aa6ade205ed506bf712da2704f80a73a0 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memItemLeft" align="right" valign="top"><a id="aa6ade205ed506bf712da2704f80a73a0"></a>
std::pair< iterator, bool > </td><td class="memItemRight" valign="bottom"><b>registerWith</b> (const ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_observable.html">Observable</a> > &)</td></tr>
<tr class="separator:aa6ade205ed506bf712da2704f80a73a0 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a51d57eb97a3a57312a47bda29235f182 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_observer.html#a51d57eb97a3a57312a47bda29235f182">registerWithObservables</a> (const ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_observer.html">Observer</a> > &)</td></tr>
<tr class="separator:a51d57eb97a3a57312a47bda29235f182 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a4ce7359ad0f73a54dba555be24855804 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memItemLeft" align="right" valign="top"><a id="a4ce7359ad0f73a54dba555be24855804"></a>
<a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><b>unregisterWith</b> (const ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_observable.html">Observable</a> > &)</td></tr>
<tr class="separator:a4ce7359ad0f73a54dba555be24855804 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a0c19cb502f3b720b99b176ea6cc7e319 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memItemLeft" align="right" valign="top"><a id="a0c19cb502f3b720b99b176ea6cc7e319"></a>
void </td><td class="memItemRight" valign="bottom"><b>unregisterWithAll</b> ()</td></tr>
<tr class="separator:a0c19cb502f3b720b99b176ea6cc7e319 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a3d53f9669c128dadc74a5d044a7c8e68 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_observer.html#a3d53f9669c128dadc74a5d044a7c8e68">deepUpdate</a> ()</td></tr>
<tr class="separator:a3d53f9669c128dadc74a5d044a7c8e68 inherit pub_methods_class_quant_lib_1_1_observer"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_methods_class_quant_lib_1_1_observable"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_quant_lib_1_1_observable')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="class_quant_lib_1_1_observable.html">Observable</a></td></tr>
<tr class="memitem:a840dd96e33a304cbf681d357de7f48d0 inherit pub_methods_class_quant_lib_1_1_observable"><td class="memItemLeft" align="right" valign="top"><a id="a840dd96e33a304cbf681d357de7f48d0"></a>
 </td><td class="memItemRight" valign="bottom"><b>Observable</b> (const <a class="el" href="class_quant_lib_1_1_observable.html">Observable</a> &)</td></tr>
<tr class="separator:a840dd96e33a304cbf681d357de7f48d0 inherit pub_methods_class_quant_lib_1_1_observable"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a522aacdd0f2408fe5e46527a6db999b4 inherit pub_methods_class_quant_lib_1_1_observable"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_quant_lib_1_1_observable.html">Observable</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_observable.html#a522aacdd0f2408fe5e46527a6db999b4">operator=</a> (const <a class="el" href="class_quant_lib_1_1_observable.html">Observable</a> &)</td></tr>
<tr class="separator:a522aacdd0f2408fe5e46527a6db999b4 inherit pub_methods_class_quant_lib_1_1_observable"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a397546715bfc5aedd1d16dd202a19d4c inherit pub_methods_class_quant_lib_1_1_observable"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_observable.html#a397546715bfc5aedd1d16dd202a19d4c">notifyObservers</a> ()</td></tr>
<tr class="separator:a397546715bfc5aedd1d16dd202a19d4c inherit pub_methods_class_quant_lib_1_1_observable"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:acef84214a1fd603328f8f57dc36653d2"><td class="memItemLeft" align="right" valign="top"><a id="acef84214a1fd603328f8f57dc36653d2"></a>
const ext::shared_ptr< LMIntegration > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_spot_recovery_latent_model.html#acef84214a1fd603328f8f57dc36653d2">integration</a> () const</td></tr>
<tr class="memdesc:acef84214a1fd603328f8f57dc36653d2"><td class="mdescLeft"> </td><td class="mdescRight">access to integration: <br /></td></tr>
<tr class="separator:acef84214a1fd603328f8f57dc36653d2"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pro_methods_class_quant_lib_1_1_latent_model"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_quant_lib_1_1_latent_model')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="class_quant_lib_1_1_latent_model.html">LatentModel< copulaPolicy ></a></td></tr>
<tr class="memitem:a50a342d7329355d3155218ce93059fc6 inherit pro_methods_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="a50a342d7329355d3155218ce93059fc6"></a>
virtual const ext::shared_ptr< LMIntegration > & </td><td class="memItemRight" valign="bottom"><b>integration</b> () const</td></tr>
<tr class="separator:a50a342d7329355d3155218ce93059fc6 inherit pro_methods_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_class_quant_lib_1_1_latent_model"><td colspan="2" onclick="javascript:toggleInherit('pub_types_class_quant_lib_1_1_latent_model')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="class_quant_lib_1_1_latent_model.html">LatentModel< copulaPolicy ></a></td></tr>
<tr class="memitem:ac175647caaabf0dae2f44633ce56cdcf inherit pub_types_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="ac175647caaabf0dae2f44633ce56cdcf"></a>
typedef copulaPolicy </td><td class="memItemRight" valign="bottom"><b>copulaType</b></td></tr>
<tr class="separator:ac175647caaabf0dae2f44633ce56cdcf inherit pub_types_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_types_class_quant_lib_1_1_observer"><td colspan="2" onclick="javascript:toggleInherit('pub_types_class_quant_lib_1_1_observer')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="class_quant_lib_1_1_observer.html">Observer</a></td></tr>
<tr class="memitem:a78de5f2b6bce96d718e3c18b9f52d67c inherit pub_types_class_quant_lib_1_1_observer"><td class="memItemLeft" align="right" valign="top"><a id="a78de5f2b6bce96d718e3c18b9f52d67c"></a>
typedef boost::unordered_set< ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_observable.html">Observable</a> > > </td><td class="memItemRight" valign="bottom"><b>set_type</b></td></tr>
<tr class="separator:a78de5f2b6bce96d718e3c18b9f52d67c inherit pub_types_class_quant_lib_1_1_observer"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae98429250f6997df7b87f4b37454609e inherit pub_types_class_quant_lib_1_1_observer"><td class="memItemLeft" align="right" valign="top"><a id="ae98429250f6997df7b87f4b37454609e"></a>
typedef set_type::iterator </td><td class="memItemRight" valign="bottom"><b>iterator</b></td></tr>
<tr class="separator:ae98429250f6997df7b87f4b37454609e inherit pub_types_class_quant_lib_1_1_observer"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pro_attribs_class_quant_lib_1_1_latent_model"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_quant_lib_1_1_latent_model')"><img src="closed.png" alt="-"/> Protected Attributes inherited from <a class="el" href="class_quant_lib_1_1_latent_model.html">LatentModel< copulaPolicy ></a></td></tr>
<tr class="memitem:a3769373e685b70bb91c38bd895b886fd inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="a3769373e685b70bb91c38bd895b886fd"></a>
std::vector< std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > > </td><td class="memItemRight" valign="bottom"><b>factorWeights_</b></td></tr>
<tr class="separator:a3769373e685b70bb91c38bd895b886fd inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a0dd506ff5fd9bbb04b51f783220ed2a9 inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="a0dd506ff5fd9bbb04b51f783220ed2a9"></a>
<a class="el" href="class_quant_lib_1_1_handle.html">Handle</a>< <a class="el" href="class_quant_lib_1_1_quote.html">Quote</a> > </td><td class="memItemRight" valign="bottom"><b>cachedMktFactor_</b></td></tr>
<tr class="separator:a0dd506ff5fd9bbb04b51f783220ed2a9 inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab8c951ff85d3dfed2174ab47d1808351 inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="ab8c951ff85d3dfed2174ab47d1808351"></a>
std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > </td><td class="memItemRight" valign="bottom"><b>idiosyncFctrs_</b></td></tr>
<tr class="separator:ab8c951ff85d3dfed2174ab47d1808351 inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ad8639907820775808810c8a525d5bdd8 inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="ad8639907820775808810c8a525d5bdd8"></a>
<a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#ad8639907820775808810c8a525d5bdd8">nFactors_</a></td></tr>
<tr class="memdesc:ad8639907820775808810c8a525d5bdd8 inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="mdescLeft"> </td><td class="mdescRight">Number of systemic factors. <br /></td></tr>
<tr class="separator:ad8639907820775808810c8a525d5bdd8 inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a44fb9cd28ad962ce4f8e1fa2d91e1147 inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="a44fb9cd28ad962ce4f8e1fa2d91e1147"></a>
<a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_latent_model.html#a44fb9cd28ad962ce4f8e1fa2d91e1147">nVariables_</a></td></tr>
<tr class="memdesc:a44fb9cd28ad962ce4f8e1fa2d91e1147 inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="mdescLeft"> </td><td class="mdescRight">Number of latent model variables, idiosyncratic terms or model dim. <br /></td></tr>
<tr class="separator:a44fb9cd28ad962ce4f8e1fa2d91e1147 inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:af660dddb75bc7b39f47bf1e38b5916bd inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memItemLeft" align="right" valign="top"><a id="af660dddb75bc7b39f47bf1e38b5916bd"></a>
copulaType </td><td class="memItemRight" valign="bottom"><b>copula_</b></td></tr>
<tr class="separator:af660dddb75bc7b39f47bf1e38b5916bd inherit pro_attribs_class_quant_lib_1_1_latent_model"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template<class copulaPolicy><br />
class QuantLib::SpotRecoveryLatentModel< copulaPolicy ></h3>
<p>Random spot recovery rate latent variable portfolio model. </p>
<dl class="section user"><dt></dt><dd>See: </dd></dl>
<dl class="section user"><dt></dt><dd><b>A Spot Stochastic Recovery Extension of the Gaussian Copula</b> N.Bennani and J.Maetz, MPRA July 2009 </dd></dl>
<dl class="section user"><dt></dt><dd><b>Extension of Spot Recovery model for Gaussian Copula</b> H.Li, October 2009, MPRA </dd></dl>
<dl class="section user"><dt></dt><dd>The model is adpated here for a multifactor set up and a generic copula so it can be used for pricing in single factor mode or for risk metrics in its multifactor version.</dd></dl>
<dl class="section user"><dt></dt><dd></dd></dl>
<dl class="section examples"><dt>Examples</dt><dd><a class="el" href="_basket_losses_8cpp-example.html#_a18">BasketLosses.cpp</a>.</dd>
</dl>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a7abaad5215f17f4cd982d6a7cf049d47"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7abaad5215f17f4cd982d6a7cf049d47">◆ </a></span>expCondRecovery()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> expCondRecovery </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="class_quant_lib_1_1_date.html">Date</a> & </td>
<td class="paramname"><em>d</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td>
<td class="paramname"><em>iName</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > & </td>
<td class="paramname"><em>mktFactors</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Expected conditional spot recovery rate. Conditional on a set of systemic factors and default returns the integrated attainable recovery values. </p><dl class="section user"><dt></dt><dd>Corresponds to a multifactor generalization of the model in eq. 44 on p.15 of <b>Extension of Spot Recovery Model for Gaussian Copula</b> Hui Li. 2009 Only remember that \(\rho_l Z \) there is here (multiple betas): \( \sum_k \beta_{ik}^l Z_k \) and that \( \rho_d \rho_l \) there is here: \( \sum_k \beta_{ik}^d \beta_{ik}^l \) </dd></dl>
<dl class="section user"><dt></dt><dd>(d,l corresponds to first and last set of betas) </dd></dl>
</div>
</div>
<a id="a845d2c455685f70cb7d1120538021a84"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a845d2c455685f70cb7d1120538021a84">◆ </a></span>conditionalRecovery()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> conditionalRecovery </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td>
<td class="paramname"><em>latentVarSample</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td>
<td class="paramname"><em>iName</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="class_quant_lib_1_1_date.html">Date</a> & </td>
<td class="paramname"><em>d</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements equation 42 on p.14 (second). Remember that for this call to make sense the sample used must be one leading to a default. Theres no check on this. This member typically to be used within a simulation. </p>
</div>
</div>
<a id="a91d7fa99812751d7e10d51455ef0dd47"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a91d7fa99812751d7e10d51455ef0dd47">◆ </a></span>latentRRVarValue()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> latentRRVarValue </td>
<td>(</td>
<td class="paramtype">const std::vector< <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> > & </td>
<td class="paramname"><em>allFactors</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td>
<td class="paramname"><em>iName</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Due to the way the latent model is splitted in two parts, we call the base class for the default sample and the LM owned here for the RR model sample. This sample only makes sense if it led to a default. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">allFactors</td><td>All sampled factors, default and RR valiables. </td></tr>
<tr><td class="paramname">iName</td><td>The index of the name for which we want the RR sample</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a4698ee9571f03b1636eec707c2cb0dd7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4698ee9571f03b1636eec707c2cb0dd7">◆ </a></span>expectedLoss()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> expectedLoss </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="class_quant_lib_1_1_date.html">Date</a> & </td>
<td class="paramname"><em>d</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td>
<td class="paramname"><em>iName</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Single name expected loss.</p><dl class="section user"><dt></dt><dd>The main reason of this method is for the testing of this model. The model is coherent in that it preserves the single name expected loss and thus is coherent with the single name CDS market when used in the pricing context. i.e. it should match: \(pdef_i(d) \times RR_i \) </dd></dl>
</div>
</div>
</div><!-- contents -->
<!-- HTML footer for doxygen 1.8.9.1-->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by <a href="http://www.doxygen.org/index.html">Doxygen</a>
1.8.20
</small></address>
</body>
</html>
|